Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/perl
- use strict;
- use warnings;
- use Mojo::Base -strict;
- use utf8;
- use Test::More tests => 11;
- use ojo;
- use Mojo::Util 'encode';
- use_ok 'Mojo::DOM';
- my $dom = Mojo::DOM->new->parse(<<EOF);
- <input type="text" id="field1" name="first" value="first val" />
- <input type="text" id="field2" name="second" value="second val" />
- <input type="text" id="field3" name="third" value="third val" disabled="disabled" />
- EOF
- #Simple selector
- is $dom->find('input')->[1]->attrs->{value}, 'second val', 'right value';
- is $dom->find('input')->[2]->attrs->{value}, 'third val', 'right value';
- #Simple selector + attr
- is $dom->find('input[id^="field"]')->[2]->attrs->{value}, 'third val', 'right value';
- is $dom->find('input[id^="field"]')->size, 3, 'right number of elements';
- is $dom->find('input[disabled="disabled"]')->[0]->attrs->{value}, 'third val', 'right value';
- #Simple selector + :not pseudo class
- is $dom->find('input:not([disabled])')->[0]->attrs->{value}, 'first val', 'right value';
- is $dom->find('input:not([disabled])')->[1]->attrs->{value}, 'second val', 'right value';
- is $dom->find('input:not([disabled])')->[2], undef, 'no result';
- #Simple selector + attr + :not pseudo class
- #not passed(
- is $dom->find('input[id^="field"]:not([disabled])')->size, 2, 'right number of elements';
- is $dom->find('input[id="field2"]:not([disabled])')->size, 1, 'right number of elements';
- =head1 RESULTS
- 1..11
- ok 1 - use Mojo::DOM;
- ok 2 - right value
- ok 3 - right value
- ok 4 - right value
- ok 5 - right number of elements
- ok 6 - right value
- ok 7 - right value
- ok 8 - right value
- ok 9 - no result
- not ok 10 - right number of elements
- # Failed test 'right number of elements'
- # at ./mojo-dom-css.pl line 39.
- # got: '0'
- # expected: '2'
- not ok 11 - right number of elements
- # Failed test 'right number of elements'
- # at ./mojo-dom-css.pl line 40.
- # got: '0'
- # expected: '1'
- # Looks like you failed 2 tests of 11.
Add Comment
Please, Sign In to add comment