| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125 |
- #!/usr/bin/env perl
- use Test::Tester;
- use Test::More;
- use Test::MockObject;
- use Test::MockObject::Extends;
- use Test::Selenium::Remote::Driver;
- use Selenium::Remote::WebElement;
- use Carp;
- my $successful_driver = Test::Selenium::Remote::Driver->new( testing => 1 );
- $successful_driver = Test::MockObject::Extends->new($successful_driver);
- my $element = Test::Selenium::Remote::WebElement->new(
- id => '1342835311100',
- parent => $successful_driver,
- );
- # find_element_ok
- {
- $successful_driver->mock( 'find_element', sub {$element} );
- check_tests(
- sub {
- my $rc = $successful_driver->find_element_ok( 'q',
- 'find_element_ok works' );
- is( $rc, 1, 'returns true' );
- },
- [ { ok => 1,
- name => "find_element_ok works",
- diag => "",
- },
- { ok => 1,
- name => "returns true",
- diag => "",
- },
- ]
- );
- $successful_driver->mock( 'find_element', sub {0} );
- check_tests(
- sub {
- my $rc = $successful_driver->find_element_ok( 'q',
- 'find_element_ok works, falsey test' );
- is( $rc, 0, 'returns false' );
- },
- [ { ok => 0,
- name => "find_element_ok works, falsey test",
- diag => "",
- },
- { ok => 1,
- name => "returns false",
- diag => "",
- },
- ]
- );
- }
- # find_no_element_ok
- {
- $successful_driver->mock( 'find_element', sub { die $_[1] } );
- check_tests(
- sub {
- my $rc = $successful_driver->find_no_element_ok( 'BOOM',
- 'find_no_element_ok works, expecting to find nothing.' );
- is( $rc, 1, 'returns true' );
- },
- [ { ok => 1,
- name => "find_no_element_ok works, expecting to find nothing.",
- diag => "",
- },
- { ok => 1,
- name => "returns true",
- diag => "",
- },
- ]
- );
- $successful_driver->mock( 'find_element', sub {$element} );
- check_tests(
- sub {
- my $rc =
- $successful_driver->find_no_element_ok( 'q',
- 'find_no_element_ok works, expecting a false value if a element exists'
- );
- is( $rc, 0, 'returns false' );
- },
- [ { ok => 0,
- name =>
- "find_no_element_ok works, expecting a false value if a element exists",
- diag => "",
- },
- { ok => 1,
- name => "returns false",
- diag => "",
- },
- ]
- );
- }
- # content_like
- {
- $successful_driver->mock( 'get_page_source', sub { 'this output matches regex' } );
- check_tests(
- sub {
- my $rc = $successful_driver->content_like( qr/matches/,
- 'content_like works' );
- is( $rc, 1, 'returns true' );
- },
- [ { ok => 1,
- name => "content_like works",
- diag => "",
- },
- { ok => 1,
- name => "returns true",
- diag => "",
- },
- ]
- );
- }
- done_testing();
|