forked from mirrors/nixpkgs
nixos/dokuwiki: add test for login page
Cookie jar can be used to accurately test if the login was successful. Simply searching for the user name is not sufficient, since it is always part of the returned page after login. The page should display a phrase containing the username after login.
This commit is contained in:
parent
38dc94bcf0
commit
20f052b6f6
|
@ -45,7 +45,7 @@ in {
|
|||
};
|
||||
};
|
||||
services.dokuwiki."site2.local" = {
|
||||
aclUse = true;
|
||||
usersFile = "/var/lib/dokuwiki/site2.local/users.auth.php";
|
||||
superUser = "admin";
|
||||
nginx = {
|
||||
forceSSL = false;
|
||||
|
@ -70,6 +70,15 @@ in {
|
|||
machine.wait_for_open_port(80)
|
||||
|
||||
machine.succeed("curl -sSfL http://site1.local/ | grep 'DokuWiki'")
|
||||
machine.fail("curl -sSfL 'http://site1.local/doku.php?do=login' | grep 'Login'")
|
||||
|
||||
machine.succeed("curl -sSfL http://site2.local/ | grep 'DokuWiki'")
|
||||
machine.succeed("curl -sSfL 'http://site2.local/doku.php?do=login' | grep 'Login'")
|
||||
|
||||
machine.succeed(
|
||||
"echo 'admin:$2y$10$ijdBQMzSVV20SrKtCna8gue36vnsbVm2wItAXvdm876sshI4uwy6S:Admin:admin@example.test:user' >> /var/lib/dokuwiki/site2.local/users.auth.php",
|
||||
"curl -sSfL -d 'u=admin&p=password' --cookie-jar cjar 'http://site2.local/doku.php?do=login'",
|
||||
"curl -sSfL --cookie cjar --cookie-jar cjar 'http://site2.local/doku.php?do=login' | grep 'Logged in as: <bdi>Admin</bdi>'",
|
||||
)
|
||||
'';
|
||||
})
|
||||
|
|
Loading…
Reference in a new issue