Bugzilla – Attachment 43208 Details for
Bug 13799
Add base for building RESTful API
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 13799: (QA followup) make tests use random data
Bug-13799-QA-followup-make-tests-use-random-data.patch (text/plain), 3.87 KB, created by
Martin Renvoize (ashimema)
on 2015-10-07 19:21:30 UTC
(
hide
)
Description:
Bug 13799: (QA followup) make tests use random data
Filename:
MIME Type:
Creator:
Martin Renvoize (ashimema)
Created:
2015-10-07 19:21:30 UTC
Size:
3.87 KB
patch
obsolete
>From 11bdb916e9e46ca8d9d37975bf13cab423e3acca Mon Sep 17 00:00:00 2001 >From: Tomas Cohen Arazi <tomascohen@theke.io> >Date: Thu, 24 Sep 2015 14:21:55 -0300 >Subject: [PATCH] Bug 13799: (QA followup) make tests use random data > >With the introduction of TestBuilder there's no need to >rely on existing data on the DB (the original patch relies >on categories and branches already existing). > >This patch creates a random branch, category and two borrowers >with the fixed data that is needed for the tests. It adjusts >the tests to use the randomized data instead of the previously >fixed one. > >Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> >The feature works as expected and all tests passes. koha-qa.pl too. > >Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> >--- > t/db_dependent/api/v1/borrowers.t | 47 ++++++++++++++++++++++----------------- > 1 file changed, 26 insertions(+), 21 deletions(-) > >diff --git a/t/db_dependent/api/v1/borrowers.t b/t/db_dependent/api/v1/borrowers.t >index aef9f4d..ae3e4a4 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; >-- >2.1.4
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 13799
:
36700
|
36705
|
36938
|
36941
|
37119
|
37132
|
37172
|
38246
|
39156
|
39158
|
39159
|
39160
|
39161
|
39162
|
39163
|
39164
|
40088
|
40092
|
40093
|
40094
|
40098
|
40099
|
40101
|
40140
|
40141
|
40142
|
40463
|
40464
|
40465
|
40466
|
40467
|
40468
|
40469
|
40470
|
40471
|
40551
|
40552
|
40553
|
40554
|
40560
|
40561
|
40584
|
40585
|
40586
|
40587
|
40616
|
40617
|
40618
|
40619
|
41160
|
41161
|
41162
|
41268
|
41269
|
41270
|
41271
|
41272
|
41273
|
41274
|
41320
|
41321
|
41326
|
41327
|
41328
|
41329
|
41330
|
41331
|
41538
|
41539
|
41540
|
41541
|
41542
|
41543
|
41547
|
41554
|
42044
|
42085
|
42086
|
42123
|
42518
|
42766
|
42768
|
42801
|
42874
|
42875
|
42876
|
42877
|
42878
|
43186
|
43187
|
43189
|
43190
|
43191
|
43192
|
43204
|
43205
|
43206
|
43207
|
43208
|
43209
|
43210
|
43211
|
43212
|
43213
|
43214
|
43980
|
43981
|
43987
|
43989
|
43990
|
43991
|
43992
|
43993
|
43994
|
43995
|
43996
|
43997
|
43998
|
43999
|
44000
|
44001
|
44185
|
44285
|
44313
|
44375
|
44376
|
44377
|
44378
|
44379
|
44380
|
44381
|
44382
|
44383
|
44384
|
44385