public function setUp() { parent::setUp(); $td = TestData::getData('userTestData'); //creating sample contest $cd = TestData::genContestDecription(); $this->contestID = $this->apiCreateContest(array('contest' => $cd))->createdContestID; //store columns info $this->userDataColumns = unserialize(serialize($cd->data)); //creating sample contest admin $this->apiRegisterUser(array('user' => createUser($td['ContestAdmin'][0], $td['ContestAdmin'][1], 'ContestAdmin', TestData::genStrArray(sizeof($this->userDataColumns), TestData::MAX_DATA_LENGTH)))); //create sample user with type Participant $this->apiRegisterUser(array('user' => createUser($td['Participant'][0], $td['Participant'][1], 'Participant', TestData::genStrArray(sizeof($this->userDataColumns), TestData::MAX_DATA_LENGTH)))); //create contest admin connect $ca_req = new ConnectToContestRequest(); $ca_req->login = $td['ContestAdmin'][0]; $ca_req->password = $td['ContestAdmin'][1]; $ca_req->contestID = $this->contestID; $this->caConnect = RequestSender::send($ca_req); //create participant connect $p_req = new ConnectToContestRequest(); $p_req->login = $td['Participant'][0]; $p_req->password = $td['Participant'][1]; $p_req->contestID = $this->contestID; $this->pConnect = RequestSender::send($p_req); }
public function testStartBeforeContestStarted() { $this->apiAdjustContest(array('start' => time() + 3600, 'finish' => time() + 7200)); $td = TestData::getData('userTestData'); $req = new ConnectToContestRequest(); $req->login = $td['Participant'][0]; $req->password = $td['Participant'][1]; $req->contestID = $this->contestID; $res = RequestSender::send($req); //participant can't connect to not yet started contest $this->assertEquals(createFailRes(19), $res); $req->login = $td['ContestAdmin'][0]; $req->password = $td['ContestAdmin'][1]; $res = RequestSender::send($req); $req->contestID = $this->contestID; //while contest admin can $this->assertNotEquals($res->sessionID, ''); $this->assertNotEquals($res->sessionID, null); $this->assertEquals($res->user->login, $td['ContestAdmin'][0]); $this->assertEquals($res->user->userType, 'ContestAdmin'); }
public function badFilenameProvider() { return TestData::getData('createPluginFilename'); }
public static function genContestDecription($isSelfStart = false) { $cd = new ContestDescription(); //create contest descr $cd->name = TestData::genUnicodeStr(TestData::MAX_DATA_LENGTH); $cd->description = TestData::genUnicodeStr(TestData::MAX_DATA_LENGTH); $int = time() / TestData::TIME_SCALE; $cd->start = time() + rand(-$int, $int); $cd->finish = $cd->start + rand(1, $int); $cd->registrationType = TestData::getRandomValue(TestData::getData('registrationType')); $ct = new ContestTiming(); $ct->contestEndingStart = rand(1, ($cd->finish - $cd->start) / 60); $ct->contestEndingFinish = rand(1, $int); $ct->maxContestDuration = rand(1, $isSelfStart ? $cd->finish - $cd->start : $int); $ct->selfContestStart = $isSelfStart; $cd->contestTiming = $ct; $udfs = array(); for ($j = 0; $j < rand(1, TestData::MAX_USER_DATA_FIELDS); $j++) { $udf = new UserDataField(); $udf->compulsory = rand(0, 1) ? true : false; $udf->data = TestData::genUnicodeStr(TestData::MAX_DATA_LENGTH); $udf->showInResult = rand(0, 1) ? true : false; $udfs[] = $udf; } $cd->data = $udfs; $ar = TestData::getData('accessPermission'); $rap = new ResultsAccessPolicy(); $rap->afterContestPermission = TestData::getRandomValue($ar); $rap->contestEndingPermission = TestData::getRandomValue($ar); $rap->contestPermission = TestData::getRandomValue($ar); $cd->resultsAccessPolicy = $rap; return $cd; }
public function registrationTypeDataProvider() { return TestData::getData('registrationTypeData'); }
public function disconnectionDataProvider() { return TestData::getData('disconnectContest'); }
public function userDataProvider() { $res = TestData::getData('regToContest'); //TODO: add bad data generator for super-long passwords and logins return $res; }
public function badLoginPassProvider() { return TestData::getData('badLoginPass'); }