/** * This function converts the information given in a config file to a number of test sets. */ private function initTestSets() { $testCases = $this->config->getTestCases(); foreach ($testCases as $testCaseConfigName => $testCaseConfig) { $sessionNames = $testCaseConfig->getSessionNames(); foreach ($sessionNames as $sessionName) { if (!$this->config->hasSession($sessionName)) { throw new ConfigurationException('Unknown session ("' . $sessionName . '") referred by "' . $testCaseConfigName . '" testcase. Please check your configuration.'); } $session = $this->config->getSession($sessionName); foreach ($session->getPageRequests() as $aPageRequest) { if (!array_key_exists($sessionName, $this->testSets) || !array_key_exists($aPageRequest->getIdentifier(), $this->testSets[$sessionName])) { $this->testSets[$sessionName][$aPageRequest->getIdentifier()] = new TestSet($aPageRequest); $this->uriCount++; } $test = new Test($testCaseConfigName, $testCaseConfig->getClassName(), $testCaseConfig->getParameters(), $testCaseConfig->isFailOnError()); $this->testSets[$sessionName][$aPageRequest->getIdentifier()]->addTest($test); } } } }