public static function setUpBeforeClass() { parent::setUpBeforeClass(); if (version_compare(PHP_VERSION, '5.3.19', '<')) { self::markTestSkipped('UI test case requires at least PHP 5.3.19.'); } else { if (!class_exists('\\RemoteWebDriver')) { self::markTestSkipped('Could not find RemoteWebDriver class. ' . 'Run "php ../composer.phar install" from the tests folder.'); } } self::$config = phpbb_test_case_helpers::get_test_config(); self::$root_url = self::$config['phpbb_functional_url']; // Important: this is used both for installation and by // test cases for querying the tables. // Therefore table prefix must be set before a board is // installed, and also before each test case is run. self::$config['table_prefix'] = 'phpbb_'; if (!isset(self::$config['phpbb_functional_url'])) { self::markTestSkipped('phpbb_functional_url was not set in test_config and wasn\'t set as PHPBB_FUNCTIONAL_URL environment variable either.'); } if (!self::$webDriver) { try { $capabilities = array(\WebDriverCapabilityType::BROWSER_NAME => 'firefox'); self::$webDriver = RemoteWebDriver::create(self::$host . ':' . self::$port, $capabilities); } catch (WebDriverCurlException $e) { self::markTestSkipped('PhantomJS webserver is not running.'); } } if (!self::$already_installed) { self::install_board(); self::$already_installed = true; } }
public function get_database_config() { $config = phpbb_test_case_helpers::get_test_config(); if (!isset($config['dbms'])) { $this->markTestSkipped('Missing test_config.php: See first error.'); } return $config; }
public static function setUpBeforeClass() { parent::setUpBeforeClass(); self::$config = phpbb_test_case_helpers::get_test_config(); self::$root_url = self::$config['phpbb_functional_url']; if (!isset(self::$config['phpbb_functional_url'])) { self::markTestSkipped('phpbb_functional_url was not set in test_config and wasn\'t set as PHPBB_FUNCTIONAL_URL environment variable either.'); } if (!self::$already_installed) { self::install_board(); self::$already_installed = true; } }
public static function setUpBeforeClass() { if (!extension_loaded('redis')) { self::markTestSkipped('redis extension is not loaded'); } $config = phpbb_test_case_helpers::get_test_config(); if (isset($config['redis_host']) || isset($config['redis_port'])) { $host = isset($config['redis_host']) ? $config['redis_host'] : 'localhost'; $port = isset($config['redis_port']) ? $config['redis_port'] : 6379; self::$config = array('host' => $host, 'port' => $port); } else { self::markTestSkipped('Test redis host/port is not specified'); } }
public static function setUpBeforeClass() { parent::setUpBeforeClass(); self::$config = phpbb_test_case_helpers::get_test_config(); self::$root_url = self::$config['phpbb_functional_url']; // Important: this is used both for installation and by // test cases for querying the tables. // Therefore table prefix must be set before a board is // installed, and also before each test case is run. self::$config['table_prefix'] = 'phpbb_'; if (!isset(self::$config['phpbb_functional_url'])) { self::markTestSkipped('phpbb_functional_url was not set in test_config and wasn\'t set as PHPBB_FUNCTIONAL_URL environment variable either.'); } if (!self::$already_installed) { self::install_board(); self::$already_installed = true; } }
protected function install_board() { global $phpbb_root_path, $phpEx; self::$config = phpbb_test_case_helpers::get_test_config(); if (!isset(self::$config['phpbb_functional_url'])) { return; } self::$config['table_prefix'] = 'phpbb_'; $this->recreate_database(self::$config); if (file_exists($phpbb_root_path . "config.$phpEx")) { if (!file_exists($phpbb_root_path . "config_dev.$phpEx")) { rename($phpbb_root_path . "config.$phpEx", $phpbb_root_path . "config_dev.$phpEx"); } else { unlink($phpbb_root_path . "config.$phpEx"); } } // begin data $data = array(); $data = array_merge($data, self::$config); $data = array_merge($data, array( 'default_lang' => 'en', 'admin_name' => 'admin', 'admin_pass1' => 'admin', 'admin_pass2' => 'admin', 'board_email' => '*****@*****.**', )); $parseURL = parse_url(self::$config['phpbb_functional_url']); $data = array_merge($data, array( 'email_enable' => false, 'smtp_delivery' => false, 'smtp_host' => '', 'smtp_auth' => '', 'smtp_user' => '', 'smtp_pass' => '', 'cookie_secure' => false, 'force_server_vars' => false, 'server_protocol' => $parseURL['scheme'] . '://', 'server_name' => 'localhost', 'server_port' => isset($parseURL['port']) ? (int) $parseURL['port'] : 80, 'script_path' => $parseURL['path'], )); // end data $content = $this->do_request('install'); $this->assertContains('Welcome to Installation', $content); $this->do_request('create_table', $data); file_put_contents($phpbb_root_path . "config.$phpEx", phpbb_create_config_file_data($data, self::$config['dbms'], array(), true)); $this->do_request('config_file', $data); copy($phpbb_root_path . "config.$phpEx", $phpbb_root_path . "config_test.$phpEx"); $this->do_request('final', $data); }