32
1
mirror of https://github.com/joomla-extensions/weblinks.git synced 2025-02-13 22:50:21 +00:00

Merge pull request #53 from zero-24/robofile_cs

Lets look the robo file better.
This commit is contained in:
javier gomez 2015-05-31 12:18:48 +02:00
commit daabd4ced5

View File

@ -7,22 +7,29 @@
* *
* @see http://robo.li/ * @see http://robo.li/
*/ */
require_once 'vendor/autoload.php';
require_once 'vendor/autoload.php';
class RoboFile extends \Robo\Tasks class RoboFile extends \Robo\Tasks
{ {
// Load tasks from composer, see composer.json
// load tasks from composer, see composer.json
use \joomla_projects\robo\loadTasks; use \joomla_projects\robo\loadTasks;
private $extension = ''; private $extension = '';
public function setExecExtension(){ /**
if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') { * Set the Executeextension
*
* @return void
*/
public function setExecExtension()
{
if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN')
{
$this->extension = '.exe'; $this->extension = '.exe';
} }
} }
/** /**
* Executes Selenium System Tests in your machine * Executes Selenium System Tests in your machine
* *
@ -32,23 +39,29 @@ class RoboFile extends \Robo\Tasks
*/ */
public function testAcceptance($seleniumPath = null) public function testAcceptance($seleniumPath = null)
{ {
$this->setExecExtension(); $this->setExecExtension();
// Get Joomla Clean Testing sites // Get Joomla Clean Testing sites
if (is_dir('tests/joomla-cms3')) { if (is_dir('tests/joomla-cms3'))
{
$this->taskDeleteDir('tests/joomla-cms3')->run(); $this->taskDeleteDir('tests/joomla-cms3')->run();
} }
$this->_exec('git' . $this->extension . ' clone -b staging --single-branch --depth 1 https://github.com/joomla/joomla-cms.git tests/joomla-cms3'); $this->_exec('git' . $this->extension . ' clone -b staging --single-branch --depth 1 https://github.com/joomla/joomla-cms.git tests/joomla-cms3');
$this->say('Joomla CMS site created at tests/joomla-cms3'); $this->say('Joomla CMS site created at tests/joomla-cms3');
if (!$seleniumPath) { if (!$seleniumPath)
if (!file_exists('selenium-server-standalone.jar')) { {
if (!file_exists('selenium-server-standalone.jar'))
{
$this->say('Downloading Selenium Server, this may take a while.'); $this->say('Downloading Selenium Server, this may take a while.');
if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') {
if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN')
{
$this->_exec('curl.exe -sS http://selenium-release.storage.googleapis.com/2.45/selenium-server-standalone-2.45.0.jar > selenium-server-standalone.jar'); $this->_exec('curl.exe -sS http://selenium-release.storage.googleapis.com/2.45/selenium-server-standalone-2.45.0.jar > selenium-server-standalone.jar');
}else{ }
else
{
$this->taskExec('wget') $this->taskExec('wget')
->arg('http://selenium-release.storage.googleapis.com/2.45/selenium-server-standalone-2.45.0.jar') ->arg('http://selenium-release.storage.googleapis.com/2.45/selenium-server-standalone-2.45.0.jar')
->arg('-O selenium-server-standalone.jar') ->arg('-O selenium-server-standalone.jar')
@ -56,32 +69,41 @@ class RoboFile extends \Robo\Tasks
->run(); ->run();
} }
} }
$seleniumPath = 'selenium-server-standalone.jar'; $seleniumPath = 'selenium-server-standalone.jar';
} }
if (strtoupper(substr(PHP_OS, 0, 3)) !== 'WIN') {
if (strtoupper(substr(PHP_OS, 0, 3)) !== 'WIN')
{
$seleniumPath = "java -jar $seleniumPath >> selenium.log 2>&1 &"; $seleniumPath = "java -jar $seleniumPath >> selenium.log 2>&1 &";
}else{ }
else
{
$seleniumPath = "START java.exe -jar .\\" . $seleniumPath; $seleniumPath = "START java.exe -jar .\\" . $seleniumPath;
} }
// Make sure we have Composer // Make sure we have Composer
if (!file_exists('./composer.phar')) { if (!file_exists('./composer.phar'))
{
$this->_exec('curl' . $this->extension . ' -sS https://getcomposer.org/installer | php'); $this->_exec('curl' . $this->extension . ' -sS https://getcomposer.org/installer | php');
} }
$this->taskComposerUpdate()->run(); $this->taskComposerUpdate()->run();
// Running Selenium server // Running Selenium server
$this->_exec($seleniumPath); $this->_exec($seleniumPath);
if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') { if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN')
{
sleep(10); sleep(10);
}else{ }
else
{
$this->taskWaitForSeleniumStandaloneServer() $this->taskWaitForSeleniumStandaloneServer()
->run() ->run()
->stopOnFail(); ->stopOnFail();
} }
// Loading Symfony Command and running with passed argument // Loading Symfony Command and running with passed argument
$this->_exec('php' . $this->extension . ' vendor/bin/codecept build'); $this->_exec('php' . $this->extension . ' vendor/bin/codecept build');