View | Details | Raw Unified | Return to bug 29971
Collapse All | Expand All

(-)a/t/db_dependent/selenium/patrons_search.t (-2 / +53 lines)
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
- 

Return to bug 29971