Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added tests for software.amazon.ion.impl.IonUTF8 #206

Merged
merged 5 commits into from Feb 28, 2019

Conversation

@freddytuxworth
Copy link
Contributor

commented Jan 31, 2019

Hi,
I've analysed this codebase and noticed some gaps in the coverage of IonUTF8.java.

I've written a few tests for this class with the help of Diffblue Cover. These fully test this class, excluding the inner classes.

Hopefully these tests should help you detect regressions caused by future code changes. Please let me know if you'd be interested in having more tests written for other classes within this project, I would be happy to help.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Freddy Tuxworth
Added tests for software.amazon.ion.impl.IonUTF8
These tests were written using Diffblue Cover.
@freddytuxworth

This comment has been minimized.

Copy link
Contributor Author

commented Jan 31, 2019

I don't think this Travis check failure is to do with the changes in this PR. The log error doesn't mention the tests I added (which passed) and the same check failed in a different PR.

@codecov

This comment has been minimized.

Copy link

commented Feb 4, 2019

Codecov Report

Merging #206 into master will increase coverage by 0.57%.
The diff coverage is n/a.

Impacted file tree graph

@@             Coverage Diff              @@
##             master     #206      +/-   ##
============================================
+ Coverage     71.67%   72.25%   +0.57%     
- Complexity     4321     4364      +43     
============================================
  Files           121      121              
  Lines         15939    15939              
  Branches       2623     2623              
============================================
+ Hits          11424    11516      +92     
+ Misses         3405     3304     -101     
- Partials       1110     1119       +9
Impacted Files Coverage Δ Complexity Δ
src/software/amazon/ion/impl/IonUTF8.java 55.5% <0%> (+38.98%) 75% <0%> (+43%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 61fae42...5869c63. Read the comment docs.

@dlurton

This comment has been minimized.

Copy link
Member

commented Feb 4, 2019

We are going to wait to merge this until after the upcoming release of IonJava 1.2.1.

tgregg added some commits Feb 27, 2019

@tgregg

tgregg approved these changes Feb 28, 2019

Copy link
Contributor

left a comment

Thanks, @freddytuxworth . The tests look good to me. I have a few notes below in case we want to improve this in the future, but I will merge as-is.

  • Personal preference: it may be more readable to write the values in hex. I find it easier to reason about bit masks and such with hex-encoded numbers, so having them already displayed that way removes a conversion from decimal. It also expedites comparison against code point tables.
  • It looks like there are a bunch of unused methods in the IonUTF8 class. We should go through it at some point and delete anything that is no longer needed.

@tgregg tgregg merged commit 875df4e into amzn:master Feb 28, 2019

3 checks passed

codecov/patch Coverage not affected when comparing 61fae42...5869c63
Details
codecov/project 72.25% (+0.57%) compared to 61fae42
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
3 participants
You can’t perform that action at this time.