protected function getOptionsForSelfReferentialCommand()
 {
     $options = parent::getOptionsForSelfReferentialCommand();
     $options['piwik-tests-plugins'] = '..';
     // make sure --piwik-tests-plugins is used correctly when executed in travis-ci
     return $options;
 }
 protected function configureView()
 {
     parent::configureView();
     $this->view->setGenerationMode('plugin');
     $this->view->setPlugin($this->targetPlugin);
     $this->view->setPathToCustomTravisStepsFiles($this->getRepoRootDir() . "/tests/travis");
     $this->view->setLatestStableVersion($this->getLatestStableVersion());
     $testsToRun = array();
     $testsToExclude = array();
     if ($this->isTargetPluginContainsPluginTests()) {
         $testsToRun[] = array('name' => 'PluginTests', 'vars' => "MYSQL_ADAPTER=PDO_MYSQL TEST_AGAINST_PIWIK_BRANCH=\$PIWIK_TEST_TARGET");
         $testsToRun[] = array('name' => 'PluginTests', 'vars' => "MYSQL_ADAPTER=PDO_MYSQL TEST_AGAINST_CORE=minimum_required_piwik");
         $testsToExclude[] = array('description' => 'execute latest stable tests only w/ PHP 5.5', 'php' => $this->minimumPhpVersion, 'env' => 'TEST_SUITE=PluginTests MYSQL_ADAPTER=PDO_MYSQL TEST_AGAINST_CORE=minimum_required_piwik');
     }
     if ($this->isTargetPluginContainsUITests()) {
         $testsToRun[] = array('name' => 'UITests', 'vars' => "MYSQL_ADAPTER=PDO_MYSQL TEST_AGAINST_PIWIK_BRANCH=\$PIWIK_TEST_TARGET");
         $testsToExclude[] = array('description' => 'execute UI tests only w/ PHP 5.6', 'php' => $this->minimumPhpVersion, 'env' => "TEST_SUITE=UITests MYSQL_ADAPTER=PDO_MYSQL TEST_AGAINST_PIWIK_BRANCH=\$PIWIK_TEST_TARGET");
     }
     if (empty($testsToRun)) {
         throw new Exception("No tests to run for this plugin, aborting .travis.yml generation.");
     }
     $this->view->setTestsToRun($testsToRun);
     $this->view->setTestsToExclude($testsToExclude);
 }
 protected function configureView()
 {
     parent::configureView();
     $this->view->setGenerationMode('core');
 }