/// <summary> /// Select a Strand on Gradeset Pannel /// </summary> public void SelectStrand(string StrandName) { SeleniumHelper.ChooseSelectorOption(StrandSelector, StrandName); }
public bool IsASuccessMessageIsDisplayed() { return(SeleniumHelper.DoesWebElementExist(_successMessage)); }
public void SelectFirstRecord() { WaitUntilEnabled(DataExchangeElements.Import.SearchBtnEnabled); SeleniumHelper.WaitForElementClickableThenClick(DataExchangeElements.Import.FirstRecordSelect); }
/// <summary> /// Select a Group on Gradeset Pannel /// </summary> public void SelectGroup(string GroupName) { SeleniumHelper.ChooseSelectorOption(GroupSelector, GroupName); }
/// <summary> /// Sets the IsAvailable flag value /// </summary> /// <param name="active"></param> public void SetIsAvailable(bool active) { SeleniumHelper.Get(General.DataMaintenance).SetCheckBox(MarksheetActive, active); }
public void Take_Class_Register_And_Verify_Preserve_OverWrite_FloodFill_Functionality(string dateSearch, string pupilForeName, string pupilSurName, string gender, string dateOfBirth, string DateOfAdmission, string YearGroup, string pupilName) { #region Pre-Conditions: // Navigate to Pupil Record DateTime dobSetup = Convert.ToDateTime(dateOfBirth); DateTime dateOfAdmissionSetup = Convert.ToDateTime(DateOfAdmission); var learnerIdSetup = Guid.NewGuid(); var BuildPupilRecord = this.BuildDataPackage(); BuildPupilRecord.CreatePupil(learnerIdSetup, pupilSurName, pupilForeName, dobSetup, dateOfAdmissionSetup, YearGroup); DataSetup DataSetPupil = new DataSetup(purgeBeforeInsert: false, purgeAfterTest: true, packages: BuildPupilRecord); #endregion //Login and navigate to Take Register page SeleniumHelper.Login(SeleniumHelper.iSIMSUserType.ClassTeacher); Wait.WaitForDocumentReady(); var homePage = new HomePage(); var quicklink = homePage.MenuBar(); quicklink.TakeRegister(); //Enter Search Criteria var takeRegisterTriplet = new TakeRegisterTriplet(); takeRegisterTriplet.SearchCriteria.StartDate = dateSearch; takeRegisterTriplet.SearchCriteria.Week = true; takeRegisterTriplet.SearchCriteria.SelectYearGroup(YearGroup); var takeRegisterDetail = takeRegisterTriplet.SearchCriteria.Search <TakeRegisterDetailPage>(); var takeRegisterTable = takeRegisterDetail.Marks; IEnumerable <SchoolAttendanceCode> getANRs = Queries.GetAttendanceNotRequiredCodes(); List <string> codes = getANRs.Select(x => x.Code).ToList <string>(); if (codes.Contains(takeRegisterTable[0][1].Text)) { Console.WriteLine("Marks can't be overwritten on Holidays"); return; } //Verify the Preserve Mode Functionality takeRegisterDetail.ModePreserve = true; //Enter Marks using Keyboard and Ensure blank marks can be edited while 'preserve' is enabled. var preserveModeMark = takeRegisterDetail.Marks[pupilName][1].Text = "C"; Assert.AreEqual(preserveModeMark, takeRegisterDetail.Marks[pupilName][1].Value, "Mark is updated when modePreserve is true"); takeRegisterDetail.ClickSave(); //Edit saved mark using the code list takeRegisterDetail.Marks[pupilName][1].Select(); takeRegisterDetail.CodeList = "B"; //VP: Mark can not be changed Assert.AreNotEqual("B", takeRegisterDetail.Marks[pupilName][1].Text, "Mark is updated when modePreserve is true"); //Ensure a selection of cells can't be flood filled for Preserve Mode takeRegisterDetail.Marks.Columns[1].TimeIndicatorSelected = "AM"; takeRegisterDetail.CodeList = "/"; Assert.AreNotEqual("/", takeRegisterDetail.Marks[pupilName][1].Text, "The selected cells can not be flood filled"); Assert.AreNotEqual("/", takeRegisterDetail.Marks[Convert.ToInt16(takeRegisterDetail.Marks.RowCount / 2)][1].Text, "The selected cells can not be flood filled"); //Edit the mark with invalid value SeSugar.Automation.Retry.Do(takeRegisterDetail.Marks[pupilName][1].Select, 200, 100); takeRegisterDetail.Marks[pupilName][1].Text = "K"; //VP: Value of mark can not be "K" Assert.AreNotEqual("K", takeRegisterDetail.Marks[pupilName][1].Text, "The cell should not update 'T' value"); //Select Overwrite Mode : Verify the Overwrite Mode Functionality takeRegisterDetail.ModePreserve = false; //Enter the mark "Late" to row 1, column 2 using the code list takeRegisterDetail.Marks[pupilName][1].Select(); takeRegisterDetail.CodeList = "L"; //Check value the mark changed Assert.AreEqual("L", takeRegisterDetail.Marks[pupilName][1].Text, "Mark is updated"); //Enter the mark "Late" to row 1, column 1 using the keyboad takeRegisterDetail.Marks[pupilName][1].Text = "N"; //Check value the mark changed Assert.AreEqual("N", takeRegisterDetail.Marks[pupilName][1].Text, "Mark is overwritten"); //Enter the mark to row 1, column 1 using the UI buttons takeRegisterDetail.Marks[pupilName][3].Select(); takeRegisterDetail.CodeUI = "L"; //Check value the mark changed Assert.AreEqual("L", takeRegisterDetail.Marks[pupilName][3].Text, "Mark is overwritten"); //Enter the mark "Absent" to row 1, column 1, using the drop-down takeRegisterDetail.Marks[pupilName][4].DoubleClick(); takeRegisterDetail.CodeItemDropDown = "N"; //Check value the mark changed Assert.AreEqual("N", takeRegisterDetail.Marks[pupilName][4].Text, "Mark is overwritten"); //Ensure a selection of cells can be flood filled takeRegisterDetail.Marks.Columns[1].TimeIndicatorSelected = "AM"; takeRegisterDetail.CodeList = "L"; Assert.AreEqual("L", takeRegisterDetail.Marks[pupilName][1].Text, "The selected cells can not be flood filled"); Assert.AreEqual("L", takeRegisterDetail.Marks[Convert.ToInt16(takeRegisterDetail.Marks.RowCount / 2)][1].Text, "The selected cells can not be flood filled"); //Click Save takeRegisterDetail.ClickSave(); Assert.AreEqual(true, takeRegisterDetail.IsSuccessMessageDisplayed(), "Success message doesn't display"); }
public Status InsertUser(string userName) { return(SeleniumHelper.InsertText(userName, By.XPath("//input[@id ='user_name']"))); }
public bool IsSuccessMessageDisplay() { Wait.WaitForControl(SimsBy.CssSelector("[data-automation-id='status_success']")); return(SeleniumHelper.DoesWebElementExist(_statusSuccess)); }
public Status NavigateToHomePage() { return(SeleniumHelper.GoToUrl("https://homeil.ness.com/")); }
public Status InsertPassword(string password) { return(SeleniumHelper.InsertText(password, By.XPath("//input[@id ='password']"))); }
public CadastrarUmaNovaCategoria() { Browser = SeleniumHelper.Instance(); }
/// <summary> /// Au : An Nguyen /// Des : Verify success message is displayed /// </summary> /// <returns></returns> public bool IsSuccessMessageDisplayed() { AutomationSugar.WaitForAjaxCompletion(); return(SeleniumHelper.IsElementExists(SimsBy.AutomationId("status_success"))); }
public void Save() { SeleniumHelper.Get(SimsBy.AutomationId("well_know_action_save")).ClickByJS(); Wait.WaitForAjaxReady(SimsBy.CssSelector(".locking-mask")); }
/// <summary> /// Get results only for status as "Validated with Issues" /// </summary> public IWebElement GetSearchResults(string status) { var censusTripletPage = new CensusPage(); censusTripletPage.SearchCriteria.ReturnTypeDropdown = "School Census Return"; censusTripletPage.SearchCriteria.ReturnTypeVersionDropdown = "Spring 2017"; SearchCriteria.Search(); ReadOnlyCollection <IWebElement> searchResultCollection = SearchResults.GetSearchResults(); foreach (IWebElement element in searchResultCollection) { ReadOnlyCollection <IWebElement> resultTiles = element.FindElements(By.CssSelector(string.Format("{0} {1}", SeleniumHelper.AutomationId("resultTile"), "span"))); foreach (IWebElement resultTile in resultTiles) { if (resultTile.Text == status) { return(element); } } } return(null); }
public Status ClickEnter() { return(SeleniumHelper.OnClick(By.XPath("//input[@id ='submit_button']"), 40)); }
private IWebElement GetMenuBarButton() { return(WebContext.WebDriver.FindElement(SeleniumHelper.SelectByDataAutomationId("task_menu"))); }
public void CensusWidgetCheck() { SeleniumHelper.Login(SeleniumHelper.iSIMSUserType.ReturnsManager); Wait.WaitTillAllAjaxCallsComplete(); bool isContainsWidget = false; IWebElement widgetElement = WebContext.WebDriver.FindElementSafe(By.CssSelector(SeleniumHelper.AutomationId("StatutoryReturnWidget"))); if (widgetElement.IsElementExists()) { var widgetDesc = widgetElement.FindChild(By.CssSelector(".hp-tile-desc")).Text; if (AllWidgetDesc.Contains(widgetDesc)) { isContainsWidget = true; } } Assert.IsTrue(isContainsWidget); }
public static void ClickLink() { //if (LoadedQuickSearchLink.Displayed) // LoadedQuickSearchLink.Click(); SeleniumHelper.Get(AddressBookElements.LinkAddressBook).Click(); }
/// <summary> /// Author: Huy.Vo /// Description: Init page /// </summary> /// <returns></returns> public AddNewApplicationDialog AddNewApplicationDialog() { SeleniumHelper.Get(SimsBy.AutomationId("add_new_application_button")).ClickByJS(); Wait.WaitForAjaxReady(SimsBy.CssSelector(".locking-mask")); return(new AddNewApplicationDialog()); }
public void TC_ATT006_Validate_Additional_Information_Displayed(string pupilSurName, string pupilForeName, string gender, DateTime dateOfBirth, DateTime DateOfAdmission, string YearGroup, string className, string pupilName, string contactSurname, string startDate, string startDateBefore) { #region Pre-Conditions: #region Pre-Condition: Create a new pupil for test AutomationSugar.Log("Data Creation started"); var learnerId = Guid.NewGuid(); var dataPackage = this.BuildDataPackage(); dataPackage.CreatePupil(learnerId, pupilSurName, pupilForeName, dateOfBirth, DateOfAdmission, YearGroup); AutomationSugar.Log("***Pre-Condition: Create new contact1 and refer to pupil"); var dataPackageNew = this.BuildDataPackage(); Guid learnerContactId = Guid.NewGuid(); Guid pupilContactRelationshipId1 = Guid.NewGuid(); //Add pupil contact var contactSurname1 = Utilities.GenerateRandomString(10, "SeleniumPupilContact1_Surname" + Thread.CurrentThread.ManagedThreadId); var contactForename1 = Utilities.GenerateRandomString(10, "SeleniumPupilContact1_Forename" + Thread.CurrentThread.ManagedThreadId); var titleContact1 = "Mrs"; dataPackageNew.AddPupilContact(learnerContactId, contactSurname1, contactForename1); dataPackageNew.AddPupilContactRelationship(pupilContactRelationshipId1, learnerId, learnerContactId); #endregion using (new DataSetup(packages: new DataPackage[] { dataPackage, dataPackageNew })) { // Login SeleniumHelper.Login(SeleniumHelper.iSIMSUserType.ClassTeacher); // Navigate to take register AutomationSugar.NavigateMenu("Tasks", "Attendance", "Take Register"); // Enter values to search var takeRegisterTriplet = new TakeRegisterTriplet(); takeRegisterTriplet.SearchCriteria.StartDate = startDateBefore; takeRegisterTriplet.SearchCriteria.Week = true; takeRegisterTriplet.SearchCriteria.SelectYearGroup(YearGroup); var takeRegisterPage = takeRegisterTriplet.SearchCriteria.Search <TakeRegisterDetailPage>(); var takeRegisterTable = takeRegisterPage.Marks; // Enter pre-condition mark takeRegisterTable[pupilName][1].Text = "/"; takeRegisterTable[pupilName][2].Text = "N"; takeRegisterTable[pupilName][3].Text = "N"; takeRegisterTable[pupilName][4].Text = "N"; takeRegisterTable[pupilName][5].Text = "/"; takeRegisterTable[pupilName][6].Text = "/"; // Save Value takeRegisterPage.ClickSave(); #endregion #region Steps // Enter values to search again takeRegisterTriplet = new TakeRegisterTriplet(); takeRegisterTriplet.SearchCriteria.StartDate = startDate; takeRegisterTriplet.SearchCriteria.Day = true; takeRegisterPage = takeRegisterTriplet.SearchCriteria.Search <TakeRegisterDetailPage>(); takeRegisterTable = takeRegisterPage.Marks; // Verify birthday cake displays takeRegisterTable = takeRegisterPage.Marks; Assert.AreEqual(true, takeRegisterTable[pupilName].IsBirthdayCakeDisplay(), "Birthday cake does not displays"); // Click pupil name takeRegisterTable[pupilName].ClickCellPupilName(); var pupilDetailDialog = new PupilDetailDialog(); // Verify pupil name and DOB is displayed. Assert.IsTrue(pupilDetailDialog.PupilName.Contains(pupilName), "Pupil name is not correct"); Assert.IsTrue(pupilDetailDialog.PupilDOB.Contains(dateOfBirth.ToString("dd MMMM yyyy")), "Date of Birth is not correct"); // Verify contact detail displays Assert.AreEqual(true, pupilDetailDialog.IsContactDetailDisplay(), "Contact detail does not display"); #endregion } }
public void GivenUserHasVisitedTheBarfootHomepage() { SeleniumHelper.SetUpDriver(); }
public static bool IsPageExist() { return(SeleniumHelper.DoesWebElementExist(SimsBy.Id("screen"))); }
public void WhenPressesTheSearchButton() { SeleniumHelper.StartSearch(); }
public PedidoTela(SeleniumHelper helper) : base(helper) { }
public AccountsOverviewPage(IWebDriver driver) { _driver = driver; selenium = new SeleniumHelper(_driver); }
/// <summary> /// Select a Subject on Gradeset Pannel /// </summary> public void SelectSubject(string SubjectName) { SeleniumHelper.ChooseSelectorOption(SubjectSelector, SubjectName); }
public CadastrarContatoSteps() { Browser = SeleniumHelper.GetInstance(); }
/// <summary> /// Author: Ba.Truong /// Description: Init page Training Course /// </summary> /// <returns></returns> public static TrainingCourseDetailsPage Create() { SeleniumHelper.Get(SimsBy.AutomationId("staff_training_courses_create_button")).ClickByJS(); Wait.WaitForAjaxReady(SimsBy.CssSelector(".locking-mask")); return(new TrainingCourseDetailsPage()); }
public TaskSearch TaskSearch() { //SeleniumHelper.ClickByJS(By.CssSelector("[title=\"Task Menu\"]")); SeleniumHelper.Get(By.CssSelector("[data-automation-id='task_menu']")).ClickByJS(); return(new TaskSearch()); }
//private object waiter; #endregion #region Public methods /// <summary> /// Author: Huy.Vo /// Description: Init page /// </summary> /// <returns></returns> public SchoolIntakePage Create() { SeleniumHelper.Get(Add_Button).Click(); Wait.WaitForAjaxReady(SimsBy.CssSelector(".locking-mask")); return(new SchoolIntakePage()); }
public LoginPage(IWebDriver driver) { helper = new SeleniumHelper(driver); }