Bug 28249: Prevent Selenium->wait_for_element_visible to fall in an infinite loop
Stop if max_retries is reached Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> (cherry picked from commite751ce8cf2) Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com> (cherry picked from commit1fa3bb0e23) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> (cherry picked from commitef8eae9b0d) Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
This commit is contained in:
parent
5bb2b5bafc
commit
e6d1444ce2
|
|
@ -173,10 +173,15 @@ sub wait_for_element_visible {
|
|||
|
||||
my ($visible, $elt);
|
||||
$self->remove_error_handler;
|
||||
my $max_retries = $self->max_retries;
|
||||
my $i;
|
||||
while ( not $visible ) {
|
||||
$elt = eval {$self->driver->find_element($xpath_selector) };
|
||||
$visible = $elt && $elt->is_displayed;
|
||||
$self->driver->pause(1000) unless $visible;
|
||||
|
||||
die "Cannot wait more for element '$xpath_selector' to be visible"
|
||||
if $max_retries <= ++$i
|
||||
}
|
||||
$self->add_error_handler;
|
||||
return $elt;
|
||||
|
|
|
|||
Loading…
Reference in New Issue