Bug 21479: Add regression tests

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
This commit is contained in:
Jonathan Druart 2018-10-09 13:30:54 -03:00 committed by Tomas Cohen Arazi
parent 2cd49034c4
commit 45fbd36e1f
1 changed files with 33 additions and 2 deletions

View File

@ -19,7 +19,7 @@ use Modern::Perl;
use C4::Context;
use Test::More tests => 1;
use Test::More tests => 2;
use Koha::AuthUtils;
use t::lib::Selenium;
@ -31,7 +31,7 @@ skip "Selenium::Remote::Driver is needed for selenium tests.", 1 if $@;
my $s = t::lib::Selenium->new;
my $driver = $s->driver;
my $base_url = $s->base_url;
my $opac_base_url = $s->opac_base_url;
my $builder = t::lib::TestBuilder->new;
our @cleanup;
@ -55,6 +55,37 @@ subtest 'OPAC - borrowernumber and branchcode as html attributes' => sub {
push @cleanup, $patron->library;
};
subtest 'OPAC - Remove from cart' => sub {
plan tests => 4;
$driver->get( $opac_base_url . "opac-search.pl?q=d" );
my $basket_count_elt;
eval {
# FIXME This will produce a STRACE
# A better way to do that would be to modify the way we display the basket count
# We should show/hide the count instead or recreate the node
$basket_count_elt = $driver->find_element('//span[@id="basketcount"]/span')
};
like($@, qr{An element could not be located on the page}, 'Basket should be empty');
$driver->find_element('//a[@class="addtocart cart1"]')->click;
$basket_count_elt = $driver->find_element('//span[@id="basketcount"]/span');
is( $basket_count_elt->get_text(),
1, 'One element should have been added to the cart' );
$driver->find_element('//a[@class="addtocart cart3"]')->click;
$driver->find_element('//a[@class="addtocart cart5"]')->click;
$basket_count_elt = $driver->find_element('//span[@id="basketcount"]/span');
is( $basket_count_elt->get_text(),
3, '3 elements should have been added to the cart' );
$driver->find_element('//a[@class="cartRemove cartR3"]')->click;
$basket_count_elt = $driver->find_element('//span[@id="basketcount"]/span');
is( $basket_count_elt->get_text(),
2, '1 element should have been removed from the cart' );
};
END {
$_->delete for @cleanup;
};