diff --git a/.travis.yml b/.travis.yml index 3c0faf4..a183210 100644 --- a/.travis.yml +++ b/.travis.yml @@ -40,4 +40,4 @@ script: - mv jbuild.dist.ini jbuild.ini - vendor/bin/robo build - mv tests/acceptance.suite.dist.yml tests/acceptance.suite.yml -- vendor/bin/robo run:tests true +- vendor/bin/robo run:tests --use-htaccess diff --git a/README.md b/README.md index 1a39f31..94d19a2 100644 --- a/README.md +++ b/README.md @@ -37,6 +37,20 @@ $ vendor/bin/robo $ vendor/bin/robo run:tests ``` +## Additional options + +You can run the tests against different resolutions. The default acceptance YAML configuration file provides three options: + +* "desktop": default, 1024x768px +* "tablet": tablet in portrait mode, 768x1024px +* "phone": phone in portrait mode, 480x640px + +To set a specific resolution, set is as an option of the command: + +`$ vendor/bin/robo run:tests --env=tablet` + +Note: the first parameter is used by Travis and you should always set it to "0" when you run your tests locally. + ##For Windows: You need to install: diff --git a/RoboFile.php b/RoboFile.php index a210ffb..f424fd1 100644 --- a/RoboFile.php +++ b/RoboFile.php @@ -75,13 +75,14 @@ class RoboFile extends \Robo\Tasks /** * Executes all the Selenium System Tests in a suite on your machine * - * @param bool $use_htaccess Renames and enable embedded Joomla .htaccess file - * + * @param array $opts Array of configuration options: + * - 'use-htaccess': renames and enable embedded Joomla .htaccess file + * - 'env': set a specific environment to get configuration from * @return mixed */ - public function runTests($use_htaccess = false) + public function runTests($opts = ['use-htaccess' => false, 'env' => 'desktop']) { - $this->createTestingSite($use_htaccess); + $this->createTestingSite($opts['use-htaccess']); $this->getComposer(); @@ -96,6 +97,7 @@ class RoboFile extends \Robo\Tasks ->arg('--steps') ->arg('--debug') ->arg('--fail-fast') + ->arg('--env ' . $opts['env']) ->arg('tests/acceptance/install/') ->run() ->stopOnFail(); @@ -104,6 +106,7 @@ class RoboFile extends \Robo\Tasks ->arg('--steps') ->arg('--debug') ->arg('--fail-fast') + ->arg('--env ' . $opts['env']) ->arg('tests/acceptance/administrator/') ->run() ->stopOnFail(); @@ -112,9 +115,11 @@ class RoboFile extends \Robo\Tasks ->arg('--steps') ->arg('--debug') ->arg('--fail-fast') + ->arg('--env ' . $opts['env']) ->arg('tests/acceptance/frontend/') ->run() ->stopOnFail(); + /* // Uncomment this lines if you need to debug selenium errors $seleniumErrors = file_get_contents('selenium.log'); diff --git a/tests/acceptance.suite.dist.yml b/tests/acceptance.suite.dist.yml index 6df7677..2aead16 100644 --- a/tests/acceptance.suite.dist.yml +++ b/tests/acceptance.suite.dist.yml @@ -39,4 +39,16 @@ modules: repo_folder: '/home/travis/build/joomla-extensions/weblinks/' # Path to the Extension repository. To be used by tests to install via Install from folder counter_test_url: 'http://localhost/tests/joomla-cms3' # the url for the weblink item used to test hits counter url: 'http://localhost/tests/joomla-cms3' # the url that points to the joomla installation at /tests/system/joomla-cms - we need it twice here -error_level: "E_ALL & ~E_STRICT & ~E_DEPRECATED" \ No newline at end of file +error_level: "E_ALL & ~E_STRICT & ~E_DEPRECATED" +env: + desktop: ~ + tablet: + modules: + config: + JoomlaBrowser: + window_size: 768x1024 + phone: + modules: + config: + JoomlaBrowser: + window_size: 480x640 \ No newline at end of file