You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Heinrich Bohne (JIRA)" <ji...@apache.org> on 2019/06/20 13:17:00 UTC

[jira] [Reopened] (NUMBERS-100) Code in file FractionTest.java is unsatisfactory

     [ https://issues.apache.org/jira/browse/NUMBERS-100?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Heinrich Bohne reopened NUMBERS-100:
------------------------------------

> Code in file FractionTest.java is unsatisfactory
> ------------------------------------------------
>
>                 Key: NUMBERS-100
>                 URL: https://issues.apache.org/jira/browse/NUMBERS-100
>             Project: Commons Numbers
>          Issue Type: Improvement
>          Components: fraction
>            Reporter: Heinrich Bohne
>            Priority: Trivial
>          Time Spent: 1h 50m
>  Remaining Estimate: 0h
>
> The following characteristics of the file {{FractionTest.java}} can be improved:
> * The second-to-last try-catch-block in the method {{testAdd()}} is a duplicate of the preceding try-catch-block and is therefore redundant.
> * In the method {{testPow()}}, the conditions {{assertFraction(9, 49, a.pow(2))}} and {{assertFraction(49, 9, a.pow(-2))}} are tested twice each (once in the block after {{a}}'s declaration, and a second time in the block after {{b}}'s declaration. This is probably a typo.
> * The last two assertions in the method {{testGetReducedFraction()}} pass the parameters to the method {{Assert.assertEquals(long, long)}} in the wrong order (the expected value should go first).
> * Several methods in this class contain a number of tests that use shared local variables but are completely independent of each other because these local variables get assigned new values at the beginning of a test. The fact that the scope of these local variables encompasses all those independent tests makes the code look more confusing than necessary.
> * Except for the method {{testGoldenRatio()}}, the throwing of an exception is tested with a construct involving the swallowing of an exception, rather than an explicit syntax.
> * The helper method {{assertFraction(int, int, Fraction)}} is neglected throughout large sections of the class in favor of {{Assert.assertEquals(long, long)}} pairs, increasing the amount of code duplication.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)