/**
  * Tests that 2 contests with same name cannot be created
  *
  * @expectedException DuplicatedEntryInDatabaseException
  */
 public function testCreate2ContestsWithSameAlias()
 {
     // Create a valid contest Request object
     $contestData = ContestsFactory::getRequest();
     $r = $contestData['request'];
     $contestDirector = $contestData['director'];
     // Log in the user and set the auth token in the new request
     $r['auth_token'] = $this->login($contestDirector);
     // Call the API
     $response = ContestController::apiCreate($r);
     $this->assertEquals('ok', $response['status']);
     // Call the API for the 2nd time with same alias
     $response = ContestController::apiCreate($r);
 }
Esempio n. 2
0
 public static function createContest($title = null, $public = 1, Users $contestDirector = null, $languages = null, $finish_time = null)
 {
     // Create a valid contest Request object
     $contestData = ContestsFactory::getRequest($title, 0, $contestDirector, $languages, $finish_time);
     $r = $contestData['request'];
     $contestDirector = $contestData['director'];
     // Log in the user and set the auth token in the new request
     $r['auth_token'] = OmegaupTestCase::login($contestDirector);
     // Call the API
     $response = ContestController::apiCreate($r);
     if ($public === 1) {
         self::forcePublic($contestData);
         $r['public'] = 1;
     }
     $contest = ContestsDAO::getByAlias($r['alias']);
     return array('director' => $contestData['director'], 'request' => $r, 'contest' => $contest);
 }
Esempio n. 3
0
 public static function createContest($title = null, $public = 1, Users $contestDirector = null, $languages = null)
 {
     // Create a valid contest Request object
     $contestData = ContestsFactory::getRequest($title, 0, $contestDirector, $languages);
     $r = $contestData["request"];
     $contestDirector = $contestData["director"];
     // Log in the user and set the auth token in the new request
     $r["auth_token"] = OmegaupTestCase::login($contestDirector);
     // Call the API
     $response = ContestController::apiCreate($r);
     if ($public === 1) {
         self::forcePublic($contestData);
         $r["public"] = 1;
     }
     $contest = ContestsDAO::getByAlias($r["alias"]);
     return array("director" => $contestData["director"], "request" => $r, "contest" => $contest);
 }
 public function testCreateContest()
 {
     $contestData = ContestsFactory::getRequest();
     // Login
     $director = $this->createUserAndLogin();
     // Open contest create
     $this->open('/contestcreate.php');
     // Use preioi template
     $this->click('//*[@id="preioi"]');
     $this->type('name=title', $contestData['request']['title']);
     $this->type('name=alias', $contestData['request']['alias']);
     $this->type('name=description', $contestData['request']['description']);
     // Submit
     $this->click("//input[@value='Agendar concurso']");
     sleep(1);
     $this->assertElementContainsText('//*[@id="content"]/div[2]/div', 'Tu concurso ha sido creado!');
 }