refactor: cleanup DudeneyNumber (#5156)

This commit is contained in:
Piotr Idzik
2024-05-12 11:05:33 +02:00
committed by GitHub
parent cf6c87c35c
commit 319d5143cc
3 changed files with 23 additions and 24 deletions

View File

@ -1,18 +1,28 @@
package com.thealgorithms.maths;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertThrows;
import static org.junit.jupiter.api.Assertions.assertTrue;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.CsvSource;
class DudeneyNumberTest {
@ParameterizedTest
@CsvSource({"1", "512", "4913", "5832", "17576", "19683"})
void positiveDudeneyBase10Power3(final int n) {
assertTrue(DudeneyNumber.isDudeney(n));
}
@Test
void isDudeney() {
final int validDudeneyNumber = 512;
final int invalidDudeneyNumber = 125;
@ParameterizedTest
@CsvSource({"2", "19", "21", "125", "27", "343", "729", "19682", "19684"})
void negativeDudeneyBase10Power3(final int n) {
assertFalse(DudeneyNumber.isDudeney(n));
}
assertTrue(() -> DudeneyNumber.isDudeney(validDudeneyNumber));
assertFalse(() -> DudeneyNumber.isDudeney(invalidDudeneyNumber));
@ParameterizedTest
@CsvSource({"0", "-1"})
void throwsInputLessThanOne(final int n) {
assertThrows(IllegalArgumentException.class, () -> DudeneyNumber.isDudeney(n));
}
}