Lines 17-26
Link Here
|
17 |
# |
17 |
# |
18 |
|
18 |
|
19 |
use Modern::Perl; |
19 |
use Modern::Perl; |
|
|
20 |
|
20 |
use utf8; |
21 |
use utf8; |
21 |
use Test::More tests => 20; |
22 |
use Test::More tests => 20; |
22 |
use Test::WWW::Mechanize; |
23 |
use Test::WWW::Mechanize; |
23 |
use Data::Dumper; |
|
|
24 |
use XML::Simple; |
24 |
use XML::Simple; |
25 |
use JSON; |
25 |
use JSON; |
26 |
use File::Basename; |
26 |
use File::Basename; |
Lines 71-77
$agent->follow_link_ok( { text => 'Stage MARC records for import' },
Link Here
|
71 |
'go to stage MARC' ); |
71 |
'go to stage MARC' ); |
72 |
|
72 |
|
73 |
$agent->post( |
73 |
$agent->post( |
74 |
"$intranet/cgi-bin/koha/tools/upload-file.pl", |
74 |
"$intranet/cgi-bin/koha/tools/upload-file.pl?temp=1", |
75 |
[ 'fileToUpload' => [$file], ], |
75 |
[ 'fileToUpload' => [$file], ], |
76 |
'Content_Type' => 'form-data', |
76 |
'Content_Type' => 'form-data', |
77 |
); |
77 |
); |
Lines 96-101
$agent->submit_form_ok(
Link Here
|
96 |
'encoding' => 'utf8', |
96 |
'encoding' => 'utf8', |
97 |
'parse_items' => '1', |
97 |
'parse_items' => '1', |
98 |
'runinbackground' => '1', |
98 |
'runinbackground' => '1', |
|
|
99 |
'record_type' => 'biblio' |
99 |
} |
100 |
} |
100 |
}, |
101 |
}, |
101 |
'stage MARC' |
102 |
'stage MARC' |
Lines 150-161
$agent->submit_form_ok(
Link Here
|
150 |
'parse_items' => '1', |
151 |
'parse_items' => '1', |
151 |
'runinbackground' => '1', |
152 |
'runinbackground' => '1', |
152 |
'completedJobID' => $jobID, |
153 |
'completedJobID' => $jobID, |
|
|
154 |
'record_type' => 'biblio' |
153 |
} |
155 |
} |
154 |
}, |
156 |
}, |
155 |
'stage MARC' |
157 |
'stage MARC' |
156 |
); |
158 |
); |
157 |
|
159 |
|
158 |
$agent->follow_link_ok( { text => 'Manage staged records' }, 'view batch' ); |
160 |
$agent->follow_link_ok( { text => 'Manage staged records' }, 'view batch' ); |
|
|
161 |
|
159 |
my $bookdescription; |
162 |
my $bookdescription; |
160 |
if ( $marcflavour eq 'UNIMARC' ) { |
163 |
if ( $marcflavour eq 'UNIMARC' ) { |
161 |
$bookdescription = 'Jeffrey Esakov et Tom Weiss'; |
164 |
$bookdescription = 'Jeffrey Esakov et Tom Weiss'; |
Lines 163-186
if ( $marcflavour eq 'UNIMARC' ) {
Link Here
|
163 |
else { |
166 |
else { |
164 |
$bookdescription = 'Data structures'; |
167 |
$bookdescription = 'Data structures'; |
165 |
} |
168 |
} |
166 |
$agent->content_contains( $bookdescription, 'found book' ); |
169 |
|
167 |
$agent->form_number(5); |
170 |
# Save the staged records URI for later use |
|
|
171 |
my $staged_records_uri = $agent->uri; |
172 |
|
173 |
my $import_batch_id = ( split( '=', $staged_records_uri->as_string ) )[-1]; |
174 |
# Get datatable for the batch id |
175 |
$agent->get_ok( |
176 |
"$intranet/cgi-bin/koha/tools/batch_records_ajax.pl?import_batch_id=$import_batch_id", |
177 |
'get the datatable for the new batch id' |
178 |
); |
179 |
$jsonresponse = decode_json $agent->content; |
180 |
like( $jsonresponse->{ aaData }[0]->{ citation }, qr/$bookdescription/, 'found book' ); |
181 |
my $biblionumber = $jsonresponse->{ aaData }[0]->{ import_record_id }; |
182 |
# Back to the manage staged records page |
183 |
$agent->get($staged_records_uri); |
184 |
$agent->form_number(6); |
168 |
$agent->field( 'framework', '' ); |
185 |
$agent->field( 'framework', '' ); |
169 |
$agent->click_ok( 'mainformsubmit', "imported records into catalog" ); |
186 |
$agent->click_ok( 'mainformsubmit', "imported records into catalog" ); |
170 |
my $newbib; |
|
|
171 |
foreach my $link ( $agent->links() ) { |
172 |
if ( $link->url() =~ m#/cgi-bin/koha/catalogue/detail.pl\?biblionumber=# ) { |
173 |
$newbib = $link->text(); |
174 |
$agent->link_content_like( [$link], qr/$bookdescription/, |
175 |
'successfully imported record' ); |
176 |
last; |
177 |
} |
178 |
} |
179 |
|
187 |
|
180 |
$agent->form_number(4); |
188 |
$agent->form_number(5); |
181 |
$agent->click_ok( 'mainformsubmit', "revert import" ); |
189 |
$agent->click_ok( 'mainformsubmit', "revert import" ); |
182 |
$agent->get_ok( |
190 |
$agent->get_ok( |
183 |
"$intranet/cgi-bin/koha/catalogue/detail.pl?biblionumber=$newbib", |
191 |
"$intranet/cgi-bin/koha/catalogue/detail.pl?biblionumber=$biblionumber", |
184 |
'getting reverted bib' ); |
192 |
'getting reverted bib' ); |
185 |
$agent->content_contains( 'The record you requested does not exist', |
193 |
$agent->content_contains( 'The record you requested does not exist', |
186 |
'bib is gone' ); |
194 |
'bib is gone' ); |
187 |
- |
195 |
|
|
|
196 |
1; |