Lines 49-57
my $driver = $s->driver;
Link Here
|
49 |
my $base_url = $s->base_url; |
49 |
my $base_url = $s->base_url; |
50 |
my $mainpage = $s->base_url . q|mainpage.pl|; |
50 |
my $mainpage = $s->base_url . q|mainpage.pl|; |
51 |
my $builder = t::lib::TestBuilder->new; |
51 |
my $builder = t::lib::TestBuilder->new; |
|
|
52 |
my $schema = Koha::Database->schema; |
52 |
|
53 |
|
53 |
subtest 'Search patrons' => sub { |
54 |
subtest 'Search patrons' => sub { |
54 |
plan tests => 24; |
55 |
plan tests => 25; |
55 |
|
56 |
|
56 |
if ( Koha::Patrons->search({surname => {-like => "test_patron_%"}})->count ) { |
57 |
if ( Koha::Patrons->search({surname => {-like => "test_patron_%"}})->count ) { |
57 |
BAIL_OUT("Cannot run this test, data we need to create already exist in the DB"); |
58 |
BAIL_OUT("Cannot run this test, data we need to create already exist in the DB"); |
Lines 277-282
subtest 'Search patrons' => sub {
Link Here
|
277 |
$s->wait_for_ajax; |
278 |
$s->wait_for_ajax; |
278 |
is( $driver->find_element('//div[@id="'.$table_id.'_info"]')->get_text, sprintf('Showing 1 to %s of %s entries (filtered from %s total entries)', 1, 1, $total_number_of_patrons), 'Refining with header filters works to further filter the original query' ); |
279 |
is( $driver->find_element('//div[@id="'.$table_id.'_info"]')->get_text, sprintf('Showing 1 to %s of %s entries (filtered from %s total entries)', 1, 1, $total_number_of_patrons), 'Refining with header filters works to further filter the original query' ); |
279 |
|
280 |
|
|
|
281 |
subtest 'remember_search' => sub { |
282 |
|
283 |
plan tests => 7; |
284 |
|
285 |
C4::Context->set_preference( 'PatronsPerPage', 5 ); |
286 |
$driver->get( $base_url . "/members/members-home.pl" ); |
287 |
$s->fill_form( { search_patron_filter => 'test_patron' } ); |
288 |
$s->submit_form; |
289 |
$s->wait_for_ajax; |
290 |
my $patron_selected_text = $driver->find_element('//div[@id="patron_search_selected"]/span')->get_text; |
291 |
is( $patron_selected_text, "", "Patrons selected is not displayed" ); |
292 |
|
293 |
my @checkboxes = $driver->find_elements( |
294 |
'//input[@type="checkbox"][@name="borrowernumber"]'); |
295 |
$checkboxes[2]->click; |
296 |
$patron_selected_text = $driver->find_element('//div[@id="patron_search_selected"]/span')->get_text; |
297 |
is( $patron_selected_text, "Patrons selected: 1", "One patron selected" ); |
298 |
|
299 |
$checkboxes[4]->click; |
300 |
$patron_selected_text = $driver->find_element('//div[@id="patron_search_selected"]/span')->get_text; |
301 |
is( $patron_selected_text, "Patrons selected: 2", "Two patrons are selected" ); |
302 |
|
303 |
$driver->find_element('//*[@id="memberresultst_next"]')->click; |
304 |
@checkboxes = $driver->find_elements( |
305 |
'//input[@type="checkbox"][@name="borrowernumber"]'); |
306 |
$checkboxes[0]->click; |
307 |
$patron_selected_text = $driver->find_element('//div[@id="patron_search_selected"]/span')->get_text; |
308 |
is( $patron_selected_text, "Patrons selected: 3", "Tree patrons are selected" ); |
309 |
|
310 |
|
311 |
# Perform another search |
312 |
$driver->get( $base_url . "/members/members-home.pl" ); |
313 |
$s->fill_form( { search_patron_filter => 'test_patron' } ); |
314 |
$s->submit_form; |
315 |
$s->wait_for_ajax; |
316 |
$patron_selected_text = $driver->find_element('//div[@id="patron_search_selected"]/span')->get_text; |
317 |
is( $patron_selected_text, "Patrons selected: 3", "Tree patrons still selected" ); |
318 |
|
319 |
$driver->find_element('//*[@id="patronlist-menu"]')->click; |
320 |
$driver->find_element('//a[@class="patron-list-add"]')->click; |
321 |
my $patron_list_name = "my new list"; |
322 |
$driver->find_element('//input[@id="new_patron_list"]')->send_keys($patron_list_name); |
323 |
$driver->find_element('//button[@id="add_to_patron_list_submit"]')->click; |
324 |
$s->wait_for_ajax; |
325 |
is( $driver->find_element('//*[@id="patron_list_dialog"]')->get_text, "Added 3 patrons to $patron_list_name." ); |
326 |
my $patron_list = $schema->resultset('PatronList')->search({ name => $patron_list_name })->next; |
327 |
is( $schema->resultset('PatronListPatron')->search({ patron_list_id => $patron_list->patron_list_id })->count, 3 ); |
328 |
|
329 |
$patron_list->delete; |
330 |
}; |
331 |
|
280 |
push @cleanup, $_ for @patrons; |
332 |
push @cleanup, $_ for @patrons; |
281 |
push @cleanup, $library; |
333 |
push @cleanup, $library; |
282 |
push @cleanup, $library_2; |
334 |
push @cleanup, $library_2; |
283 |
- |
|
|