You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

31 lines
962 B

import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
import java.util.regex.Pattern;
import static org.junit.jupiter.api.Assertions.*;
class PasswordGeneratorTest {
static PasswordGenerator passwordGenerator;
@BeforeAll
static void init() {
passwordGenerator = new PasswordGenerator();
}
@Test
void testGeneratedPasswordLength() {
assertNotSame("", passwordGenerator.generateRandomPassword());
assertEquals(passwordGenerator.generateRandomPassword().length(), passwordGenerator.getLength());
passwordGenerator.setLength(33);
assertEquals(passwordGenerator.getLength(), 33);
assertEquals(passwordGenerator.generateRandomPassword().length(), passwordGenerator.getLength());
}
@Test
void testPasswordLowercaseRequirement() {
assertTrue(Pattern.compile("^(?=.*[a-z]).+$").matcher(passwordGenerator.generateRandomPassword()).matches());
}
}