|
@@ -2,6 +2,7 @@ use strict;
|
|
|
use warnings;
|
|
use warnings;
|
|
|
|
|
|
|
|
use Test::More;
|
|
use Test::More;
|
|
|
|
|
+use Test::MockModule;
|
|
|
use Selenium::Remote::Driver;
|
|
use Selenium::Remote::Driver;
|
|
|
use Selenium::Remote::Mock::RemoteConnection;
|
|
use Selenium::Remote::Mock::RemoteConnection;
|
|
|
|
|
|
|
@@ -46,11 +47,16 @@ INPUT: {
|
|
|
ok(!$ret, 'Get attribute returns false for a missing attribute.');
|
|
ok(!$ret, 'Get attribute returns false for a missing attribute.');
|
|
|
$ret = $elem->get_tag_name();
|
|
$ret = $elem->get_tag_name();
|
|
|
is($ret, 'input', 'Get tag name');
|
|
is($ret, 'input', 'Get tag name');
|
|
|
|
|
+ my $selfmock = Test::MockModule->new('Selenium::Remote::WebElement');
|
|
|
|
|
+ $selfmock->redefine('get_tag_name',sub { 'input' });
|
|
|
|
|
+ $selfmock->redefine('get_property',sub { 0 });
|
|
|
|
|
|
|
|
$elem = $driver->find_element('checky', 'id');
|
|
$elem = $driver->find_element('checky', 'id');
|
|
|
$ret = $elem->is_selected();
|
|
$ret = $elem->is_selected();
|
|
|
is($ret, 0, 'Checkbox not selected');
|
|
is($ret, 0, 'Checkbox not selected');
|
|
|
$ret = $elem->click();
|
|
$ret = $elem->click();
|
|
|
|
|
+ $selfmock->redefine('get_property',sub { 1 });
|
|
|
|
|
+
|
|
|
$ret = $elem->is_selected();
|
|
$ret = $elem->is_selected();
|
|
|
is($ret, 1, 'Checkbox is selected');
|
|
is($ret, 1, 'Checkbox is selected');
|
|
|
TODO: {
|
|
TODO: {
|