Здравствуйте, я тестирую класс, в котором есть несколько проверяющих методов, и мне было интересно, есть ли способ уменьшить дублирующийся код.
@Test
void testCorrectEmailValidator() {
List<String> correctEmails = Arrays.asList("test@test.com", "test123@test123.com", "test@test.com.in",
"test.test2@test.com", "test.test2.test3@test.com", "TEST.2test@test.com");
for (String email : correctEmails) {
boolean isValid = UserCredentialsValidator.emailValidator(email);
System.out.println("Email is valid: " + email + ": " + isValid);
assertTrue(isValid);
}
}
@Test
void testCorrectUsernameValidator() {
List<String> correctUsernames = Arrays.asList("username", "123username", "username3", "user2name",
"USERNAME", "USERNAME123", "123USERNAME123", "2uSERname33");
for(String username : correctUsernames) {
boolean isValid = UserCredentialsValidator.usernameValidation(username, userList);
System.out.println("Username is valid: " + username + " : " + isValid);
assertTrue(isValid);
}
}
У меня также есть валидаторы для других полей, таких как имя пользователя и т. Д. Я думал о реализации вспомогательного метода, который бы принимал: проверенные учетные данные как String, List, но у меня проблема с последним параметром - проверяющим методом, не уверен как пройти это.
Код, который я хотел бы заменить каким-либо методом, это цикл for.