NAME
Weasel::FindExpanders - Mapping find patterns to xpath locators
VERSION
0.01
SYNOPSIS
use Weasel::FindExpanders qw( register_find_expander );
register_find_expander(
'button',
'HTML',
sub {
my %args = @_;
$args{text} =~ s/'/''/g; # quote the quotes (XPath 2.0)
return ".//button[text()='$args{text}']";
});
$session->find($session->page, "@button|{text=>\"whatever\"}");
DESCRIPTION
DEPENDENCIES
SUBROUTINES/METHODS
- register_find_expander($pattern_name, $group_name, &expander_function)
-
Registers
&expander_function
as an expander for$pattern_name
in$group_name
.Weasel::Session
selects the expanders to be applied using itsgroups
attribute. - expand_finder_pattern($pattern, $args, $groups)
-
Returns a string of concatenated (using xpath '|' operator) expansions.
When
$groups
is undef, all groups will be searched forpattern_name
.If the pattern doesn't match '*<pattern_name>|{<arguments>}', the pattern is returned as the only list/arrayref element.
AUTHOR
Erik Huelsmann
CONTRIBUTORS
Erik Huelsmann Yves Lavoie
MAINTAINERS
Erik Huelsmann
BUGS AND LIMITATIONS
Bugs can be filed in the GitHub issue tracker for the Weasel project: https://github.com/perl-weasel/weasel/issues
SOURCE
The source code repository for Weasel is at https://github.com/perl-weasel/weasel
SUPPORT
Community support is available through perl-weasel@googlegroups.com.
LICENSE AND COPYRIGHT
(C) 2016-2021 Erik Huelsmann
Licensed under the same terms as Perl.