com.cengage.mindtap.keywords.AssignableActivityPageActions.java Source code

Java tutorial

Introduction

Here is the source code for com.cengage.mindtap.keywords.AssignableActivityPageActions.java

Source

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package com.cengage.mindtap.keywords;

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.interactions.Actions;
import org.testng.Assert;

/**
 *
 * @author nikitaaggarwal
 */
public class AssignableActivityPageActions extends BasePageActions {

    public AssignableActivityPageActions(WebDriver driver) {
        super(driver, "AssignableActivityPage");
    }

    public void selectCheckBoxAA() {
        waitForSpinnerToDisappear();

        clickOnElementUsingActionBuilder(element("AddAA_txt"));
        Reporter.log("User selected the checkbox of AA to add that activity");
    }

    public void clickOnContinue() {
        clickOnElementUsingActionBuilder(element("continue_btn"));
        Reporter.log("User clicked on continue button to add AA");
    }

    public void clickOnSaveChanges() {
        waitTOSync();
        executeJavascript("window[0].document.getElementsByClassName('continueButton navButton')[1].click()");
        Reporter.log("User clicked on save changes button to make changes in AA");
    }

    public void clickOnBack() {
        clickOnElementUsingActionBuilder(element("Nav_back"));
        Reporter.log("User clicked on back button to navigate to unit view");
    }

    public void selectAATypeAssessment() {
        selectProvidedValue(element("AAType_dropdown"), "test");
        Reporter.log("User selected assessment type in Assignment Type Dropdown");
    }

    public void selectAATypeHomework() {
        selectProvidedValue(element("AAType_dropdown"), "homework");
        Reporter.log("User selected assessment type in Assignment Type Dropdown");
    }

    public void selectPracticeRadioBtn() {
        clickOnElementUsingActionBuilder(element("Practice_checkbox "));
        Reporter.log("User Choose grading mode practice");
    }

    public void selectFeedBackAfterAssignment() {
        waitTOSync();
        executeJavascript("window[0].document.getElementById('showfeedbackInReviewMode_always').click()");
        Reporter.log("User selected Feedback After Assignment checkbox");
    }

    public void clickOnContinueAA() {
        clickOnElementUsingActionBuilder(element("continueAA_btn"));
        Reporter.log("User clicked on continue button again to add AA");
        deselectFrame();
    }

    public void closeReader() {
        clickOnElementUsingActionBuilder(element("continueAA_btn"));
        Reporter.log("User clicked on continue button again to add AA");
    }

    public void SubmitActivity() {
        waitTOSync();
        waitTOSync();
        clickOnElementUsingActionBuilder(element("SubmitActivity_btn"));
        clickOnElementUsingActionBuilder(element("Submit_btn"));
        Reporter.log("User Submitted the activity");
    }

    public void VerifySubmittedActivity() {
        isElementDisplayed(element("SubmitActivity_btn"));
        Reporter.log("Instructor have multiple attempts for an activity");
    }

    public void setDuedateOfAssessmentActivity(String activity_title) {
        element("set_duedate", activity_title).click();
        Reporter.log("Instructor clicked on due date calender from date manager");
        element("done_btn").click();
        Reporter.log("user clicked on done button to set due date");
    }

    public void verifyDueDateOnLPN(String activity_title) {
        isElementDisplayed(element("dueDate_lpn", activity_title));
        Reporter.log("Due date of" + activity_title + " is displayed on Unit View");
    }

    public void VerifyHiddenFromStudentTextInUnitView(String activity_title) {
        waitTOSync();
        isElementDisplayed(element("Hidden_text", activity_title));
        Reporter.log("Activity" + activity_title + " is hidden from Unit View");
        try {

            isElementDisplayedHidden(element("dueDate_lpn", activity_title));
            Assert.assertTrue(false);
            System.out.println("Due Dates of Hidden activites are displaying");
        } catch (Exception e) {
            Assert.assertTrue(true);
            System.out.println("Due Dates of Hidden activites are not displaying");
        }
    }

    public void VerifyHiddenFromStudentTextInDateManager(String activity_title) {
        waitTOSync();
        isElementDisplayed(element("Hide_datemanager", activity_title));
        Reporter.log("Activity" + activity_title + " is hidden from Date Manager View");
    }

    public void removeHiddenItemsFromUnitView() {
        hover(element("lpn_title"));
        //executeJavascript("document.getElementsByClassName('navLink courseejs_removehidden').style.display = 'block';");
        element("rmv_hidden").click();
        Reporter.log("user clicked on remove hidden items icon in lpn_title");
        waitTOSync();
        //System.out.println(element("hide_activity", activity_title).isSelected());
        //isElementEnabled(element("hide_activity", activity_title), true);
        //String result = executeJavascriptWithReturn("document.getElementsByClassName('lpn_name')[1].checked").toString();
    }

    public void activitiesAfterHiddenItems(String activity_title) {
        try {

            isElementDisplayedHidden(element("hide_activity", activity_title));
            Assert.assertTrue(false);
            System.out.println("Hidden activites are displaying");
        } catch (Exception e) {
            Assert.assertTrue(true);
            System.out.println("Hidden activites are not displaying");
        }
    }

    public void HiddenItemsinGradebook(String activity_title) {
        element("overview_PA").click();
        try {

            isElementDisplayedHidden(element("hiddenactivity_PA", activity_title));
            Assert.assertTrue(false);
            System.out.println("Hidden activites are displaying in Gradebook");
        } catch (Exception e) {
            Assert.assertTrue(true);
            System.out.println("Hidden activites are not displaying in Gradebook");
        }
    }

    public void VerifyActivitiesInGradebook(String activity_title) {
        element("overview_PA").click();
        scrollDown(elementWithoutWait("hiddenactivity_PA", activity_title));
        waitTOSync();

        Assert.assertTrue(element("hiddenactivity_PA", activity_title).isDisplayed(), "element is not displaying");
        //isElementDisplayed(element("hiddenactivity_PA", activity_title));
        //Assert.assertTrue(true);
        Reporter.log("Activity" + activity_title + "is displaying in Gradebook");
    }

    public void AddAssessmentAA() {
        selectCheckBoxAA();
        clickOnContinue();
        selectAATypeAssessment();
        clickOnContinueAA();
    }

    public void AddHomeworkAA() {
        selectCheckBoxAA();
        clickOnContinue();
        selectAATypeHomework();
        selectPracticeRadioBtn();
        clickOnContinueAA();
    }

    protected void clickOnElementUsingActionBuilder(WebElement element) {
        Actions builder = new Actions(driver);
        Actions MenuItems = builder.moveToElement(element);
        waitTOSync();
        MenuItems.click().build().perform();
        waitTOSync();
    }

    public void clickOnAssignment() {
        element("launch_assignment").click();
        waitForSpinnerToDisappear();
    }

}