diff --git a/t/db_dependent/api/v1/borrowers.t b/t/db_dependent/api/v1/borrowers.t index aef9f4da65..ae3e4a4ef8 100644 --- a/t/db_dependent/api/v1/borrowers.t +++ b/t/db_dependent/api/v1/borrowers.t @@ -19,6 +19,7 @@ use Modern::Perl; use Test::More tests => 10; use Test::Mojo; +use t::lib::TestBuilder; use C4::Auth; use C4::Context; @@ -26,6 +27,8 @@ use C4::Context; use Koha::Database; use Koha::Borrower; +my $builder = t::lib::TestBuilder->new(); + my $dbh = C4::Context->dbh; $dbh->{AutoCommit} = 0; $dbh->{RaiseError} = 1; @@ -33,32 +36,34 @@ $dbh->{RaiseError} = 1; $ENV{REMOTE_ADDR} = '127.0.0.1'; my $t = Test::Mojo->new('Koha::REST::V1'); -my $categorycode = Koha::Database->new()->schema()->resultset('Category')->first()->categorycode(); -my $branchcode = Koha::Database->new()->schema()->resultset('Branch')->first()->branchcode(); - -my $borrower = Koha::Borrower->new; -$borrower->categorycode( $categorycode ); -$borrower->branchcode( $branchcode ); -$borrower->surname("Test Surname"); -$borrower->store; -my $borrowernumber = $borrower->borrowernumber; +my $categorycode = $builder->build({ source => 'Category' })->{ categorycode }; +my $branchcode = $builder->build({ source => 'Branch' })->{ branchcode }; +my $borrower = $builder->build({ + source => 'Borrower', + value => { + branchcode => $branchcode, + categorycode => $categorycode + } +}); $t->get_ok('/api/v1/borrowers') ->status_is(403); -$t->get_ok("/api/v1/borrowers/$borrowernumber") +$t->get_ok("/api/v1/borrowers/" . $borrower->{ borrowernumber }) ->status_is(403); -my $loggedinuser = Koha::Borrower->new; -$loggedinuser->categorycode($categorycode); -$loggedinuser->branchcode($branchcode); -$loggedinuser->userid('test_rest_api_user'); -$loggedinuser->flags(16); # flags for 'borrowers' permission only -$loggedinuser->store; +my $loggedinuser = $builder->build({ + source => 'Borrower', + value => { + branchcode => $branchcode, + categorycode => $categorycode, + flags => 16 # borrowers flag + } +}); my $session = C4::Auth::get_session(''); -$session->param('number', $loggedinuser->borrowernumber); -$session->param('id', $loggedinuser->userid); +$session->param('number', $loggedinuser->{ borrowernumber }); +$session->param('id', $loggedinuser->{ userid }); $session->param('ip', '127.0.0.1'); $session->param('lasttime', time()); $session->flush; @@ -69,11 +74,11 @@ $tx->req->env({REMOTE_ADDR => '127.0.0.1'}); $t->request_ok($tx) ->status_is(200); -$tx = $t->ua->build_tx(GET => "/api/v1/borrowers/$borrowernumber"); +$tx = $t->ua->build_tx(GET => "/api/v1/borrowers/" . $borrower->{ borrowernumber }); $tx->req->cookies({name => 'CGISESSID', value => $session->id}); $t->request_ok($tx) ->status_is(200) - ->json_is('/borrowernumber' => $borrowernumber) - ->json_is('/surname' => "Test Surname"); + ->json_is('/borrowernumber' => $borrower->{ borrowernumber }) + ->json_is('/surname' => $borrower->{ surname }); $dbh->rollback;