public void ATC3338_CRMClientFilterPhoneNumbers() { //Login in as role User user = this.environment.GetUser(SecurityRole.GeneralStaff); new LoginDialog().Login(user.Id, user.Password); string clientName = "FILTER PHONE" + UICommon.GetRandomString(3); HomePage homePage = new HomePage(driver); string HomeWindow = driver.CurrentWindowHandle; homePage.HoverCRMRibbonTab(); homePage.ClickClientServicesRibbonButton(); homePage.HoverClientServicesRibbonTab(); homePage.ClickClientsRibbonButton(); ClientsSearchPage clientsSearchPage = new ClientsSearchPage(driver); clientsSearchPage.ClickNewClientButton(); ClientPage clientPage = new ClientPage(driver); clientPage.ClickPageTitle(); clientPage.SetFamilyName(clientName); //clientPage.PopulateNewClient(clientName); clientPage.ClickSaveButton(); //Navigate to client phone numbers driver = driver.SwitchTo().Window(HomeWindow); homePage.HoverClientXRibbonTab(clientName); homePage.ClickClientXPhoneNumbersRibbonButton(); //Add new phone numbers clientPage = new ClientPage(driver); string BaseWindow = driver.CurrentWindowHandle; clientPage.ClickAddNewClientPhoneImage(); //Enter payment reference details driver = UICommon.SwitchToNewBrowserWithTitle(driver, BaseWindow, "Client Phone Number"); //Assert availability list ClientPhoneNumberPage clientPhoneNumberPage = new ClientPhoneNumberPage(driver); //Create Fixed Line Number //clientPhoneNumberPage.ClickTypeList(); clientPhoneNumberPage.SetTypeListValue("Fixed Line"); //clientPhoneNumberPage.ClickAreaCodeElement(); clientPhoneNumberPage.SetAreaCodeValue("07"); //clientPhoneNumberPage.ClickPhoneNumberElement(); clientPhoneNumberPage.SetPhoneNumberValue("11111111"); clientPhoneNumberPage.ClickSaveButton(); //Assert new phone number has saved string FixedLineNumber = clientPhoneNumberPage.GetPhoneNumber(); clientPhoneNumberPage.ClickNewButton(); clientPhoneNumberPage.ClickPageTitle(); clientPhoneNumberPage.SetClientNameList(clientName); //clientPhoneNumberPage.ClickTypeList(); clientPhoneNumberPage.SetTypeListValue("Mobile"); //clientPhoneNumberPage.ClickPhoneNumberElement(); clientPhoneNumberPage.SetPhoneNumberValue("0422222222"); clientPhoneNumberPage.ClickSaveButton(); //Assert new phone number has saved string MobileNumber = clientPhoneNumberPage.GetPhoneNumber(); clientPhoneNumberPage.ClickNewButton(); clientPhoneNumberPage.ClickPageTitle(); clientPhoneNumberPage.SetClientNameList(clientName); //clientPhoneNumberPage.ClickTypeList(); clientPhoneNumberPage.SetTypeListValue("Fax"); //clientPhoneNumberPage.ClickAreaCodeElement(); clientPhoneNumberPage.SetAreaCodeValue("07"); //clientPhoneNumberPage.ClickPhoneNumberElement(); clientPhoneNumberPage.SetPhoneNumberValue("33333333"); clientPhoneNumberPage.ClickSaveButton(); //Assert new phone number has saved string FaxNumber = clientPhoneNumberPage.GetPhoneNumber(); clientPhoneNumberPage.ClickNewButton(); clientPhoneNumberPage.ClickPageTitle(); clientPhoneNumberPage.SetClientNameList(clientName); //clientPhoneNumberPage.ClickTypeList(); clientPhoneNumberPage.SetTypeListValue("Pager"); //clientPhoneNumberPage.ClickAreaCodeElement(); clientPhoneNumberPage.SetAreaCodeValue("07"); //clientPhoneNumberPage.ClickPhoneNumberElement(); clientPhoneNumberPage.SetPhoneNumberValue("44444444"); clientPhoneNumberPage.ClickSaveButton(); //Assert new phone number has saved string PagerNumber =clientPhoneNumberPage.GetPhoneNumber(); clientPhoneNumberPage.ClickSaveCloseButton(); clientPhoneNumberPage.ClickSaveCloseButton(); clientPhoneNumberPage.ClickSaveCloseButton(); clientPhoneNumberPage.ClickSaveCloseButton(); driver = driver.SwitchTo().Window(HomeWindow); homePage.ClickClientXRibbonTab(clientName); clientPage = new ClientPage(driver); // Select Personal Mobile field -> only mobile phone number for client can be selected clientPage.ClickPageTitle(); clientPage.OpenMobileNumbeDropDown(); Assert.IsTrue(clientPage.VerifyMobileNumberOptionPresent(MobileNumber), "Mobile Phone number seen for Personal Mobile Field !!!"); Assert.IsFalse(clientPage.VerifyMobileNumberOptionPresent(FixedLineNumber), "Fixed Line number seen for Personal Mobile Field !!!"); Assert.IsFalse(clientPage.VerifyMobileNumberOptionPresent(FaxNumber), "Fax number seen for Personal Mobile Field !!!"); Assert.IsFalse(clientPage.VerifyMobileNumberOptionPresent(PagerNumber), "Pager number seen for Personal Mobile Field !!!"); // Personal Preferred field -> only mobile,fax, fixed line or pager phone number for client can be selected clientPage.ClickPageTitle(); clientPage.OpenPersonalPreferredNumbeDropDown(); Assert.IsTrue(clientPage.VerifyPersonalPreferredNumberOptionPresent(MobileNumber), "Mobile Phone number NOT seen for Personal Preferred field !!!"); Assert.IsTrue(clientPage.VerifyPersonalPreferredNumberOptionPresent(FixedLineNumber), "Fixed Line number NOT seen for Personal Preferred field !!!"); Assert.IsTrue(clientPage.VerifyPersonalPreferredNumberOptionPresent(FaxNumber), "Fax number NOT seen for Personal Preferred field !!!"); Assert.IsTrue(clientPage.VerifyPersonalPreferredNumberOptionPresent(PagerNumber), "Pager number NOT seen for Personal Preferred field !!!"); // Work Preferred field -> only mobile,fax, fixed line or pager phone number for client can be selected clientPage.ClickPageTitle(); clientPage.OpenWorkPreferredNumbeDropDown(); Assert.IsTrue(clientPage.VerifyWorkPreferredOptionPresent(MobileNumber), "Mobile Phone number NOT seen for Work Preferred field !!!"); Assert.IsTrue(clientPage.VerifyWorkPreferredOptionPresent(FixedLineNumber), "Fixed Line number NOT seen for Work Preferred field !!!"); Assert.IsTrue(clientPage.VerifyWorkPreferredOptionPresent(FaxNumber), "Fax number NOT seen for Work Preferred field !!!"); Assert.IsTrue(clientPage.VerifyWorkPreferredOptionPresent(PagerNumber), "Pager number NOT seen for Work Preferred field !!!"); // Home / Main Phone field -> only mobile,fax, fixed line or pager phone number for client can be selected clientPage.ClickPageTitle(); clientPage.OpenHomeMainPhoneNumbeDropDown(); Assert.IsTrue(clientPage.VerifyHomeMainPhoneOptionPresent(MobileNumber), "Mobile Phone number NOT seen for Home / Main Phone field !!!"); Assert.IsTrue(clientPage.VerifyHomeMainPhoneOptionPresent(FixedLineNumber), "Fixed Line number NOT seen for Home / Main Phone field !!!"); Assert.IsTrue(clientPage.VerifyHomeMainPhoneOptionPresent(FaxNumber), "Fax number NOT seen for Home / Main Phone field !!!"); Assert.IsTrue(clientPage.VerifyHomeMainPhoneOptionPresent(PagerNumber), "Pager number NOT seen for Home / Main Phone field !!!"); // Fax field -> only fax or fixed line phone number for client can be selected clientPage.ClickPageTitle(); clientPage.OpenFaxPhoneNumbeDropDown(); Assert.IsFalse(clientPage.VerifyFaxOptionPresent(MobileNumber), "Mobile Phone number seen for Fax field !!!"); Assert.IsTrue(clientPage.VerifyFaxOptionPresent(FixedLineNumber), "Fixed Line number NOT seen for Fax field !!!"); Assert.IsTrue(clientPage.VerifyFaxOptionPresent(FaxNumber), "Fax number NOT seen for Fax field !!!"); Assert.IsFalse(clientPage.VerifyFaxOptionPresent(PagerNumber), "Pager number seen for Fax field !!!"); }