/
koskv
/
TeamSync-Tests
Обзор
Документация
Войти
/
koskv
/
TeamSync-Tests
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
src/test/java/TeamSyncTest/testdata/UsernameDataProvider.java
90 строк
5 KB
Koskv
Add: Добавлены тесты User
15 ноя 2025, 22:56
15 ноя 2025, 22:56
0ad8725
Код
Авторство
О чём код?
package TeamSyncTest.testdata; import org.junit.jupiter.params.provider.Arguments; import java.util.stream.Stream; public class UsernameDataProvider { static Stream<String> validUsernames() { return Stream.of( "ivanov.159", // есть разрешенный спецсимвол ".", цифры, начинается с буквы "Ivanov489-", // есть разрешенный спецсимвол "-", цифры "iv3anov_3", // есть разрешенный спецсимвол "_", цифры "5_Test", // Начинается с цифры "7test", // нет спецсимвола "test-user" // нет цифры ); } static Stream<String> errorUsernameLength() { return Stream.of( "aa", // 5 символа — должно быть invalid "a".repeat(51) // 51 символ — invalid (если максимум 50) ); } static Stream<String> validUsernamesLength() { return Stream.of( "ASSol", // 3 символа — должно быть valid "p".repeat(50) // 50 символ — valid ); } static Stream<String> inValidUsernames() { return Stream.of( "ab 12", "-123Prr_rgeg", "-____----", "443234423424", " ", "service", "p".repeat(51) ); } static Stream<String> updateInValidUsernames() { return Stream.of( "ab 12", "-123Prr_rgeg", "-____----", "443234423424", "service", "p".repeat(51) ); } static Stream<Arguments> errorUsernameAndMessagesUpdate() { return Stream.of( Arguments.of("ab 12", "Имя пользователя содержит запрещенные символы. Может содержать только латинские буквы, цифры, точки, дефисы и подчеркивания"), Arguments.of("-123Prr_rgeg", "Имя пользователя должно начинаться с латинской буквы или цифры"), Arguments.of("-..----_", "Имя пользователя должно начинаться с латинской буквы или цифры"), Arguments.of("443234423424", "Имя пользователя не может состоять только из цифр и символов '_', '.', '-'. Должна быть хотя бы одна латинская буква."), Arguments.of("service", "Имя пользователя 'service' зарезервировано/запрещено и не может быть использовано") ); } static Stream<Arguments> errorUsernameAndMessages() { return Stream.of( Arguments.of("ab 12", "Имя пользователя содержит запрещенные символы. Может содержать только латинские буквы, цифры, точки, дефисы и подчеркивания"), Arguments.of("-123Prr_rgeg", "Имя пользователя должно начинаться с латинской буквы или цифры"), Arguments.of("-..----_", "Имя пользователя должно начинаться с латинской буквы или цифры"), Arguments.of("443234423424", "Имя пользователя не может состоять только из цифр и символов '_', '.', '-'. Должна быть хотя бы одна латинская буква."), Arguments.of(" ", "Username cannot be blank"), Arguments.of("service", "Имя пользователя 'service' зарезервировано/запрещено и не может быть использовано") ); } static Stream<String> provideUsernameSQLInjection(){ return Stream.of("admin' OR '1'='1", "' OR 1=1 --", "admin' --", "' UNION SELECT username, password FROM users --", "'; DROP TABLE users --", "admin'/*", "' OR 'a'='a", "x' OR username LIKE '%admin%" ); } }