This is an automated email from the ASF dual-hosted git repository. aherbert pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-numbers.git
commit c4bf150ab646328f666754713f1647774a8457b4 Author: aherbert <[email protected]> AuthorDate: Fri Nov 8 18:44:52 2019 +0000 Fixed checkstyle in combinatorics. --- .../numbers/combinatorics/BinomialCoefficient.java | 2 +- .../combinatorics/BinomialCoefficientDouble.java | 2 +- .../numbers/combinatorics/Combinations.java | 10 ++++---- .../commons/numbers/combinatorics/Factorial.java | 5 ++-- .../numbers/combinatorics/FactorialDouble.java | 6 ++--- .../combinatorics/LogBinomialCoefficient.java | 2 +- .../numbers/combinatorics/LogFactorial.java | 2 +- .../BinomialCoefficientDoubleTest.java | 12 ++++----- .../combinatorics/BinomialCoefficientTest.java | 30 ++++++++++------------ .../numbers/combinatorics/CombinationsTest.java | 22 ++++++++-------- .../numbers/combinatorics/FactorialDoubleTest.java | 4 +-- .../combinatorics/LogBinomialCoefficientTest.java | 10 ++++---- .../numbers/combinatorics/LogFactorialTest.java | 2 +- .../checkstyle/checkstyle-suppressions.xml | 3 +++ 14 files changed, 55 insertions(+), 57 deletions(-) diff --git a/commons-numbers-combinatorics/src/main/java/org/apache/commons/numbers/combinatorics/BinomialCoefficient.java b/commons-numbers-combinatorics/src/main/java/org/apache/commons/numbers/combinatorics/BinomialCoefficient.java index 0f4929f..801669e 100644 --- a/commons-numbers-combinatorics/src/main/java/org/apache/commons/numbers/combinatorics/BinomialCoefficient.java +++ b/commons-numbers-combinatorics/src/main/java/org/apache/commons/numbers/combinatorics/BinomialCoefficient.java @@ -25,7 +25,7 @@ import org.apache.commons.numbers.core.ArithmeticUtils; * It is "{@code n choose k}", the number of {@code k}-element subsets that * can be selected from an {@code n}-element set. */ -public class BinomialCoefficient { +public final class BinomialCoefficient { /** Private constructor. */ private BinomialCoefficient() { diff --git a/commons-numbers-combinatorics/src/main/java/org/apache/commons/numbers/combinatorics/BinomialCoefficientDouble.java b/commons-numbers-combinatorics/src/main/java/org/apache/commons/numbers/combinatorics/BinomialCoefficientDouble.java index af543b2..b0b276e 100644 --- a/commons-numbers-combinatorics/src/main/java/org/apache/commons/numbers/combinatorics/BinomialCoefficientDouble.java +++ b/commons-numbers-combinatorics/src/main/java/org/apache/commons/numbers/combinatorics/BinomialCoefficientDouble.java @@ -23,7 +23,7 @@ package org.apache.commons.numbers.combinatorics; * It is "{@code n choose k}", the number of {@code k}-element subsets that * can be selected from an {@code n}-element set. */ -public class BinomialCoefficientDouble { +public final class BinomialCoefficientDouble { /** Private constructor. */ private BinomialCoefficientDouble() { diff --git a/commons-numbers-combinatorics/src/main/java/org/apache/commons/numbers/combinatorics/Combinations.java b/commons-numbers-combinatorics/src/main/java/org/apache/commons/numbers/combinatorics/Combinations.java index b779e34..3db4ae7 100644 --- a/commons-numbers-combinatorics/src/main/java/org/apache/commons/numbers/combinatorics/Combinations.java +++ b/commons-numbers-combinatorics/src/main/java/org/apache/commons/numbers/combinatorics/Combinations.java @@ -30,7 +30,7 @@ import org.apache.commons.numbers.core.ArithmeticUtils; * combinations</a> {@code (n, k)} of {@code k} elements in a set of * {@code n} elements. */ -public class Combinations implements Iterable<int[]> { +public final class Combinations implements Iterable<int[]> { /** Size of the set from which combinations are drawn. */ private final int n; /** Number of elements in each combination. */ @@ -120,7 +120,7 @@ public class Combinations implements Iterable<int[]> { * <p> * Implementation follows Algorithm T in <i>The Art of Computer Programming</i> * Internet Draft (PRE-FASCICLE 3A), "A Draft of Section 7.2.1.3 Generating All - * Combinations</a>, D. Knuth, 2004.</p> + * Combinations, D. Knuth, 2004.</p> * <p> * The degenerate cases {@code k == 0} and {@code k == n} are NOT handled by this * implementation. If constructor arguments satisfy {@code k == 0} @@ -141,7 +141,7 @@ public class Combinations implements Iterable<int[]> { */ private final int[] c; - /** Return value for {@link #hasNext()} */ + /** Return value for {@link #hasNext()}. */ private boolean more = true; /** Marker: smallest index such that {@code c[j + 1] > j}. */ @@ -249,7 +249,7 @@ public class Combinations implements Iterable<int[]> { private static class SingletonIterator implements Iterator<int[]> { /** Number of elements of the singleton array. */ private final int n; - /** True on initialization, false after first call to next */ + /** True on initialization, false after first call to next. */ private boolean more = true; /** * Create a singleton iterator providing the given array. @@ -288,7 +288,7 @@ public class Combinations implements Iterable<int[]> { /** * Unsupported. * - * @throws UnsupportedOperationException + * @throws UnsupportedOperationException Remove is not supported. */ @Override public void remove() { diff --git a/commons-numbers-combinatorics/src/main/java/org/apache/commons/numbers/combinatorics/Factorial.java b/commons-numbers-combinatorics/src/main/java/org/apache/commons/numbers/combinatorics/Factorial.java index 40f2332..553652d 100644 --- a/commons-numbers-combinatorics/src/main/java/org/apache/commons/numbers/combinatorics/Factorial.java +++ b/commons-numbers-combinatorics/src/main/java/org/apache/commons/numbers/combinatorics/Factorial.java @@ -20,9 +20,9 @@ package org.apache.commons.numbers.combinatorics; /** * <a href="http://mathworld.wolfram.com/Factorial.html">Factorial of a number</a>. */ -public class Factorial { +public final class Factorial { - /** All long-representable factorials */ + /** All long-representable factorials. */ static final long[] FACTORIALS = new long[] { 1L, 1L, 2L, 6L, 24L, 120L, @@ -56,5 +56,4 @@ public class Factorial { return FACTORIALS[n]; } - } diff --git a/commons-numbers-combinatorics/src/main/java/org/apache/commons/numbers/combinatorics/FactorialDouble.java b/commons-numbers-combinatorics/src/main/java/org/apache/commons/numbers/combinatorics/FactorialDouble.java index df6942f..154be52 100644 --- a/commons-numbers-combinatorics/src/main/java/org/apache/commons/numbers/combinatorics/FactorialDouble.java +++ b/commons-numbers-combinatorics/src/main/java/org/apache/commons/numbers/combinatorics/FactorialDouble.java @@ -22,7 +22,7 @@ package org.apache.commons.numbers.combinatorics; * <a href="http://mathworld.wolfram.com/Factorial.html">factorial of a number</a>. * It allows to allocate a cache of precomputed values. */ -public class FactorialDouble { +public final class FactorialDouble { /** * Size of precomputed factorials. * @see Factorial @@ -50,7 +50,7 @@ public class FactorialDouble { // Initialize first two entries. for (int i = 0, max = numValues < 2 ? numValues : 2; i < max; i++) { - factorialsDouble [i] = 1; + factorialsDouble[i] = 1; } final int beginCopy = 2; @@ -130,5 +130,5 @@ public class FactorialDouble { result *= i; } return result; - } + } } diff --git a/commons-numbers-combinatorics/src/main/java/org/apache/commons/numbers/combinatorics/LogBinomialCoefficient.java b/commons-numbers-combinatorics/src/main/java/org/apache/commons/numbers/combinatorics/LogBinomialCoefficient.java index 2b016df..d8464e4 100644 --- a/commons-numbers-combinatorics/src/main/java/org/apache/commons/numbers/combinatorics/LogBinomialCoefficient.java +++ b/commons-numbers-combinatorics/src/main/java/org/apache/commons/numbers/combinatorics/LogBinomialCoefficient.java @@ -23,7 +23,7 @@ package org.apache.commons.numbers.combinatorics; * It is "{@code n choose k}", the number of {@code k}-element subsets that * can be selected from an {@code n}-element set. */ -public class LogBinomialCoefficient { +public final class LogBinomialCoefficient { /** Private constructor. */ private LogBinomialCoefficient() { diff --git a/commons-numbers-combinatorics/src/main/java/org/apache/commons/numbers/combinatorics/LogFactorial.java b/commons-numbers-combinatorics/src/main/java/org/apache/commons/numbers/combinatorics/LogFactorial.java index db2c1dd..b1012c1 100644 --- a/commons-numbers-combinatorics/src/main/java/org/apache/commons/numbers/combinatorics/LogFactorial.java +++ b/commons-numbers-combinatorics/src/main/java/org/apache/commons/numbers/combinatorics/LogFactorial.java @@ -25,7 +25,7 @@ import org.apache.commons.numbers.gamma.LogGamma; * In case of cache miss, computation is performed by a call to * {@link LogGamma#value(double)}. */ -public class LogFactorial { +public final class LogFactorial { /** * Size of precomputed factorials. * @see Factorial diff --git a/commons-numbers-combinatorics/src/test/java/org/apache/commons/numbers/combinatorics/BinomialCoefficientDoubleTest.java b/commons-numbers-combinatorics/src/test/java/org/apache/commons/numbers/combinatorics/BinomialCoefficientDoubleTest.java index fd38458..1a17721 100644 --- a/commons-numbers-combinatorics/src/test/java/org/apache/commons/numbers/combinatorics/BinomialCoefficientDoubleTest.java +++ b/commons-numbers-combinatorics/src/test/java/org/apache/commons/numbers/combinatorics/BinomialCoefficientDoubleTest.java @@ -31,8 +31,8 @@ public class BinomialCoefficientDoubleTest { @Test public void testBinomialCoefficient() { - final long[] bcoef5 = { 1, 5, 10, 10, 5, 1 }; - final long[] bcoef6 = { 1, 6, 15, 20, 15, 6, 1 }; + final long[] bcoef5 = {1, 5, 10, 10, 5, 1}; + final long[] bcoef6 = {1, 6, 15, 20, 15, 6, 1}; for (int n = 1; n < 10; n++) { for (int k = 0; k <= n; k++) { @@ -45,8 +45,8 @@ public class BinomialCoefficientDoubleTest { } } - final int[] n = { 34, 66, 100, 1500, 1500 }; - final int[] k = { 17, 33, 10, 1500 - 4, 4 }; + final int[] n = {34, 66, 100, 1500, 1500}; + final int[] k = {17, 33, 10, 1500 - 4, 4}; for (int i = 0; i < n.length; i++) { final long expected = BinomialCoefficientTest.binomialCoefficient(n[i], k[i]); Assertions.assertEquals( @@ -61,14 +61,14 @@ public class BinomialCoefficientDoubleTest { @Test public void testBinomialCoefficientFail1() { Assertions.assertThrows(CombinatoricsException.class, - () -> BinomialCoefficientDouble.value(4, 5) + () -> BinomialCoefficientDouble.value(4, 5) ); } @Test public void testBinomialCoefficientFail2() { Assertions.assertThrows(CombinatoricsException.class, - () -> BinomialCoefficientDouble.value(-1, -2) + () -> BinomialCoefficientDouble.value(-1, -2) ); } diff --git a/commons-numbers-combinatorics/src/test/java/org/apache/commons/numbers/combinatorics/BinomialCoefficientTest.java b/commons-numbers-combinatorics/src/test/java/org/apache/commons/numbers/combinatorics/BinomialCoefficientTest.java index 71d26eb..b266930 100644 --- a/commons-numbers-combinatorics/src/test/java/org/apache/commons/numbers/combinatorics/BinomialCoefficientTest.java +++ b/commons-numbers-combinatorics/src/test/java/org/apache/commons/numbers/combinatorics/BinomialCoefficientTest.java @@ -24,15 +24,12 @@ import java.util.HashMap; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; -import org.apache.commons.numbers.core.ArithmeticUtils; - /** * Test cases for the {@link BinomialCoefficient} class. */ public class BinomialCoefficientTest { /** Cached binomial coefficients. */ - private static final List<Map<Integer, Long>> binomialCache = - new ArrayList<Map<Integer, Long>>(); + private static final List<Map<Integer, Long>> binomialCache = new ArrayList<>(); /** Verify that b(0,0) = 1 */ @Test @@ -42,8 +39,8 @@ public class BinomialCoefficientTest { @Test public void testBinomialCoefficient() { - final long[] bcoef5 = { 1, 5, 10, 10, 5, 1 }; - final long[] bcoef6 = { 1, 6, 15, 20, 15, 6, 1 }; + final long[] bcoef5 = {1, 5, 10, 10, 5, 1}; + final long[] bcoef6 = {1, 6, 15, 20, 15, 6, 1}; for (int i = 0; i < 6; i++) { Assertions.assertEquals(bcoef5[i], BinomialCoefficient.value(5, i), "5 choose " + i); @@ -62,8 +59,8 @@ public class BinomialCoefficientTest { } } - final int[] n = { 34, 66, 100, 1500, 1500 }; - final int[] k = { 17, 33, 10, 1500 - 4, 4 }; + final int[] n = {34, 66, 100, 1500, 1500}; + final int[] k = {17, 33, 10, 1500 - 4, 4}; for (int i = 0; i < n.length; i++) { final long expected = binomialCoefficient(n[i], k[i]); Assertions.assertEquals( @@ -84,29 +81,28 @@ public class BinomialCoefficientTest { @Test public void testBinomialCoefficientFail2() { Assertions.assertThrows(CombinatoricsException.class, - () -> BinomialCoefficient.value(-1, -2) + () -> BinomialCoefficient.value(-1, -2) ); } @Test - public void testBinomialCoefficientFail3() - { + public void testBinomialCoefficientFail3() { Assertions.assertThrows(ArithmeticException.class, - () -> BinomialCoefficient.value(67, 30) + () -> BinomialCoefficient.value(67, 30) ); } @Test public void testBinomialCoefficientFail4() { Assertions.assertThrows(ArithmeticException.class, - () -> BinomialCoefficient.value(67, 34) + () -> BinomialCoefficient.value(67, 34) ); } @Test public void testBinomialCoefficientFail5() { Assertions.assertThrows(ArithmeticException.class, - () -> BinomialCoefficient.value(700, 300) + () -> BinomialCoefficient.value(700, 300) ); } @@ -135,7 +131,7 @@ public class BinomialCoefficientTest { } Assertions.assertEquals(exactResult, ourResult, n + " choose " + k); Assertions.assertEquals(shouldThrow, didThrow, n + " choose " + k); - Assertions.assertTrue((n > 66 || !didThrow), n + " choose " + k); + Assertions.assertTrue(n > 66 || !didThrow, n + " choose " + k); } } @@ -157,14 +153,14 @@ public class BinomialCoefficientTest { @Test public void checkNLessThanOne() { Assertions.assertThrows(CombinatoricsException.class, - () -> BinomialCoefficient.checkBinomial(-1, -2) + () -> BinomialCoefficient.checkBinomial(-1, -2) ); } @Test public void checkKGreaterThanN() { Assertions.assertThrows(CombinatoricsException.class, - () -> BinomialCoefficient.checkBinomial(4, 5) + () -> BinomialCoefficient.checkBinomial(4, 5) ); } diff --git a/commons-numbers-combinatorics/src/test/java/org/apache/commons/numbers/combinatorics/CombinationsTest.java b/commons-numbers-combinatorics/src/test/java/org/apache/commons/numbers/combinatorics/CombinationsTest.java index 3e5febf..fba85bb 100644 --- a/commons-numbers-combinatorics/src/test/java/org/apache/commons/numbers/combinatorics/CombinationsTest.java +++ b/commons-numbers-combinatorics/src/test/java/org/apache/commons/numbers/combinatorics/CombinationsTest.java @@ -60,8 +60,8 @@ public class CombinationsTest { final int k = 3; final Comparator<int[]> comp = Combinations.of(n, k).comparator(); Assertions.assertThrows(IllegalArgumentException.class, - () -> comp.compare(new int[] {1}, - new int[] {0, 1, 2})); + () -> comp.compare(new int[] {1}, + new int[] {0, 1, 2})); } @Test @@ -70,18 +70,18 @@ public class CombinationsTest { final int k = 3; final Comparator<int[]> comp = Combinations.of(n, k).comparator(); Assertions.assertThrows(IllegalArgumentException.class, - () -> comp.compare(new int[] {0, 1, 2}, - new int[] {0, 1, 2, 3})); + () -> comp.compare(new int[] {0, 1, 2}, + new int[] {0, 1, 2, 3})); } @Test public void testLexicographicComparatorWrongIterate3() { final int n = 5; final int k = 3; - final Comparator<int[]> comp = Combinations.of(n, k).comparator(); + final Comparator<int[]> comp = Combinations.of(n, k).comparator(); Assertions.assertThrows(IllegalArgumentException.class, - () -> comp.compare(new int[] {1, 2, 5}, - new int[] {0, 1, 2})); + () -> comp.compare(new int[] {1, 2, 5}, + new int[] {0, 1, 2})); } @Test @@ -90,8 +90,8 @@ public class CombinationsTest { final int k = 3; final Comparator<int[]> comp = Combinations.of(n, k).comparator(); Assertions.assertThrows(IllegalArgumentException.class, - () -> comp.compare(new int[] {1, 2, 4}, - new int[] {-1, 1, 2})); + () -> comp.compare(new int[] {1, 2, 4}, + new int[] {-1, 1, 2})); } @Test @@ -185,11 +185,11 @@ public class CombinationsTest { @Test public void testCombinationsPrecondition1() { Assertions.assertThrows(IllegalArgumentException.class, - () -> Combinations.of(4, 5)); + () -> Combinations.of(4, 5)); } @Test public void testCombinationsPrecondition2() { Assertions.assertThrows(IllegalArgumentException.class, - () -> Combinations.of(-1, -2)); + () -> Combinations.of(-1, -2)); } } diff --git a/commons-numbers-combinatorics/src/test/java/org/apache/commons/numbers/combinatorics/FactorialDoubleTest.java b/commons-numbers-combinatorics/src/test/java/org/apache/commons/numbers/combinatorics/FactorialDoubleTest.java index 19d7b76..7dc1b9a 100644 --- a/commons-numbers-combinatorics/src/test/java/org/apache/commons/numbers/combinatorics/FactorialDoubleTest.java +++ b/commons-numbers-combinatorics/src/test/java/org/apache/commons/numbers/combinatorics/FactorialDoubleTest.java @@ -35,7 +35,7 @@ public class FactorialDoubleTest { factorialDirect(i), FactorialDouble.create().value(i), 0d, i + "!"); } } - + @Test public void testLargestFactorialDouble() { final int n = 170; @@ -53,7 +53,7 @@ public class FactorialDoubleTest { @Test public void testNonPositiveArgument() { Assertions.assertThrows(IllegalArgumentException.class, - () -> FactorialDouble.create().value(-1) + () -> FactorialDouble.create().value(-1) ); } diff --git a/commons-numbers-combinatorics/src/test/java/org/apache/commons/numbers/combinatorics/LogBinomialCoefficientTest.java b/commons-numbers-combinatorics/src/test/java/org/apache/commons/numbers/combinatorics/LogBinomialCoefficientTest.java index 8a3af5a..e8c20b6 100644 --- a/commons-numbers-combinatorics/src/test/java/org/apache/commons/numbers/combinatorics/LogBinomialCoefficientTest.java +++ b/commons-numbers-combinatorics/src/test/java/org/apache/commons/numbers/combinatorics/LogBinomialCoefficientTest.java @@ -31,8 +31,8 @@ public class LogBinomialCoefficientTest { @Test public void testBinomialCoefficient() { - final long[] bcoef5 = { 1, 5, 10, 10, 5, 1 }; - final long[] bcoef6 = { 1, 6, 15, 20, 15, 6, 1 }; + final long[] bcoef5 = {1, 5, 10, 10, 5, 1}; + final long[] bcoef6 = {1, 6, 15, 20, 15, 6, 1}; for (int n = 1; n < 10; n++) { for (int k = 0; k <= n; k++) { @@ -42,8 +42,8 @@ public class LogBinomialCoefficientTest { } } - final int[] n = { 34, 66, 100, 1500, 1500 }; - final int[] k = { 17, 33, 10, 1500 - 4, 4 }; + final int[] n = {34, 66, 100, 1500, 1500}; + final int[] k = {17, 33, 10, 1500 - 4, 4}; for (int i = 0; i < n.length; i++) { final long expected = BinomialCoefficientTest.binomialCoefficient(n[i], k[i]); Assertions.assertEquals( @@ -63,7 +63,7 @@ public class LogBinomialCoefficientTest { @Test public void testBinomialCoefficientFail2() { Assertions.assertThrows(CombinatoricsException.class, - () -> LogBinomialCoefficient.value(-1, -2) + () -> LogBinomialCoefficient.value(-1, -2) ); } diff --git a/commons-numbers-combinatorics/src/test/java/org/apache/commons/numbers/combinatorics/LogFactorialTest.java b/commons-numbers-combinatorics/src/test/java/org/apache/commons/numbers/combinatorics/LogFactorialTest.java index 7970869..0a4beae 100644 --- a/commons-numbers-combinatorics/src/test/java/org/apache/commons/numbers/combinatorics/LogFactorialTest.java +++ b/commons-numbers-combinatorics/src/test/java/org/apache/commons/numbers/combinatorics/LogFactorialTest.java @@ -28,7 +28,7 @@ public class LogFactorialTest { @Test public void testNonPositiveArgument() { Assertions.assertThrows(IllegalArgumentException.class, - () -> LogFactorial.create().withCache(-1) + () -> LogFactorial.create().withCache(-1) ); } diff --git a/src/main/resources/checkstyle/checkstyle-suppressions.xml b/src/main/resources/checkstyle/checkstyle-suppressions.xml index 9234fae..958bc9f 100644 --- a/src/main/resources/checkstyle/checkstyle-suppressions.xml +++ b/src/main/resources/checkstyle/checkstyle-suppressions.xml @@ -19,6 +19,8 @@ "-//Checkstyle//DTD SuppressionFilter Configuration 1.2//EN" "https://checkstyle.org/dtds/suppressions_1_2.dtd"> <suppressions> + <suppress checks="Indentation" files=".*/combinatorics/Factorial" /> + <!-- Be more lenient on tests. --> <suppress checks="Javadoc" files=".*[/\\]test[/\\].*" /> <suppress checks="MultipleStringLiterals" files=".*[/\\]test[/\\].*" /> @@ -26,4 +28,5 @@ <suppress checks="LineLength" files=".*[/\\]test[/\\].*" /> <suppress checks="IllegalCatch" files=".*[/\\]test[/\\].*" /> <suppress checks="MethodName" files=".*[/\\]test[/\\].*" /> + <suppress checks="ConstantName" files=".*[/\\]test[/\\].*" /> </suppressions>
