blob: 01cf33ea9648cb09ba218abd082edd02b34757c9 [file] [log] [blame]
use Mojo::Base -strict;
use Test::More;
use Test::Mojo;
use Mojo::File qw/path/;
use utf8;
my $t = Test::Mojo->new('Kalamar' => {
Kalamar => {
plugins => ['Auth']
}
});
$t->app->mode('production');
$t->post_ok('/user/login' => form => { handle_or_email => 'test', pwd => 'fail' })
->status_is(302)
->header_is('Location' => '/');
$t->get_ok('/')
->status_is(200)
->element_exists('link[rel=stylesheet][href^=/css/kalamar-]')
->element_exists('script[src^=/js/kalamar-]')
->element_exists('div.notify-error')
->text_is('div.notify-error', 'Bad CSRF token')
->element_exists('input[name=handle_or_email][value=test]')
->element_exists_not('div.button.top a')
->content_like(qr!KorAP\.URL = ''!)
;
is('kalamar',$t->app->sessions->cookie_name);
ok(!$t->app->sessions->secure);
$t = Test::Mojo->new('Kalamar' => {
Kalamar => {
plugins => ['Auth'],
https_only => 1
}
});
$t->post_ok('/user/login' => form => { handle_or_email => 'test', pwd => 'fail' })
->status_is(302)
->header_is('Location' => '/');
$t->get_ok('/')
->status_is(200)
->element_exists_not('div.notify-error')
;
is('kalamar',$t->app->sessions->cookie_name);
ok($t->app->sessions->secure);
$t = Test::Mojo->new('Kalamar' => {
Kalamar => {
plugins => ['Auth'],
proxy_prefix => '/korap/test',
https_only => 1
}
});
$t->app->mode('production');
$t->get_ok('/')
->status_is(200)
->element_exists('link[rel=stylesheet][href^=/korap/test/css/kalamar-]')
->element_exists('script[src^=/korap/test/js/kalamar-]')
;
is('kalamar-koraptest',$t->app->sessions->cookie_name);
ok($t->app->sessions->secure);
$t->post_ok('/user/login' => form => { handle_or_email => 'test', pwd => 'fail' })
->status_is(302)
->header_is('Location' => '/');
# Session can't be used
$t->get_ok('/')
->status_is(200)
->element_exists_not('div.notify-error')
->content_like(qr!KorAP\.URL = '/korap/test'!)
;
done_testing();