DOKK / manpages / debian 12 / libweasel-perl / Weasel::FindExpanders.3pm.en
Weasel::FindExpanders(3pm) User Contributed Perl Documentation Weasel::FindExpanders(3pm)

Weasel::FindExpanders - Mapping find patterns to xpath locators

0.01

  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\"}");

Registers &expander_function as an expander for $pattern_name in $group_name.

"Weasel::Session" selects the expanders to be applied using its "groups" attribute.

Returns a string of concatenated (using xpath '|' operator) expansions.

When $groups is undef, all groups will be searched for "pattern_name".

If the pattern doesn't match '*<pattern_name>|{<arguments>}', the pattern is returned as the only list/arrayref element.

Erik Huelsmann

Erik Huelsmann Yves Lavoie

Erik Huelsmann

Bugs can be filed in the GitHub issue tracker for the Weasel project:
https://github.com/perl-weasel/weasel/issues

The source code repository for Weasel is at
https://github.com/perl-weasel/weasel

Community support is available through perl-weasel@googlegroups.com <mailto:perl-weasel@googlegroups.com>.

 (C) 2016-2021  Erik Huelsmann

Licensed under the same terms as Perl.

2021-09-30 perl v5.32.1