@@ -, +, @@ -MAIN log in ( auth.tt ) -AFTER log in- -CircSideBar- -Set library page- --- t/db_dependent/Auth.t | 40 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 39 insertions(+), 1 deletion(-) --- a/t/db_dependent/Auth.t +++ a/t/db_dependent/Auth.t @@ -10,7 +10,7 @@ use CGI qw ( -utf8 ); use Test::MockObject; use Test::MockModule; use List::MoreUtils qw/all any none/; -use Test::More tests => 17; +use Test::More tests => 18; use Test::Warn; use t::lib::Mocks; use t::lib::TestBuilder; @@ -857,4 +857,42 @@ subtest 'create_basic_session tests' => sub { is( $session->param('interface'), 'intranet', 'Staff interface gets converted to intranet' ); }; +subtest 'can change loggedinlibrary tests' => sub { + plan tests => 3; + + my $superlibrarian = $builder->build( + { + source => 'Borrower', + value => { + surname => 'Superlib', + flags => 1, + }, + } + ); + my $staff1 = $builder->build( + { + source => 'Borrower', + value => { + surname => 'Gass', + flags => 2**29, + }, + } + ); + my $staff2 = $builder->build( + { + source => 'Borrower', + value => { + surname => 'Lucas', + flags => 4, + }, + } + ); + my $r = haspermission( $superlibrarian->{userid} ); + my $r2 = haspermission( $staff1->{userid} ); + my $r3 = haspermission( $staff2->{userid} ); + is( $r->{superlibrarian}, 1, 'Superlibrarian can change branch' ); + is( $r2->{loggedinlibrary}, 1, 'Staff with loggedinlibrary permission can change branch' ); + is( $r3->{loggedinlibrary}, 0, 'Staff without loggedinlibrary permmision or superlibrarian cannot change branch' ); + +}; $schema->storage->txn_rollback; --