Search in sources :

Example 6 with AppUrl

use of teammates.common.util.AppUrl in project teammates by TEAMMATES.

the class InstructorStudentListPageUiTest method testContent.

private void testContent() throws Exception {
    String instructorId;
    ______TS("content: 2 course with students");
    InstructorAttributes instructorWith2Courses = testData.instructors.get("instructorOfCourse2");
    instructorId = instructorWith2Courses.googleId;
    AppUrl viewPageUrl = createUrl(Const.ActionURIs.INSTRUCTOR_STUDENT_LIST_PAGE).withUserId(instructorId);
    viewPage = loginAdminToPage(viewPageUrl, InstructorStudentListPage.class);
    viewPage.checkCourse(0);
    viewPage.checkCourse(1);
    // This is the full HTML verification for Instructor Student List Page, the rest can all be verifyMainHtml
    viewPage.verifyHtml("/instructorStudentListWithHelperView.html");
    // verify copy email functionality
    viewPage.toggleShowEmailCheckbox();
    assertFalse(viewPage.isCopyEmailButtonVisible());
    viewPage.toggleShowEmailCheckbox();
    viewPage.clickCopyEmailButton();
    viewPage.waitForCopyEmailPopoverVisible();
    assertEquals(viewPage.getShownEmailsText(), viewPage.getSelectedText().trim());
    // update current instructor privileges
    BackDoor.deleteInstructor(instructorWith2Courses.courseId, instructorWith2Courses.email);
    instructorWith2Courses.privileges.setDefaultPrivilegesForCoowner();
    BackDoor.createInstructor(instructorWith2Courses);
    viewPage = loginAdminToPage(viewPageUrl, InstructorStudentListPage.class);
    viewPage.checkCourse(0);
    viewPage.checkCourse(1);
    viewPage.verifyHtmlMainContent("/instructorStudentList.html");
    ______TS("content: 1 course with no students");
    instructorId = testData.instructors.get("instructorOfCourse1").googleId;
    viewPageUrl = createUrl(Const.ActionURIs.INSTRUCTOR_STUDENT_LIST_PAGE).withUserId(instructorId);
    viewPage = loginAdminToPage(viewPageUrl, InstructorStudentListPage.class);
    viewPage.checkCourse(0);
    viewPage.verifyHtmlMainContent("/instructorStudentListPageNoStudent.html");
    ______TS("content: no course");
    instructorId = testData.accounts.get("instructorWithoutCourses").googleId;
    viewPageUrl = createUrl(Const.ActionURIs.INSTRUCTOR_STUDENT_LIST_PAGE).withUserId(instructorId);
    viewPage = loginAdminToPage(viewPageUrl, InstructorStudentListPage.class);
    viewPage.verifyHtmlMainContent("/instructorStudentListPageNoCourse.html");
    ______TS("content: data required sanitization");
    instructorId = testData.accounts.get("instructor1OfTestingSanitizationCourse").googleId;
    viewPageUrl = createUrl(Const.ActionURIs.INSTRUCTOR_STUDENT_LIST_PAGE).withUserId(instructorId);
    viewPage = loginAdminToPage(viewPageUrl, InstructorStudentListPage.class);
    viewPage.verifyHtmlMainContent("/instructorStudentListPageTestingSanitization.html");
}
Also used : AppUrl(teammates.common.util.AppUrl) InstructorStudentListPage(teammates.test.pageobjects.InstructorStudentListPage) InstructorAttributes(teammates.common.datatransfer.attributes.InstructorAttributes)

Example 7 with AppUrl

use of teammates.common.util.AppUrl in project teammates by TEAMMATES.

the class InstructorStudentListPageUiTest method testDeleteAction.

private void testDeleteAction() {
    InstructorAttributes instructorWith2Courses = testData.instructors.get("instructorOfCourse2");
    String instructorId = instructorWith2Courses.googleId;
    AppUrl viewPageUrl = createUrl(Const.ActionURIs.INSTRUCTOR_STUDENT_LIST_PAGE).withUserId(instructorId);
    ______TS("action: delete");
    viewPage = loginAdminToPage(viewPageUrl, InstructorStudentListPage.class);
    viewPage.checkCourse(0);
    viewPage.checkCourse(1);
    ThreadHelper.waitFor(500);
    String studentName = testData.students.get("Student2Course2").name;
    String studentEmail = testData.students.get("Student2Course2").email;
    String courseId = testData.courses.get("course2").getId();
    viewPage.clickDeleteAndCancel(courseId, studentName);
    assertNotNull(BackDoor.getStudent(courseId, studentEmail));
    String expectedStatus = "The student has been removed from the course";
    viewPage.clickDeleteAndConfirm(courseId, studentName);
    InstructorCourseDetailsPage courseDetailsPage = viewPage.changePageType(InstructorCourseDetailsPage.class);
    courseDetailsPage.waitForTextsForAllStatusMessagesToUserEquals(expectedStatus);
}
Also used : AppUrl(teammates.common.util.AppUrl) InstructorCourseDetailsPage(teammates.test.pageobjects.InstructorCourseDetailsPage) InstructorStudentListPage(teammates.test.pageobjects.InstructorStudentListPage) InstructorAttributes(teammates.common.datatransfer.attributes.InstructorAttributes)

Example 8 with AppUrl

use of teammates.common.util.AppUrl in project teammates by TEAMMATES.

the class StudentHomePageUiTest method testLinkAndContentAfterDelete.

private void testLinkAndContentAfterDelete() throws Exception {
    AppUrl detailsPageUrl = createUrl(Const.ActionURIs.STUDENT_HOME_PAGE).withUserId(testData.students.get("SHomeUiT.charlie.d@SHomeUiT.CS2104").googleId);
    StudentHomePage studentHomePage = loginAdminToPage(detailsPageUrl, StudentHomePage.class);
    ______TS("access the feedback session exactly after it is deleted");
    BackDoor.deleteFeedbackSession("First Feedback Session", "SHomeUiT.CS2104");
    studentHomePage.clickSubmitFeedbackButton("First Feedback Session");
    studentHomePage.waitForPageToLoad();
    studentHomePage.verifyHtmlMainContent("/studentHomeFeedbackDeletedHTML.html");
}
Also used : AppUrl(teammates.common.util.AppUrl) StudentHomePage(teammates.test.pageobjects.StudentHomePage)

Example 9 with AppUrl

use of teammates.common.util.AppUrl in project teammates by TEAMMATES.

the class StudentHomePageUiTest method testLinks.

private void testLinks() {
    AppUrl homePageUrl = createUrl(Const.ActionURIs.STUDENT_HOME_PAGE).withUserId(testData.students.get("SHomeUiT.charlie.d@SHomeUiT.CS2104").googleId);
    StudentHomePage studentHomePage = loginAdminToPage(homePageUrl, StudentHomePage.class);
    ______TS("link: help page");
    StudentHelpPage helpPage = studentHomePage.loadStudentHelpTab();
    helpPage.closeCurrentWindowAndSwitchToParentWindow();
    ______TS("link: view team link");
    studentHomePage.clickViewTeam();
    AppUrl detailsPageUrl = createUrl(Const.ActionURIs.STUDENT_COURSE_DETAILS_PAGE).withUserId(testData.students.get("SHomeUiT.charlie.d@SHomeUiT.CS1101").googleId).withCourseId(testData.students.get("SHomeUiT.charlie.d@SHomeUiT.CS1101").course);
    assertEquals(detailsPageUrl.toAbsoluteString(), browser.driver.getCurrentUrl());
    studentHomePage.loadStudentHomeTab();
    ______TS("link: link of published feedback");
    studentHomePage.clickViewFeedbackButton("Closed Feedback Session");
    studentHomePage.reloadPage();
    String pageSource = browser.driver.getPageSource();
    assertTrue(pageSource.contains("Feedback Results"));
    assertTrue(pageSource.contains("SHomeUiT.CS2104"));
    assertTrue(pageSource.contains("Closed Feedback Session"));
    studentHomePage.loadStudentHomeTab();
    studentHomePage.clickSubmitFeedbackButton("Closed Feedback Session");
    studentHomePage.reloadPage();
    pageSource = browser.driver.getPageSource();
    assertTrue(pageSource.contains("Submit Feedback"));
    assertTrue(pageSource.contains("SHomeUiT.CS2104"));
    assertTrue(pageSource.contains("Closed Feedback Session"));
    assertTrue(pageSource.contains(Const.StatusMessages.FEEDBACK_SUBMISSIONS_NOT_OPEN));
    studentHomePage.loadStudentHomeTab();
    ______TS("link: link of Grace period feedback");
    assertTrue(studentHomePage.getViewFeedbackButton("Graced Feedback Session").getAttribute("class").contains("disabled"));
    studentHomePage.clickSubmitFeedbackButton("Graced Feedback Session");
    studentHomePage.reloadPage();
    pageSource = browser.driver.getPageSource();
    assertTrue(pageSource.contains("Submit Feedback"));
    assertTrue(pageSource.contains("SHomeUiT.CS2104"));
    assertTrue(pageSource.contains("Graced Feedback Session"));
    assertTrue(pageSource.contains(Const.StatusMessages.FEEDBACK_SUBMISSIONS_NOT_OPEN));
    studentHomePage.loadStudentHomeTab();
    ______TS("link: link of pending feedback");
    assertTrue(studentHomePage.getViewFeedbackButton("First Feedback Session").getAttribute("class").contains("disabled"));
    studentHomePage.clickSubmitFeedbackButton("First Feedback Session");
    studentHomePage.reloadPage();
    pageSource = browser.driver.getPageSource();
    assertTrue(pageSource.contains("Submit Feedback"));
    assertTrue(pageSource.contains("SHomeUiT.CS2104"));
    assertTrue(pageSource.contains("First Feedback Session"));
    studentHomePage.loadStudentHomeTab();
}
Also used : StudentHelpPage(teammates.test.pageobjects.StudentHelpPage) AppUrl(teammates.common.util.AppUrl) StudentHomePage(teammates.test.pageobjects.StudentHomePage)

Example 10 with AppUrl

use of teammates.common.util.AppUrl in project teammates by TEAMMATES.

the class StudentProfilePageUiTest method testNavLinkToPage.

private void testNavLinkToPage() {
    AppUrl profileUrl = createUrl(Const.ActionURIs.STUDENT_HOME_PAGE).withUserId(testData.accounts.get("studentWithEmptyProfile").googleId);
    StudentHomePage shp = loginAdminToPage(profileUrl, StudentHomePage.class);
    profilePage = shp.loadProfileTab();
}
Also used : AppUrl(teammates.common.util.AppUrl) StudentHomePage(teammates.test.pageobjects.StudentHomePage)

Aggregations

AppUrl (teammates.common.util.AppUrl)52 Test (org.testng.annotations.Test)7 InstructorCourseEnrollPage (teammates.test.pageobjects.InstructorCourseEnrollPage)6 InstructorStudentListPage (teammates.test.pageobjects.InstructorStudentListPage)6 StudentHomePage (teammates.test.pageobjects.StudentHomePage)6 InstructorAttributes (teammates.common.datatransfer.attributes.InstructorAttributes)4 StudentAttributes (teammates.common.datatransfer.attributes.StudentAttributes)3 InstructorCourseDetailsPage (teammates.test.pageobjects.InstructorCourseDetailsPage)3 InstructorCourseStudentDetailsEditPage (teammates.test.pageobjects.InstructorCourseStudentDetailsEditPage)3 InstructorHomePage (teammates.test.pageobjects.InstructorHomePage)3 Stopwatch (teammates.client.scripts.util.Stopwatch)2 AdminHomePage (teammates.test.pageobjects.AdminHomePage)2 InstructorCourseStudentDetailsViewPage (teammates.test.pageobjects.InstructorCourseStudentDetailsViewPage)2 InstructorCoursesPage (teammates.test.pageobjects.InstructorCoursesPage)2 InstructorFeedbackResultsPage (teammates.test.pageobjects.InstructorFeedbackResultsPage)2 InstructorFeedbackSessionsPage (teammates.test.pageobjects.InstructorFeedbackSessionsPage)2 InstructorStudentRecordsPage (teammates.test.pageobjects.InstructorStudentRecordsPage)2 StudentCourseDetailsPage (teammates.test.pageobjects.StudentCourseDetailsPage)2 BlobInfo (com.google.appengine.api.blobstore.BlobInfo)1 BlobKey (com.google.appengine.api.blobstore.BlobKey)1