package company; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.TestInstance; import static company.PeselValidator.validate; import static org.junit.jupiter.api.Assertions.assertFalse; import static org.junit.jupiter.api.Assertions.assertTrue; @TestInstance(TestInstance.Lifecycle.PER_CLASS) public class PeselValidatorTests { @Test public void validate_ShouldFail_IfLengthIsDifferentThan11() { String invalidPesels[] = { "777", "123456789000" }; for (var pesel: invalidPesels) { var result = validate(pesel); assertFalse(result); } } @Test public void validate_ShouldFail_IfControlSumIsInvalid() { String invalidPesels[] = { "12345678911", "84475900006", "33333210000" }; for (var pesel: invalidPesels) { var result = validate(pesel); assertFalse(result); } } @Test public void validate_ShouldFail_IfNull() { var result = validate(null); assertFalse(result); } @Test public void validate_ShouldSuccess() { String invalidPesels[] = { "92021585321", "86041014912", "04292933532" }; for (var pesel: invalidPesels) { var result = validate(pesel); assertTrue(result); } } }