public function testImportUsers()
 {
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::LINK_TEXT, 'Courses')->click();
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::LINK_TEXT, 'APSC 201')->click();
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::LINK_TEXT, 'Import Students')->click();
     $file = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::ID, 'UserFile');
     $file->sendKeys(dirname(__FILE__) . '/files/newClass_APSC201.csv');
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'input[type="submit"]')->click();
     $w = new PHPWebDriver_WebDriverWait($this->session);
     $w->until(function ($session) {
         $h3 = $session->elementWithWait(PHPWebDriver_WebDriverBy::TAG_NAME, 'h3');
         return $h3->text() == 'User(s) created successfully:';
     });
     $this->checkSummary();
     // check class list - should have 17 students
     $this->session->open($this->url . 'users/goToClassList/2');
     $classSize = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'div[class="dataTables_info"]')->text();
     $this->assertEqual($classSize, 'Showing 1 to 10 of 17 entries');
     $search = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'input[aria-controls="table_id"]');
     $search->sendKeys('New');
     $w->until(function ($session) {
         $count = count($session->elementsWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'tr[class="odd"]'));
         return $count == 1;
     });
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'td[class="  sorting_1"]')->click();
     $newStudent = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::LINK_TEXT, 'View')->attribute('href');
     $userId = end(explode('/', $newStudent));
     $this->updateClassList();
     $this->session->open($this->url . 'users/delete/' . $userId);
     $w->until(function ($session) {
         return count($session->elementsWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, "div[class='message good-message green']"));
     });
     $msg = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, "div[class='message good-message green']")->text();
     $this->assertEqual($msg, 'Record is successfully deleted!');
 }
 public function testAddOauthClientOtherUser()
 {
     $this->session->open($this->url . 'oauthclients/add');
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'select[id="OauthClientUserId"] option[value="4"]')->click();
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'input[value="Submit"]')->click();
     $msg = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, "div[class='message good-message green']")->text();
     $this->assertEqual($msg, 'A new OAuth client has been created');
     $this->waitForLogoutLogin('instructor3');
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::LINK_TEXT, 'Instructor 3')->click();
     // instructors will not be able to see the Oauth section of their profile
     $oauth = $this->session->elements(PHPWebDriver_WebDriverBy::LINK_TEXT, 'Add Client Credential');
     $this->assertTrue(empty($oauth));
     $this->waitForLogoutLogin('root');
     $this->session->open($this->url . 'oauthclients');
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'input[aria-controls="table_id"]')->sendKeys('instructor3');
     $w = new PHPWebDriver_WebDriverWait($this->session);
     $w->until(function ($session) {
         $count = count($session->elementsWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'tr[class="odd"]'));
         return $count == 1;
     });
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'td[class="  sorting_1"]')->click();
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::LINK_TEXT, 'Delete')->click();
     $msg = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, "div[class='message good-message green']")->text();
     $this->assertEqual($msg, 'OAuth client deleted');
 }
Exemple #3
0
 function wait_until_loaded()
 {
     $w = new \PHPWebDriver_WebDriverWait(self::$session, $GLOBALS['timeouts']['seconds'], 0.5, array("locator" => $this->locators['upload']));
     $w->until(function ($session, $extra_arguments) {
         return call_user_func_array(array($session, "element"), $extra_arguments['locator']);
     });
     return $this;
 }
Exemple #4
0
 public function wait_for_object($chain, $timeout = 30, $poll_frequency = 0.5)
 {
     $w = new PHPWebDriver_WebDriverWait($this->session, $timeout, $poll_frequency, array("movie" => $this->movie, "chain" => $chain));
     $e = $w->until(function ($session, $extra_arguments) {
         $fp = new PHPWebDriver_WebDriver_Support_FlashFlex_FlexPilot($session, $extra_arguments["movie"]);
         return $fp->is_flex_object($extra_arguments["chain"]);
     });
 }
Exemple #5
0
 function create_fashion_profile()
 {
     self::$session->click($this->locators["create new profile"]);
     $w = new PHPWebDriver_WebDriverWait(self::$session);
     $w->until(function ($driver) {
         $driver->find_element_by_locator("id=overlayPanelProfileovolp-pad");
     });
 }
Exemple #6
0
 function wait_until_loaded()
 {
     $w = new \PHPWebDriver_WebDriverWait($this->session, 30, 0.5, array("locator" => $this->locators['fork me ribbon']));
     $w->until(function ($session, $extra_arguments) {
         list($type, $string) = $extra_arguments['locator'];
         return $session->element($type, $string);
     });
     return $this;
 }
 /**
  * @group android
  * @group click
  */
 public function testAndroidClick()
 {
     $this->session = self::$driver->session("android");
     $this->session->open("http://www.illicitonion.com/selenium-web/clicks.html");
     $e = $this->session->element("id", "normal");
     $this->session->touch()->click(array('element' => $e->getID()));
     $w = new \PHPWebDriver_WebDriverWait($this->session, 5);
     $e = $w->until(function ($session) {
         return $session->element("css selector", "h1.header");
     });
     assert($e->text() == "XHTML Might Be The Future");
 }
 public function elementsWithWait($using, $value)
 {
     $selector = array('selector' => $using, 'value' => $value);
     $w = new PHPWebDriver_WebDriverWait($this, 30, 0.5, $selector);
     try {
         $w->until(function ($session, $selector) {
             return count($session->elements($selector['selector'], $selector['value']));
         });
     } catch (Exception $e) {
         throw new Exception('Failed to wait for element ' . $value . ' using ' . $using . '.', 0, $e);
     }
     return $this->elements($using, $value);
 }
Exemple #9
0
 function open_session($session_name)
 {
     $needles = array(' ', '!');
     $session_name = str_replace($needles, "_", $session_name);
     $session_name = strtolower($session_name);
     list($type, $string) = $this->locators["session"];
     $string = str_replace('REPLACE', $session_name, $string);
     $e = $this->session->element($type, $string);
     $e->click();
     $w = new \PHPWebDriver_WebDriverWait($this->session, 30, 0.5, array("locator" => $this->locators['fancy iframe']));
     $iframe = $w->until(function ($session, $extra_arguments) {
         list($type, $string) = $extra_arguments['locator'];
         return $session->element($type, $string);
     });
     $this->session->switch_to_frame($iframe);
 }
Exemple #10
0
 /**
  * @group sauce
  * @group android40
  */
 public function testAndroid40()
 {
     $caps = array();
     $caps["platform"] = 'LINUX';
     $caps["version"] = '4.0';
     $this->session = self::$driver->session("android", $caps);
     $this->session->open("https://saucelabs.com/login");
     $e = $this->session->element("id", "username");
     $e->sendKeys("gobblygook");
     $e = $this->session->element("id", "password");
     $e->sendKeys("nonsense");
     $e = $this->session->element("id", "submit");
     $e->click();
     $w = new \PHPWebDriver_WebDriverWait($this->session);
     $e = $w->until(function ($session) {
         return $session->element("css selector", "error");
     });
     $this->assertEquals($e->text, "Incorrect username or password.");
 }
Exemple #11
0
 function login_as($username, $password, $success = true)
 {
     $this->username = $username;
     $this->password = $password;
     list($type, $string) = $this->locators['submit button'];
     $e = $this->session->element($type, $string);
     $e->click();
     if ($success) {
         $p = new \DashboardPage($this->session);
         $p->wait_until_loaded();
         return $p;
     } else {
         $w = new \PHPWebDriver_WebDriverWait($this->session, 30, 0.5, array("locator" => $this->locators['errors']));
         $w->until(function ($session, $extra_arguments) {
             list($type, $string) = $extra_arguments['locator'];
             $e = $session->element($type, $string);
             return $e->displayed();
         });
         return $this;
     }
 }
 /**
  * @group upload
  */
 public function test_file_exists_full_path()
 {
     self::$session->open("http://picpaste.com/");
     $my_file = dirname(__FILE__) . '/english_muffin.jpg';
     $e = call_user_func_array(array(self::$session, "element"), $this->locators['upload']);
     $e->sendKeys($my_file);
     $st = call_user_func_array(array(self::$session, "element"), $this->locators['storetime']);
     $s = new PHPWebDriver_Support_WebDriverSelect($st);
     $s->select_by_visible_text('30 Minutes');
     $of = call_user_func_array(array(self::$session, "element"), $this->locators['obscure_filename']);
     $s = new PHPWebDriver_Support_WebDriverSelect($of);
     $s->select_by_visible_text('basic');
     $ar = call_user_func_array(array(self::$session, "element"), $this->locators['accept_rules']);
     $s = new PHPWebDriver_Support_WebDriverSelect($ar);
     $s->select_by_visible_text('Yes');
     $b = call_user_func_array(array(self::$session, "element"), $this->locators['button']);
     $b->click();
     $w = new \PHPWebDriver_WebDriverWait(self::$session, 15, 0.5, array("locator" => $this->locators['image']));
     $w->until(function ($session, $extra_arguments) {
         return call_user_func_array(array($session, "element"), $extra_arguments['locator']);
     });
 }
Exemple #13
0
 function wait_for_element_available($locator, $timeout = null)
 {
     if (!$timeout) {
         $timeout = $GLOBALS['timeouts']['seconds'];
     }
     $w = new \PHPWebDriver_WebDriverWait(self::$session, $timeout);
     $before = time();
     $w->until(create_function('$session', sprintf('$got = $session->find_elements_by_locator("%s");
             if (count($got) > 0) {
               return $got;
             } else {
               return false;
             }', addslashes($locator))));
     $remaining = $before + $timeout - time();
     if ($remaining > 0) {
         $w->until(create_function('$session', sprintf('$got = $session->find_element_by_locator("%s");
             if ($got->displayed()) {
               return $got; 
             } else {
               return false;
             }', addslashes($locator))));
     }
 }
 public function testEditReorderSelfEvaluation()
 {
     // test first peer evaluation question going up
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'a[onclick="upQ(0, 0); return false;"]')->click();
     $num = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::ID, 'questionIndex0')->text();
     $this->assertEqual($num, '1.');
     // test last peer evaluation question going down
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'a[onclick="downQ(1, 0); return false;"]')->click();
     $num = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::ID, 'questionIndex1')->text();
     $this->assertEqual($num, '2.');
     // test first self-evaluation question going up
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'a[onclick="upQ(2, 1); return false;"]')->click();
     $num = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::ID, 'questionIndex2')->text();
     $this->assertEqual($num, '1.');
     // test last self-evaluation question going down
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'a[onclick="downQ(4, 1); return false;"]')->click();
     $num = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::ID, 'questionIndex4')->text();
     $this->assertEqual($num, '3.');
     // test moving questions around
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'a[onclick="downQ(0, 0); return false;"]')->click();
     $w = new PHPWebDriver_WebDriverWait($this->session);
     $w->until(function ($session) {
         $quesNum = $session->elementWithWait(PHPWebDriver_WebDriverBy::ID, 'questionIndex0')->text();
         return $quesNum == '2.';
     });
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'a[onclick="downQ(2, 1); return false;"]')->click();
     $w->until(function ($session) {
         $quesNum = $session->elementWithWait(PHPWebDriver_WebDriverBy::ID, 'questionIndex2')->text();
         return $quesNum == '2.';
     });
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'a[onclick="upQ(4, 1); return false;"]')->click();
     $w->until(function ($session) {
         $quesNum = $session->elementWithWait(PHPWebDriver_WebDriverBy::ID, 'questionIndex4')->text();
         return $quesNum == '2.';
     });
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'button[type="submit"]')->click();
     $w->until(function ($session) {
         return count($session->elementsWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, "div[class='message good-message green']"));
     });
     $this->session->open($this->mixeval);
     $peer1 = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::ID, 'q_1_1');
     $this->assertEqual($peer1->text(), "1. Peer required\n*");
     $peer2 = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::ID, 'q_1_2');
     $this->assertEqual($peer2->text(), "2. Peer optional");
     $self1 = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::ID, 'q_1_3');
     $this->assertEqual($self1->text(), "1. Self 2\n*");
     $self2 = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::ID, 'q_1_4');
     $this->assertEqual($self2->text(), "2. Self 3\n*");
     $self3 = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::ID, 'q_1_5');
     $this->assertEqual($self3->text(), "3. Self 1\n*");
     // delete mixeval
     $this->session->open(str_replace('view', 'delete', $this->mixeval));
     $msg = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, "div[class='message good-message green']")->text();
     $this->assertEqual($msg, 'The Mixed Evaluation was removed successfully.');
 }
 public function testDeleteRubric()
 {
     $this->session->open($this->url . 'rubrics/delete/' . $this->rubricId);
     $w = new PHPWebDriver_WebDriverWait($this->session);
     $w->until(function ($session) {
         return count($session->elementsWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, "div[class='message good-message green']"));
     });
     $msg = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, "div[class='message good-message green']")->text();
     $this->assertEqual($msg, 'The rubric was deleted successfully.');
 }
 public function assignToGroup()
 {
     $this->session->open($this->url . 'groups/edit/1');
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'select[id="all_groups"] option[value="35"]')->click();
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'input[value="Assign >>"]')->click();
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'input[value="Edit Group"]')->click();
     $w = new PHPWebDriver_WebDriverWait($this->session);
     $w->until(function ($session) {
         return count($session->elementsWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, "div[class='message good-message green']"));
     });
 }
 public function testEnrollingEnrolledTutor()
 {
     $this->session->open($this->url . 'users/add/1');
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::ID, 'UserUsername')->sendKeys('tutor1');
     $w = new PHPWebDriver_WebDriverWait($this->session);
     $w->until(function ($session) {
         return $session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'div[id="usernameErr"]')->text();
     });
     $warning = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'div[id="usernameErr"]')->text();
     $this->assertEqual(substr($warning, 0, 33), 'Username "tutor1" already exists.');
     // click here to enrol
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::LINK_TEXT, 'here')->click();
     // wait for the tutor to be enrolled
     $w->until(function ($session) {
         return count($session->elementsWithWait(PHPWebDriver_WebDriverBy::ID, "flashMessage"));
     });
     $msg = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::ID, "flashMessage")->text();
     $this->assertEqual($msg, 'Error: The student is already enrolled.');
 }
 public function thirdStudent()
 {
     $this->waitForLogoutLogin('redshirt0003');
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::LINK_TEXT, 'Survey')->click();
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::ID, 'SurveyInput0ResponseId10')->click();
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::ID, 'SurveyInputResponseId11')->click();
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::ID, 'SurveyInputResponseId12')->click();
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::ID, 'SurveyInput3ResponseText')->sendKeys('long long long');
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'input[value="Submit"]')->click();
     $w = new PHPWebDriver_WebDriverWait($this->session);
     $w->until(function ($session) {
         return count($session->elementsWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, "div[class='message good-message green']"));
     });
     $msg = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, "div[class='message good-message green']")->text();
     $this->assertEqual($msg, 'Your survey was submitted successfully!');
 }
 public function deleteQues()
 {
     $delete = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::LINK_TEXT, 'Delete')->click();
     $this->session->accept_alert();
     $w = new PHPWebDriver_WebDriverWait($this->session);
     $w->until(function ($session) {
         return count($session->elementsWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, "div[class='message good-message green']"));
     });
     $msg = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, "div[class='message good-message green']")->text();
     $this->assertEqual($msg, 'The question was removed successfully.');
 }
 public function testAccessibleRoles()
 {
     $primary = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::ID, 'UserPrimarySearchValue');
     $primary->clear();
     $primary->sendKeys('root');
     $return = new PHPWebDriver_WebDriverKeys('ReturnKey');
     $primary->sendKeys($return->key);
     // wait for primary account search results
     // will not find root (super admin) because it is not an accessible role for admins
     $w = new PHPWebDriver_WebDriverWait($this->session);
     $w->until(function ($session) {
         $option = $session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'select[id="UserPrimaryAccount"] option');
         return $option->text() == '-- No users found --';
     });
     $prmy = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::ID, 'UserPrimaryAccount');
     $this->assertTrue($prmy->attribute('disabled'));
 }
 public function testDeleteGroups()
 {
     $w = new PHPWebDriver_WebDriverWait($this->session);
     // delete the 6 groups
     for ($i = 0; $i < 6; $i++) {
         $this->session->elementWithWait(PHPWebDriver_WebDriverBy::PARTIAL_LINK_TEXT, 'Great Group Team #')->click();
         $this->session->open(str_replace('view', 'delete', $this->session->url()));
         $w->until(function ($session) {
             return count($session->elementsWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, "div[class='message good-message green']"));
         });
         $msg = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, "div[class='message good-message green']")->text();
         $this->assertEqual($msg, 'The group was deleted successfully.');
     }
     // delete the survey group set
     $this->session->open($this->url . 'surveygroups/delete/' . $this->surveyGroupId);
     $w->until(function ($session) {
         return count($session->elementsWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, "div[class='message good-message green']"));
     });
     $msg = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, "div[class='message good-message green']")->text();
     $this->assertEqual($msg, 'The group set was deleted successfully.');
 }
 public function updatePermissions()
 {
     $this->session->accept_alert();
     $w = new PHPWebDriver_WebDriverWait($this->session);
     $w->until(function ($session) {
         return count($session->elementsWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, "div[class='message good-message green']"));
     });
     $msg = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, "div[class='message good-message green']")->text();
     $this->assertEqual($msg, 'Permissions have been updated');
 }
 public function moveStudent($userId)
 {
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'select[id="CourseSourceCourses"] option[value="1"]')->click();
     $w = new PHPWebDriver_WebDriverWait($this->session);
     $w->until(function ($session) {
         return count($session->elementsWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'select[id="CourseSourceSurveys"] option')) - 1;
     });
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'select[id="CourseSourceSurveys"] option[value="4"]')->click();
     $w->until(function ($session) {
         return count($session->elementsWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'select[id="CourseSubmitters"] option')) - 1;
     });
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'select[id="CourseSubmitters"] option[value="' . $userId . '"]')->click();
     $w->until(function ($session) {
         return count($session->elementsWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'select[id="CourseDestCourses"] option')) - 1;
     });
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'select[id="CourseDestCourses"] option[value="' . $this->courseId . '"]')->click();
     $w->until(function ($session) {
         return count($session->elementsWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'select[id="CourseDestSurveys"] option')) - 1;
     });
     $surveys = $this->session->elementsWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'select[id="CourseDestSurveys"] option');
     $surveys[1]->click();
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::ID, 'submit')->click();
 }
 public function testImportWithStudentNo()
 {
     $this->session->open($this->url . 'groups/import/1');
     $file = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::ID, 'GroupFile');
     // students identified with student numbers
     $file->sendKeys(dirname(__FILE__) . '/files/groupsStudentNo.csv');
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::ID, 'GroupIdentifiersStudentNo')->click();
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'input[type="submit"]')->click();
     $w = new PHPWebDriver_WebDriverWait($this->session);
     $w->until(function ($session) {
         return count($session->elementsWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, "div[id='title']"));
     });
     $msg = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, "div[id='title']")->text();
     $this->assertEqual($msg, 'The group CSV file was processed.');
     $group = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::XPATH, '//*[@id="groupsimport"]/table[1]/tbody/tr[2]/td')->text();
     $this->assertEqual($group, 'Best Team');
     $title = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::XPATH, '//*[@id="groupsimport"]/h2[2]')->text();
     $this->assertEqual($title, 'Students Placed');
     $user = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::XPATH, '//*[@id="groupsimport"]/table[2]/tbody/tr[2]/td[1]')->text();
     $this->assertEqual($user, '65498451');
     $user = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::XPATH, '//*[@id="groupsimport"]/table[2]/tbody/tr[3]/td[1]')->text();
     $this->assertEqual($user, '65468188');
     $user = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::XPATH, '//*[@id="groupsimport"]/table[2]/tbody/tr[4]/td[1]')->text();
     $this->assertEqual($user, '98985481');
     $user = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::XPATH, '//*[@id="groupsimport"]/table[2]/tbody/tr[5]/td[1]')->text();
     $this->assertEqual($user, '84188465');
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, 'input[value="OK"]')->click();
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::LINK_TEXT, 'Best Team (4 members)')->click();
     $this->session->open(str_replace('view', 'delete', $this->session->url()));
     $w->until(function ($session) {
         return count($session->elementsWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, "div[class='message good-message green']"));
     });
     $msg = $this->session->elementWithWait(PHPWebDriver_WebDriverBy::CSS_SELECTOR, "div[class='message good-message green']")->text();
     $this->assertEqual($msg, 'The group was deleted successfully.');
 }
Exemple #25
0
 public function logoutLogin($username)
 {
     $this->session->elementWithWait(PHPWebDriver_WebDriverBy::LINK_TEXT, 'Logout')->click();
     $w = new PHPWebDriver_WebDriverWait($this->session);
     $session = $this->session;
     $w->until(function ($session) {
         $title = $session->title();
         return $title == 'iPeer - Guard';
     });
     $login = PageFactory::initElements($this->session, 'Login');
     $home = $login->login($username, 'ipeeripeer');
 }