W repozytorium https://github.com/dominisz/passwordgeneratorapi znajduje się API dla generatora haseł
Interfejs PasswordGeneratorService
udostępnia dwie metody:
generate(PasswordGeneratorParameters)
- generuje jedno hasło na podstawie przekazanych parametrówgenerate(PasswordGeneratorParameters, int)
- generuje wymaganą liczbę haseł na podstawie przekazanych parametrów
public interface PasswordGeneratorService {
String generate(PasswordGeneratorParameters passwordGeneratorParameters);
List<String> generate(PasswordGeneratorParameters passwordGeneratorParameters, int count);
}
Klasa PasswordGeneratorParameters
wykorzystywana jest do przekazania informacji dla generatora o właściwościach generowanego hasła:
passwordLength
- wymagana długość hasłaincludeSymbols
- czy hasło powinno zawierać symbole (np. !@#$%^&*())includeLowercaseCharacters
- czy hasło powinno zawierać małe literyincludeUppercaseCharacters
- czy hasło powinno zawierać duże litery
public class PasswordGeneratorParameters {
int passwordLength;
boolean includeSymbols;
boolean includeNumbers;
boolean includeLowercaseCharacters;
boolean includeUppercaseCharacters;
}
Utworzyć implementację interfejsu PasswordGeneratorService
. Utworzyć zestaw testów jednostkowych do implementacji.