This is an automated email from the ASF dual-hosted git repository. erans pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-numbers.git
commit 86f4b8946109d75b243443f1117203fa87d9c020 Author: Schamschi <heinrich.bo...@gmx.at> AuthorDate: Thu Jun 20 11:26:11 2019 +0200 NUMBERS-118: Generalize test case types --- .../commons/numbers/fraction/BigFractionTest.java | 8 +- .../commons/numbers/fraction/CommonTestCases.java | 143 +++++++++++---------- .../commons/numbers/fraction/FractionTest.java | 8 +- 3 files changed, 80 insertions(+), 79 deletions(-) diff --git a/commons-numbers-fraction/src/test/java/org/apache/commons/numbers/fraction/BigFractionTest.java b/commons-numbers-fraction/src/test/java/org/apache/commons/numbers/fraction/BigFractionTest.java index 8a5b9dd..ab79b07 100644 --- a/commons-numbers-fraction/src/test/java/org/apache/commons/numbers/fraction/BigFractionTest.java +++ b/commons-numbers-fraction/src/test/java/org/apache/commons/numbers/fraction/BigFractionTest.java @@ -39,11 +39,11 @@ public class BigFractionTest { @Test public void testConstructor() { - for (CommonTestCases.NumDenConstructorTestCase testCase : CommonTestCases.numDenConstructorTestCases()) { + for (CommonTestCases.UnaryOperatorTestCase testCase : CommonTestCases.numDenConstructorTestCases()) { assertFraction( testCase.expectedNumerator, testCase.expectedDenominator, - BigFraction.of(testCase.constructorNumerator, testCase.constructorDenominator) + BigFraction.of(testCase.operandNumerator, testCase.operandDenominator) ); } @@ -98,11 +98,11 @@ public class BigFractionTest { // MATH-179 @Test public void testDoubleConstructor() throws Exception { - for (CommonTestCases.DoubleConstructorTestCase testCase : CommonTestCases.doubleConstructorTestCases()) { + for (CommonTestCases.DoubleToFractionTestCase testCase : CommonTestCases.doubleConstructorTestCases()) { assertFraction( testCase.expectedNumerator, testCase.expectedDenominator, - BigFraction.from(testCase.constructorArgument, 1.0e-5, 100) + BigFraction.from(testCase.operand, 1.0e-5, 100) ); } } diff --git a/commons-numbers-fraction/src/test/java/org/apache/commons/numbers/fraction/CommonTestCases.java b/commons-numbers-fraction/src/test/java/org/apache/commons/numbers/fraction/CommonTestCases.java index cbaa029..cc6127f 100644 --- a/commons-numbers-fraction/src/test/java/org/apache/commons/numbers/fraction/CommonTestCases.java +++ b/commons-numbers-fraction/src/test/java/org/apache/commons/numbers/fraction/CommonTestCases.java @@ -11,111 +11,112 @@ import java.util.List; * numerators and denominators in the {@code int} range. */ public class CommonTestCases { - private static final List<NumDenConstructorTestCase> numDenConstructorTestCasesList; + private static final List<UnaryOperatorTestCase> numDenConstructorTestCasesList; - private static final List<DoubleConstructorTestCase> doubleConstructorTestCasesList; + private static final List<DoubleToFractionTestCase> doubleConstructorTestCasesList; static { numDenConstructorTestCasesList = new ArrayList<>(); - numDenConstructorTestCasesList.add(new NumDenConstructorTestCase(0, 1, 0, 1)); - numDenConstructorTestCasesList.add(new NumDenConstructorTestCase(0, 2, 0, 1)); - numDenConstructorTestCasesList.add(new NumDenConstructorTestCase(0, -1, 0, 1)); - numDenConstructorTestCasesList.add(new NumDenConstructorTestCase(1, 2, 1, 2)); - numDenConstructorTestCasesList.add(new NumDenConstructorTestCase(2, 4, 1, 2)); - numDenConstructorTestCasesList.add(new NumDenConstructorTestCase(-1, 2, -1, 2)); - numDenConstructorTestCasesList.add(new NumDenConstructorTestCase(1, -2, -1, 2)); - numDenConstructorTestCasesList.add(new NumDenConstructorTestCase(-2, 4, -1, 2)); - numDenConstructorTestCasesList.add(new NumDenConstructorTestCase(2, -4, -1, 2)); + numDenConstructorTestCasesList.add(new UnaryOperatorTestCase(0, 1, 0, 1)); + numDenConstructorTestCasesList.add(new UnaryOperatorTestCase(0, 2, 0, 1)); + numDenConstructorTestCasesList.add(new UnaryOperatorTestCase(0, -1, 0, 1)); + numDenConstructorTestCasesList.add(new UnaryOperatorTestCase(1, 2, 1, 2)); + numDenConstructorTestCasesList.add(new UnaryOperatorTestCase(2, 4, 1, 2)); + numDenConstructorTestCasesList.add(new UnaryOperatorTestCase(-1, 2, -1, 2)); + numDenConstructorTestCasesList.add(new UnaryOperatorTestCase(1, -2, -1, 2)); + numDenConstructorTestCasesList.add(new UnaryOperatorTestCase(-2, 4, -1, 2)); + numDenConstructorTestCasesList.add(new UnaryOperatorTestCase(2, -4, -1, 2)); doubleConstructorTestCasesList = new ArrayList<>(); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(1d/2d, 1, 2)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(1d/3d, 1, 3)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(2d/3d, 2, 3)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(1d/4d, 1, 4)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(3d/4d, 3, 4)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(1d/5d, 1, 5)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(2d/5d, 2, 5)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(3d/5d, 3, 5)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(4d/5d, 4, 5)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(1d/6d, 1, 6)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(5d/6d, 5, 6)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(1d/7d, 1, 7)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(2d/7d, 2, 7)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(3d/7d, 3, 7)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(4d/7d, 4, 7)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(5d/7d, 5, 7)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(6d/7d, 6, 7)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(1d/8d, 1, 8)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(3d/8d, 3, 8)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(5d/8d, 5, 8)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(7d/8d, 7, 8)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(1d/9d, 1, 9)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(2d/9d, 2, 9)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(4d/9d, 4, 9)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(5d/9d, 5, 9)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(7d/9d, 7, 9)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(8d/9d, 8, 9)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(1d/10d, 1, 10)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(3d/10d, 3, 10)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(7d/10d, 7, 10)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(9d/10d, 9, 10)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(1d/11d, 1, 11)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(2d/11d, 2, 11)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(3d/11d, 3, 11)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(4d/11d, 4, 11)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(5d/11d, 5, 11)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(6d/11d, 6, 11)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(7d/11d, 7, 11)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(8d/11d, 8, 11)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(9d/11d, 9, 11)); - doubleConstructorTestCasesList.add(new DoubleConstructorTestCase(10d/11d, 10, 11)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(1d/2d, 1, 2)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(1d/3d, 1, 3)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(2d/3d, 2, 3)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(1d/4d, 1, 4)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(3d/4d, 3, 4)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(1d/5d, 1, 5)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(2d/5d, 2, 5)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(3d/5d, 3, 5)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(4d/5d, 4, 5)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(1d/6d, 1, 6)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(5d/6d, 5, 6)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(1d/7d, 1, 7)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(2d/7d, 2, 7)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(3d/7d, 3, 7)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(4d/7d, 4, 7)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(5d/7d, 5, 7)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(6d/7d, 6, 7)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(1d/8d, 1, 8)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(3d/8d, 3, 8)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(5d/8d, 5, 8)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(7d/8d, 7, 8)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(1d/9d, 1, 9)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(2d/9d, 2, 9)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(4d/9d, 4, 9)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(5d/9d, 5, 9)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(7d/9d, 7, 9)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(8d/9d, 8, 9)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(1d/10d, 1, 10)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(3d/10d, 3, 10)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(7d/10d, 7, 10)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(9d/10d, 9, 10)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(1d/11d, 1, 11)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(2d/11d, 2, 11)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(3d/11d, 3, 11)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(4d/11d, 4, 11)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(5d/11d, 5, 11)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(6d/11d, 6, 11)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(7d/11d, 7, 11)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(8d/11d, 8, 11)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(9d/11d, 9, 11)); + doubleConstructorTestCasesList.add(new DoubleToFractionTestCase(10d/11d, 10, 11)); } - public static List<NumDenConstructorTestCase> numDenConstructorTestCases() { + public static List<UnaryOperatorTestCase> numDenConstructorTestCases() { return Collections.unmodifiableList(numDenConstructorTestCasesList); } - public static List<DoubleConstructorTestCase> doubleConstructorTestCases() { + public static List<DoubleToFractionTestCase> doubleConstructorTestCases() { return Collections.unmodifiableList(doubleConstructorTestCasesList); } /** - * Represents a test case where a fraction should be created from a - * specified numerator and denominator, both in the {@code int} range. + * Represents a test case where a unary operation should be performed on a specified combination + * of numerator and denominator, both in the {@code int} range, and the numerator and + * denominator of the expected result are also in the {@code int} range. */ - public static class NumDenConstructorTestCase { - public final int constructorNumerator; - public final int constructorDenominator; + public static class UnaryOperatorTestCase { + public final int operandNumerator; + public final int operandDenominator; public final int expectedNumerator; public final int expectedDenominator; - public NumDenConstructorTestCase( - int constructorNumerator, - int constructorDenominator, + public UnaryOperatorTestCase( + int operandNumerator, + int operandDenominator, int expectedNumerator, int expectedDenominator) { - this.constructorNumerator = constructorNumerator; - this.constructorDenominator = constructorDenominator; + this.operandNumerator = operandNumerator; + this.operandDenominator = operandDenominator; this.expectedNumerator = expectedNumerator; this.expectedDenominator = expectedDenominator; } } /** - * Represents a test case where a fraction should be created from a - * {@code double} value and the expected numerator and denominator + * Represents a test case where an operation that yields a fraction should be performed + * on a {@code double} value and the numerator and denominator of the expected result * are in the {@code int} range. */ - public static class DoubleConstructorTestCase { - public final double constructorArgument; + public static class DoubleToFractionTestCase { + public final double operand; public final int expectedNumerator; public final int expectedDenominator; - public DoubleConstructorTestCase( - double constructorArgument, + public DoubleToFractionTestCase( + double operand, int expectedNumerator, int expectedDenominator) { - this.constructorArgument = constructorArgument; + this.operand = operand; this.expectedNumerator = expectedNumerator; this.expectedDenominator = expectedDenominator; } diff --git a/commons-numbers-fraction/src/test/java/org/apache/commons/numbers/fraction/FractionTest.java b/commons-numbers-fraction/src/test/java/org/apache/commons/numbers/fraction/FractionTest.java index 293ffbd..c47d51a 100644 --- a/commons-numbers-fraction/src/test/java/org/apache/commons/numbers/fraction/FractionTest.java +++ b/commons-numbers-fraction/src/test/java/org/apache/commons/numbers/fraction/FractionTest.java @@ -33,11 +33,11 @@ public class FractionTest { @Test public void testConstructor() { - for (CommonTestCases.NumDenConstructorTestCase testCase : CommonTestCases.numDenConstructorTestCases()) { + for (CommonTestCases.UnaryOperatorTestCase testCase : CommonTestCases.numDenConstructorTestCases()) { assertFraction( testCase.expectedNumerator, testCase.expectedDenominator, - Fraction.of(testCase.constructorNumerator, testCase.constructorDenominator) + Fraction.of(testCase.operandNumerator, testCase.operandDenominator) ); } @@ -65,11 +65,11 @@ public class FractionTest { // MATH-179 @Test public void testDoubleConstructor() throws Exception { - for (CommonTestCases.DoubleConstructorTestCase testCase : CommonTestCases.doubleConstructorTestCases()) { + for (CommonTestCases.DoubleToFractionTestCase testCase : CommonTestCases.doubleConstructorTestCases()) { assertFraction( testCase.expectedNumerator, testCase.expectedDenominator, - Fraction.from(testCase.constructorArgument) + Fraction.from(testCase.operand) ); } }