Exemple #1
0
        /// <summary>
        /// Read the notification message header text
        /// </summary>
        /// <returns></returns>
        private string readAndReturnNotificationMessageText()
        {
            string message = BaseSeleniumComponents.WaitForAndGet(DataExchangeElement.NotificationAlert).FindChild(By.CssSelector("span[class=\"search-result h1-result\"]")).Text;

            WebContext.Screenshot();
            return(message);
        }
Exemple #2
0
        public static void UpdateValue(string css, object value)
        {
            if (css.Contains("dropdownImitator"))
            {
                SeleniumHelperObsolete.FindAndSetValueForSelector(css, value.ToString());
            }
            else
            {
                var x = BaseSeleniumComponents.WaitForAndGet(new TimeSpan(0, 0, 0, 5), By.CssSelector(css));

                if (x.Displayed)
                {
                    SeleniumHelperObsolete.FindAndSetValue(css, value.ToString());
                }
                else
                {
                    if (x.GetAttribute("data-tristate-checkbox-value") != null)
                    {
                        var c =
                            WebContext.WebDriver.FindElement(
                                By.CssSelector(string.Format("#{0}", x.GetAttribute("name"))));

                        c.Click();
                    }
                }
            }
        }
        public static void FindAndSetValueForSelector(string css, string value, bool hasDefault = false)
        {
            FindAndClick(css);
            const string selectorSearchBox = "[id*=s2id_autogen][id$=_search]";

            BaseSeleniumComponents.WaitForAndSetValue(BrowserDefaults.TimeOut, By.CssSelector(selectorSearchBox), value, hasDefault);
        }
Exemple #4
0
        /// <summary>
        /// Navigate to Detail Reports
        /// </summary>
        public void NavigateToDetailReportsDeni()
        {
            BaseSeleniumComponents.WaitUntilDisplayed(BrowserDefaults.TimeOut, DataExchangeElement.DetailReportsButton);
            SeleniumHelper.WaitForElementClickableThenClick(DataExchangeElement.DetailReportsButton);

            BaseSeleniumComponents.WaitUntilDisplayed(BrowserDefaults.TimeOut, DataExchangeElement.IssuesAndQueriesReport);
            SeleniumHelper.WaitForElementClickableThenClick(DataExchangeElement.IssuesAndQueriesReport);
            WebContext.Screenshot();
        }
Exemple #5
0
        public bool SelectAgentRecordFromSearch(string fname, string lname)
        {
            searchVal.SendKeys(fname + " " + lname);
            searchButton.Click();
            BaseSeleniumComponents.WaitUntilDisplayed(By.CssSelector("[data-automation-id='resultTile']"));
            IWebElement searchRecord = WebContext.WebDriver.FindElement(By.CssSelector("[data-automation-id='resultTile']"));

            searchRecord.Click();
            return(true);
        }
        public ViewDistribution ClickViewDistribution(int columnNumber)
        {
            IWebElement sortlink = WebContext.WebDriver.FindElement(By.CssSelector("td[column=\"" + columnNumber.ToString() + "\"] > div > i[data-grid-id='marksheetGrid']"));
            string      columnId = sortlink.GetAttribute("data-sort-asc-indicator");

            var columnDetailsDiv = BaseSeleniumComponents.WaitForAndGet(BrowserDefaults.TimeOut, By.CssSelector("[data-menu-column-id=\"" + columnId + "\"]"));

            _distributionGraphPopover.Click();
            return(new ViewDistribution());
        }
Exemple #7
0
        public void SetApplicationToAdmitted()
        {
            var loc = By.Name("LearnerApplication.ApplicationStatusSelector.dropdownImitator");

            BaseSeleniumComponents.WaitForAndGet(loc).ChooseSelectorOption("Admitted");
            Thread.Sleep(1000);
            SeleniumHelper.Get(By.CssSelector(SeleniumHelper.AutomationId("well_know_action_save"))).Click();
            Thread.Sleep(5000);
            SeleniumHelper.Get(By.CssSelector(SeleniumHelper.AutomationId("save_&_continue_button"))).Click();
            Thread.Sleep(5000);
        }
        //Method to validate error message thrown when template is saved with blank template name
        public bool IsTemplateNameMandatory()
        {
            BaseSeleniumComponents.WaitUntilDisplayed(By.Name("NameOfTemplate"));
            templateName.Clear();
            Thread.Sleep(500);
            saveTemplate.Click();
            BaseSeleniumComponents.WaitUntilDisplayed(By.CssSelector("[data-automation-id='status_error']"));
            bool returnVal = statusError.Displayed;

            //TemplateSearchScreen.closeManageMsgTab(manageMsgCloseTab, manageMsgWarningDontSave);
            return(returnVal);
        }
Exemple #9
0
        public bool DialogDisappeared()
        {
            addNewAgentButton.Click();
            BaseSeleniumComponents.WaitUntilDisplayed(AgentElements.MainScreen.AgentForename);
            BaseSeleniumComponents.WaitUntilDisplayed(By.CssSelector("[data-automation-id='cancel_button']"));
            POM.Helper.SeleniumHelper.ClickByJS(cancelButton);
            Thread.Sleep(2000);
            IReadOnlyCollection <IWebElement> list = WebContext.WebDriver.FindElements(By.Name("LegalForename"));
            bool val = (list.Count == 0);

            return(val);
        }
Exemple #10
0
        public void CheckValidationOnKeepingSurNameForeNameEmpty()
        {
            AgentSearchScreen ScreenObject = AgentScreenNavigation.NavigateToAgentMenuPage();
            AddNewAgentDialog dialogObj    = ScreenObject.ClickAddNewAgent();

            BaseSeleniumComponents.WaitUntilDisplayed(AgentElements.MainScreen.AgentForename);

            Assert.True(ScreenObject.CheckValidation("", "") &&                                  // for empty forename and surname.
                        ScreenObject.CheckValidation("p", "") &&                                 // for empty surname.
                        ScreenObject.CheckValidation("", "P") &&                                 // for empty forename
                        Int32.Parse(dialogObj.AgentForeName.GetAttribute("maxlength")) == 100 && // For forename maxlength
                        Int32.Parse(dialogObj.AgentSurName.GetAttribute("maxlength")) == 100);   // For surname maxlength
        }
Exemple #11
0
        public bool CheckValidation(string foreName, string surName)
        {
            if (foreName == "" && surName != "")
            {
                AgentForeName.Clear();
                AgentSurName.SendKeys(surName);
            }
            else if (surName == "" && foreName != "")
            {
                AgentSurName.Clear();
                AgentForeName.SendKeys(foreName);
            }
            else if (foreName == "" && surName == "")
            {
                AgentForeName.Clear();
                AgentSurName.Clear();
                Thread.Sleep(1000);
                continuebutton.Click();
                BaseSeleniumComponents.WaitUntilDisplayed(By.CssSelector("[data-automation-id='status_error']"));
                return(validationmessage.Displayed);
            }
            else if (foreName != "" && surName != "")
            {
                AgentForeName.SendKeys(foreName);
                AgentSurName.SendKeys(surName);
            }
            else
            {
                return(false);
            }

            continuebutton.Click();
            Thread.Sleep(1000);
            string val = onevalidationmessage.GetAttribute("textContent");

            if (val.Contains("The Surname field is required."))
            {
                return(true);
            }
            else if (val.Contains("The Forename field is required"))
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
Exemple #12
0
 public bool DeleteAgentRecord()
 {
     try
     {
         BaseSeleniumComponents.WaitUntilDisplayed(By.CssSelector("[data-automation-id='delete_button']"));
         deleteAgentButton.Click();
         BaseSeleniumComponents.WaitUntilDisplayed(By.CssSelector("[data-automation-id='continue_with_delete_button']"));
         //Thread.Sleep(500);
         deleteAgentContinueButton.Click();
         return(true);
     }
     catch (Exception)
     {
         return(false);
     }
 }
Exemple #13
0
        public AgentSearchScreen SelectAgentService()
        {
            Thread.Sleep(1000);
            BaseSeleniumComponents.WaitUntilDisplayed(AgentElements.ServicesProvidedScreen.CheckBoxAudiometrist);

            Actions action = new Actions(WebContext.WebDriver);

            action.MoveToElement(CheckBoxAudiometrist);
            action.SendKeys(Keys.Space);
            action.Build().Perform();
            //CheckBoxAudiometrist.Click();
            Thread.Sleep(500);
            CreateRecordButton.Click();
            Wait.WaitForAjaxReady(By.CssSelector(".locking-mask-loading"));

            return(new  AgentSearchScreen());
        }
        //Method to delete template opened in maintenance mode
        public string DeleteTemplate(string tName, bool includeInvisible = false)
        {
            string str = this.CheckResultsInTemplateSearch(tName, includeInvisible);

            IWebElement resultTile = WebContext.WebDriver.FindElement(By.CssSelector("[data-automation-id='resultTile']"));

            SeleniumHelper.ClickByJS(resultTile);

            BaseSeleniumComponents.WaitUntilDisplayed(By.CssSelector("[data-automation-id='delete_button']"));
            SeleniumHelper.ClickByJS(deleteButton);

            BaseSeleniumComponents.WaitUntilDisplayed(By.CssSelector("[data-automation-id='continue_with_delete_button']"));
            SeleniumHelper.ClickByJS(continueWithDeleteButton);
            Wait.WaitForAjaxReady(By.CssSelector(".locking-mask-loading"));
            //Search the same template to check successful deletion
            return(this.CheckResultsInTemplateSearch(tName, includeInvisible));
        }
Exemple #15
0
        /// <summary>
        /// Create DENI
        /// </summary>
        public void CreateDENIReturn()
        {
            SearchDENI();
            if (SearchResults.HasResults() && SearchResults.GetSearchResults().Count > 0)
            {
                SearchResults.SelectSearchResult(0);
                return;
            }
            BaseSeleniumComponents.WaitUntilDisplayed(DataExchangeElement.CreateButton);
            SeleniumHelper.WaitForElementClickableThenClick(DataExchangeElement.CreateButton);

            IWebElement dialogSelector = SeleniumHelper.Get(DataExchangeElement.DialogSelector);

            BaseSeleniumComponents.WaitUntilDisplayed(DataExchangeElement.VersionSelector);
            dialogSelector.ChooseSelectorOption(DataExchangeElement.VersionSelector, DataExchangeElement.DENIVersion);
            SeleniumHelper.WaitForElementClickableThenClick(DataExchangeElement.CreateReturnOkButton);
            Thread.Sleep(1000);
            SearchDENI();
        }
Exemple #16
0
        public void DeleteSchoolIntake(string schoolIntakeId, string admissionYear)
        {
            NavgateToSchoolIntakeDirectly();

            Thread.Sleep(1000);
            var loc = By.CssSelector("form[data-section-id='searchCriteria'] [name='YearOfAdmission.dropdownImitator']");

            BaseSeleniumComponents.WaitForAndGet(loc).ChooseSelectorOption(admissionYear);
            Thread.Sleep(1000);
            SearchCriteria.Search();
            SearchResults.WaitForResults();
            Thread.Sleep(1000);
            SearchResults.Click(schoolIntakeId);
            Thread.Sleep(2000);
            SeleniumHelper.Get(By.CssSelector("[data-ajax-url*='/iSIMSMVCClientFarm1/School/SchoolIntakeMaintenance/ConfirmDeleteDetail']")).Click();
            Thread.Sleep(2000);
            SeleniumHelper.Get(By.CssSelector(SeleniumHelper.AutomationId("continue_with_delete_button"))).Click();
            Thread.Sleep(2000);
        }
        //Method to check whether Template Name text field is accessbile
        public bool IsTemplateNameAccessible()
        {
            if (new TemplateSearchScreen().IsCreateNewTemplateDisplayed())
            {
                Thread.Sleep(200);
                createNewTemplate.Click();
                BaseSeleniumComponents.WaitUntilDisplayed(By.Name("NameOfTemplate"));
                String randomName = TemplateSearchScreen.RandomString(5);
                templateName.SendKeys(randomName);

                bool returnVal = templateName.GetAttribute("value") == randomName;
                //TemplateSearchScreen.closeManageMsgTab(manageMsgCloseTab, manageMsgWarningDontSave);
                return(returnVal);
            }
            else
            {
                return(false);
            }
        }
Exemple #18
0
 /// <summary>
 /// Delete pupil
 /// </summary>
 /// <param name="pupilID"></param>
 public static void DeletePupil(List <Guid> pupilIDs)
 {
     SeleniumHelper.NavigateMenu("Tasks", "Pupils", "Delete Pupil");
     WebContext.Screenshot();
     SeleniumHelper.FindAndClick(DataExchangeElement.PupilRecordLeaverCheckBox);
     SearchCriteria.Search();
     WebContext.Screenshot();
     foreach (Guid pupilID in pupilIDs)
     {
         SeleniumHelper.FindAndClick(DataExchangeElement.DeletePupilResult(TestDefaults.Default.Path,
                                                                           pupilID.ToString()));
         WebContext.Screenshot();
         SeleniumHelper.FindAndClick(DataExchangeElement.PupilDeleteButton);
         WebContext.Screenshot();
         BaseSeleniumComponents.WaitForAndClick(BrowserDefaults.TimeOut,
                                                DataExchangeElement.PupilConfirmationButton);
     }
     //SeleniumHelper.FindAndClick(DataExchangeElement.CloseTabButton);
     //WebContext.Screenshot();
 }
Exemple #19
0
        public string CreateNewApplication(string forename, string surname, string gender, string dateOfBirth, string admissionGroup)
        {
            SeleniumHelper.Get(By.CssSelector("a[title=\"Add New Application\"] > span.toolbar-text")).Click();
            Thread.Sleep(2000);
            SeleniumHelper.Get(By.Name("LegalForename")).Clear();
            SeleniumHelper.Get(By.Name("LegalForename")).SendKeys(forename);

            SeleniumHelper.Get(By.Name("LegalSurname")).Clear();
            SeleniumHelper.Get(By.Name("LegalSurname")).SendKeys(surname);

            By loc = By.Name("Gender.dropdownImitator");

            BaseSeleniumComponents.WaitForAndGet(loc);
            SeleniumHelper.Get(loc).ChooseSelectorOption(gender);

            SeleniumHelper.Get(By.Name("DateOfBirth")).Clear();
            SeleniumHelper.Get(By.Name("DateOfBirth")).SendKeys(dateOfBirth);

            SeleniumHelper.Get(By.CssSelector(SeleniumHelper.AutomationId("continue_button"))).Click();
            Thread.Sleep(1000);

            loc = By.CssSelector("div[data-section-id='dialog-detail'] [name='AdmissionGroup.dropdownImitator']");
            BaseSeleniumComponents.WaitForAndGet(loc).ChooseSelectorOption(admissionGroup);

            loc = By.Name("EnrolmentStatus.dropdownImitator");
            BaseSeleniumComponents.WaitForAndGet(loc).ChooseSelectorOption("Single Registration");

            SeleniumHelper.Get(By.CssSelector(SeleniumHelper.AutomationId("create_record_button"))).Click();
            Thread.Sleep(5000);

            var afterSpliItems = SeleniumHelper.Get(By.CssSelector(SeleniumHelper.AutomationId("well_know_action_save")))
                                 .GetAttribute("data-ajax-url")
                                 .Split('/')
                                 .ToList();
            string learner_id = afterSpliItems.LastOrDefault();

            return(learner_id);
        }
        public static void FindAndSetCheckBox(string css, bool @checked)
        {
            var element = BaseSeleniumComponents.WaitForAndGet(BrowserDefaults.TimeOut, By.CssSelector(css));

            var checkedValue = element.GetAttribute("checked");

            if (@checked)
            {
                //Assuming NULL means unchecked.
                if (checkedValue == null)
                {
                    element.Click();
                }
            }
            else
            {
                //Assuming !NULL means checked.
                if (checkedValue != null)
                {
                    element.Click();
                }
            }
        }
Exemple #21
0
        public void ValUniqueTemplateNameAndPurpose()
        {
            //TemplateSearchScreen ScreenObj = TemplateScreenNavigation.NavigateToTemplateMenuPage();
            String[]             featureList = { "SendMessage", "ManageTemplate" };
            TemplateSearchScreen ScreenObj   = TemplateScreenNavigation.NavigateToTemplateMenuPageFeatureBee(featureList);

            //Create a new template first.
            string tName = "ValU" + TemplateSearchScreen.RandomString(5);

            ScreenObj.CreateMessageTemplate(tName, "General");

            //Try and make new template with same name.
            TemplateScreenNavigation.CloseManageMessageTemplateTab();

            TemplateScreenNavigation.NavigateToTemplateMenuPage(false);
            bool assertVal = ScreenObj.CreateMessageTemplate(tName, "General");

            POM.Helper.SeleniumHelper.ClickByJS(ScreenObj.cancelTemplate);
            BaseSeleniumComponents.WaitUntilDisplayed(By.CssSelector(POM.Helper.SeleniumHelper.AutomationId("ignore_commit_dialog")));
            System.Threading.Thread.Sleep(2000);
            POM.Helper.SeleniumHelper.ClickByJS(ScreenObj.cancelTemplateDontSave);
            ScreenObj.DeleteTemplate(tName);
            Assert.False(assertVal);
        }
Exemple #22
0
        public string CreateNewSchoolIntake(string admissionYear, string admissionTerm, string yearGroup, string plannedAdmissions, string schoolIntakeName, string admissionGroupName, string dateOfAdmission, string capacity)
        {
            // Intake Group
            Thread.Sleep(1000);
            SeleniumHelper.Get(By.CssSelector(SeleniumHelper.AutomationId("add_button"))).Click();
            Thread.Sleep(1000);

            var loc = By.CssSelector("div[data-section-id='IntakeDetailsDependenciesSection'] [name='YearOfAdmission.dropdownImitator']");

            BaseSeleniumComponents.WaitForAndGet(loc).ChooseSelectorOption(admissionYear);
            Thread.Sleep(1000);

            loc = By.Name("AdmissionTerm.dropdownImitator");
            BaseSeleniumComponents.WaitForAndGet(loc).ChooseSelectorOption(admissionTerm);
            Thread.Sleep(1000);

            loc = By.CssSelector("div[data-section-id='IntakeDetailsDependenciesSection'] [name='YearGroup.dropdownImitator']");
            BaseSeleniumComponents.WaitForAndGet(loc).ChooseSelectorOption(yearGroup);
            Thread.Sleep(1000);

            var plannedAdmissionNumber = SeleniumHelper.Get(By.Name("PlannedAdmissionNumber"));

            plannedAdmissionNumber.Clear();
            plannedAdmissionNumber.SendKeys(plannedAdmissions);

            Thread.Sleep(1000);
            loc = By.CssSelector("div[data-section-id='IntakeDetailsDependenciesSection'] [name='Name']");
            var name = SeleniumHelper.Get(loc);

            name.Clear();
            name.SendKeys(schoolIntakeName);


            // Admission Group
            Thread.Sleep(1000);
            loc = By.CssSelector("input[name$='.Name'");
            var admissionGroupGridName = SeleniumHelper.Get(loc);

            admissionGroupGridName.Clear();
            admissionGroupGridName.SendKeys(admissionGroupName);

            loc = By.CssSelector("input[name$='.DateOfAdmission'");
            var admissionGroupGridDateOfAdmission = SeleniumHelper.Get(loc);

            admissionGroupGridDateOfAdmission.Clear();
            admissionGroupGridDateOfAdmission.SendKeys(dateOfAdmission);

            loc = By.CssSelector("input[name$='.Capacity'");
            var admissionGroupGridCapacity = SeleniumHelper.Get(loc);

            admissionGroupGridCapacity.Clear();
            admissionGroupGridCapacity.SendKeys(capacity);

            Thread.Sleep(1000);
            SeleniumHelper.Get(By.CssSelector(SeleniumHelper.AutomationId("well_know_action_save"))).Click();

            // New confirmation dialog box
            Thread.Sleep(2000);
            SeleniumHelper.Get(By.CssSelector(SeleniumHelper.AutomationId("yes,_update_any_associated_applications_button")))
            .Click();

            var afterSpliItems = SeleniumHelper.Get(By.CssSelector(SeleniumHelper.AutomationId("well_know_action_save")))
                                 .GetAttribute("data-ajax-url")
                                 .Split('/')
                                 .ToList();
            string schoolIntakeId = afterSpliItems.LastOrDefault();

            return(schoolIntakeId);
        }
Exemple #23
0
 public void WaitForDialogToAppear()
 {
     BaseSeleniumComponents.WaitUntilDisplayed(By.CssSelector(SeleniumHelper.AutomationId(cssforNamePopUp)));
 }
Exemple #24
0
 public void Confirmation()
 {
     BaseSeleniumComponents.WaitForAndClick(BrowserDefaults.TimeOut, AttendanceElements.ExceptionalCircumstanceElements.ConfirmationYes);
     //Wait.WaitForAjaxReady(By.CssSelector(".locking-mask"));
 }
Exemple #25
0
 public bool IsSuccessMessageDisplayed()
 {
     BaseSeleniumComponents.WaitUntilEnabled(AgentElements.MainScreen.SuccessMessage);
     return(SuccessMessage.Displayed);
 }
Exemple #26
0
 public void WaitForStatus()
 {
     //   Thread.Sleep(2000);
     BaseSeleniumComponents.WaitUntilDisplayed(new TimeSpan(0, 0, 0, 5), By.CssSelector(SeleniumHelper.AutomationId(StatusSuccess)));
 }
 public MatchingAgentScreen()
 {
     BaseSeleniumComponents.WaitUntilDisplayed(AgentElements.MatchingAgentScreen.New_Agent_Button);
     PageFactory.InitElements(WebContext.WebDriver, this);
 }
Exemple #28
0
 public AddNewAgentDialog()
 {
     BaseSeleniumComponents.WaitUntilDisplayed(AgentElements.MainScreen.AgentForename);
     PageFactory.InitElements(WebContext.WebDriver, this);
 }
Exemple #29
0
 public AddressBookPopup()
 {
     BaseSeleniumComponents.WaitUntilDisplayed(By.CssSelector(SeleniumHelper.AutomationId(cssforNamePopUp))); //Parul: Make changes in this as it wont be pupil always
     PageFactory.InitElements(WebContext.WebDriver, this);
 }
Exemple #30
0
 public void WaitForConfirmationDialogToAppear()
 {
     BaseSeleniumComponents.WaitUntilDisplayed(SeleniumHelper.SelectByDataAutomationID("save_continue_commit_dialog"));
 }