├── t
├── uploadTest
├── www
│ ├── 404.html
│ ├── icon.gif
│ ├── redisplay.xpi
│ ├── invalid-extension.xpi
│ ├── iframes.html
│ ├── popup.html
│ ├── frameset.html
│ ├── metakeys.html
│ ├── alerts.html
│ ├── cookies.html
│ ├── dragAndDropTest.html
│ ├── xhtmlTest.html
│ ├── index.html
│ ├── formPage.html
│ ├── nestedElements.html
│ └── javascriptPage.html
├── bin
│ ├── docker-record-linux
│ └── record.pl
├── 00-load.t
├── CanSetWebdriverContext.t
├── Test-Selenium-Remote-Driver-google.t
├── error.t
├── 13-waiter.t
├── Finders.t
├── 04-commands-implemented.t
├── http-server.pl
├── 12-reuse-session.t
├── convenience.t
├── 01-driver-pac.t
├── 10-switch-to-window.t
├── Remote-Connection.t
├── Test-Selenium-Remote-WebElement.t
├── 03-spec-coverage.t
├── lib
│ └── TestHarness.pm
├── mock-recordings
│ └── test-selenium-remote-driver-google-mock.json
├── 02-webelement.t
└── Firefox-Profile.t
├── at
├── other.html
├── edge.test
├── test-firefox.test
├── firefox.test
├── test.html
├── Waiter.t
├── legacy.test
├── chrome.test
├── sanity.test
└── sanity-chrome.test
├── tidyall.ini
├── MANIFEST.SKIP
├── perlcriticrc
├── lib
├── Selenium
│ ├── Firefox
│ │ ├── webdriver.xpi
│ │ ├── Binary.pm
│ │ └── Profile.pm
│ ├── Remote
│ │ ├── Driver
│ │ │ ├── Firefox
│ │ │ │ └── Profile.pm
│ │ │ └── CanSetWebdriverContext.pm
│ │ ├── Finders.pm
│ │ ├── Mock
│ │ │ └── Commands.pm
│ │ ├── WDKeys.pm
│ │ ├── ErrorHandler.pm
│ │ └── RemoteConnection.pm
│ ├── CanStartBinary
│ │ ├── ProbePort.pm
│ │ └── FindBinary.pm
│ ├── InternetExplorer.pm
│ ├── Chrome.pm
│ ├── Edge.pm
│ ├── Waiter.pm
│ └── PhantomJS.pm
└── Test
│ └── Selenium
│ ├── Edge.pm
│ ├── Chrome.pm
│ ├── Firefox.pm
│ ├── PhantomJS.pm
│ ├── InternetExplorer.pm
│ └── Remote
│ ├── WebElement.pm
│ └── Role
│ └── DoesTesting.pm
├── .gitignore
├── driver-example.pl
├── .mailmap
├── .travis.yml
├── INSTALL.md
├── weaver.ini
├── dist.ini
└── cpanfile
/t/uploadTest:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/at/other.html:
--------------------------------------------------------------------------------
1 | ZIPPY
2 |
--------------------------------------------------------------------------------
/t/www/404.html:
--------------------------------------------------------------------------------
1 |
404 - Not Found
2 |
--------------------------------------------------------------------------------
/tidyall.ini:
--------------------------------------------------------------------------------
1 | [PerlTidy]
2 | select = {lib,bin}/**/*
3 | argv = -noll -it=2
4 |
--------------------------------------------------------------------------------
/MANIFEST.SKIP:
--------------------------------------------------------------------------------
1 | MANIFEST.SKIP
2 | cover_db/*
3 | .travis.yml
4 | weaver.ini
5 | .git/*
6 |
--------------------------------------------------------------------------------
/perlcriticrc:
--------------------------------------------------------------------------------
1 | exclude = RequireUseStrict|RequireUseWarnings|ProhibitSubroutinePrototypes
2 |
--------------------------------------------------------------------------------
/t/www/icon.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/teodesian/Selenium-Remote-Driver/HEAD/t/www/icon.gif
--------------------------------------------------------------------------------
/t/www/redisplay.xpi:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/teodesian/Selenium-Remote-Driver/HEAD/t/www/redisplay.xpi
--------------------------------------------------------------------------------
/t/www/invalid-extension.xpi:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/teodesian/Selenium-Remote-Driver/HEAD/t/www/invalid-extension.xpi
--------------------------------------------------------------------------------
/lib/Selenium/Firefox/webdriver.xpi:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/teodesian/Selenium-Remote-Driver/HEAD/lib/Selenium/Firefox/webdriver.xpi
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | META.yml
2 | MYMETA.yml
3 | Makefile*
4 | blib
5 | pm_to_blib
6 | cover_db
7 | *.komodo*
8 | *.sublime*
9 | .build
10 | Selenium-Remote-Driver-*
11 | selenium*.jar
12 | .prove
13 | _prove
14 | #vim swapfiles
15 | *.swo
16 | *.swp
17 | *.bak
18 |
--------------------------------------------------------------------------------
/at/edge.test:
--------------------------------------------------------------------------------
1 | use strict;
2 | use warnings;
3 |
4 | use Test::More;
5 | use Selenium::Edge;
6 |
7 | my $driver = Selenium::Edge->new();
8 | $driver->get('http://www.perlmonks.org');
9 | like( $driver->get_title(),qr/monastery gates/i,"Can load perlmonks");
10 | $driver->quit();
11 |
12 | done_testing();
13 |
--------------------------------------------------------------------------------
/t/bin/docker-record-linux:
--------------------------------------------------------------------------------
1 | #! /bin/bash
2 |
3 | REPO=$(git rev-parse --show-toplevel)
4 | cd $REPO
5 |
6 | docker pull gempesaw/docker-selenium-remote-driver
7 | docker run --security-opt=seccomp=unconfined \
8 | -v $REPO:/opt/Selenium-Remote-Driver \
9 | -it --rm gempesaw/docker-selenium-remote-driver $1
10 |
--------------------------------------------------------------------------------
/t/00-load.t:
--------------------------------------------------------------------------------
1 |
2 | use strict;
3 | use warnings;
4 | use Test::More;
5 |
6 | BEGIN {
7 | use_ok( 'Selenium::Remote::Driver' ) || print "Bail out!";
8 | use_ok( 'Test::Selenium::Remote::Driver' ) || print "Bail out!";
9 | use_ok('Selenium::Remote::Driver::Firefox::Profile') || print "Bail out!";
10 | }
11 |
12 | done_testing;
13 |
--------------------------------------------------------------------------------
/t/www/iframes.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | This page has iframes
4 |
5 |
6 | This is the heading
7 |
8 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/t/www/popup.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | JavaScript Popup Example 3
4 |
5 |
11 |
12 | JavaScript Popup
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/t/CanSetWebdriverContext.t:
--------------------------------------------------------------------------------
1 | use strict;
2 | use warnings;
3 | use Test::More;
4 |
5 | {
6 | package SetWebdriverContext;
7 | use Moo;
8 | with 'Selenium::Remote::Driver::CanSetWebdriverContext';
9 |
10 | }
11 |
12 | my $prefix = SetWebdriverContext->new;
13 | ok($prefix->can('wd_context_prefix'), 'role grants wd context prefix attr');
14 | is($prefix->wd_context_prefix, '/wd/hub', 'role has proper default webdriver context');
15 |
16 | done_testing;
17 |
--------------------------------------------------------------------------------
/t/www/frameset.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
12 |
13 |
--------------------------------------------------------------------------------
/t/www/metakeys.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Testing meta keys
4 |
11 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/driver-example.pl:
--------------------------------------------------------------------------------
1 | #!/bin/env perl
2 | use Selenium::Remote::Driver;
3 | use Test::More tests=>4;
4 |
5 | my $driver = Selenium::Remote::Driver->new;
6 | $driver->get("http://www.google.com");
7 | $driver->find_element('q','name')->send_keys("Hello WebDriver!");
8 |
9 | ok($driver->get_title =~ /Google/,"title matches google");
10 | is($driver->get_title,'Google',"Title is google");
11 | ok($driver->get_title eq 'Google','Title equals google');
12 | like($driver->get_title,qr/Google/,"Title matches google");
13 |
14 | $driver->quit();
15 |
--------------------------------------------------------------------------------
/t/www/alerts.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Testing Alerts
4 |
5 |
6 |
7 | Testing Alerts and Stuff
8 |
9 |
10 |
11 | This tests alerts: click me
12 |
13 |
14 | This is a test of a prompt: test prompt
15 |
16 | This is a test of a confirm: test confirm
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/t/www/cookies.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | Testing cookies
4 |
5 |
14 |
15 |