public void ATC3313_CRMInvestigationAddAndDeactivateCaseParty() { User user = this.environment.GetUser(SecurityRole.InvestigationOfficer); new LoginDialog().Login(user.Id, user.Password); string ClientName = "CLIENT CASE" + UICommon.GetRandomString(3); // Create Investigation Case HomePage homePage = new HomePage(driver); string HomeWindowInv = driver.CurrentWindowHandle; homePage.HoverCRMRibbonTab(); homePage.ClickInvestigationsRibbonButton(); homePage.HoverInvestigationsRibbonTab(); homePage.ClickInvestigationsCasesRibbonButton(); // Verify that Investigation Officer is able to record Phone call for Investigation Case InvestigationCaseSearchPage investigationsCaseSearchPage = new InvestigationCaseSearchPage(driver); investigationsCaseSearchPage.ClickNewInvestigationCaseButton(); // Create new Investigation case InvestigationCasePage investigationCasePage = new InvestigationCasePage(driver); investigationCasePage.ClickSaveButton(); String investigationID = investigationCasePage.GetInvestigationCaseNumber(); string InvWindow = driver.CurrentWindowHandle; IWebDriver ClientDriver = null; // Spawn a new window and open a Client record if (Properties.Settings.Default.BROWSER == BrowserType.Ie) { ClientDriver = new BrowserContext().WebDriver; this.environment = TestEnvironment.GetTestEnvironment(); } ClientDriver.Navigate().GoToUrl(this.environment.Url); new LoginDialog().Login(user.Id, user.Password); // Create new Client Profile homePage = new HomePage(ClientDriver); string HomeWindowClient = ClientDriver.CurrentWindowHandle; homePage.HoverCRMRibbonTab(); homePage.ClickClientServicesRibbonButton(); homePage.HoverClientServicesRibbonTab(); homePage.ClickClientsRibbonButton(); ClientsSearchPage clientsSearchPage = new ClientsSearchPage(ClientDriver); Trace.Listeners.Add(new TextWriterTraceListener("TextWriterOutput.log", "myListener")); Trace.TraceInformation("Add Client Case Party start:" + DateTime.Now.ToString("ddMMyyyyhhmmssffff")); Trace.Flush(); clientsSearchPage.ClickNewClientButton(); ClientPage clientPage = new ClientPage(ClientDriver); clientPage.ClickPageTitle(); clientPage.PopulateNewClient(ClientName); clientPage.ClickSaveCloseButton(); string ClientWindow = ClientDriver.CurrentWindowHandle; // ADD the Client from the second open window as a Case Party to the Investigation Case driver.SwitchTo().Window(InvWindow); investigationCasePage = new InvestigationCasePage(driver); string BaseWindow = driver.CurrentWindowHandle; investigationCasePage.ClickAddCasePartyRecordButton(); investigationCasePage.SwitchNewBrowserWithTitle(driver, BaseWindow, "Case Party"); CasePartyPage casePartyPage = new CasePartyPage(driver); casePartyPage.ClickPageTitle(); casePartyPage.ClickPartyType(); Assert.IsTrue(casePartyPage.VerifyCasePartyTypeExists("Bond Contributor"), "Bond Contributor option not seen!!!"); Assert.IsTrue(casePartyPage.VerifyCasePartyTypeExists("Tenant"), "Tenant option not seen!!!"); Assert.IsTrue(casePartyPage.VerifyCasePartyTypeExists("Resident"), "Resident option not seen!!!"); Assert.IsTrue(casePartyPage.VerifyCasePartyTypeExists("Agent"), "Agent option not seen!!!"); Assert.IsTrue(casePartyPage.VerifyCasePartyTypeExists("Lessor"), "Lessor option not seen!!!"); Assert.IsTrue(casePartyPage.VerifyCasePartyTypeExists("Rooming Accommodation Provider"), "Rooming Accommodation Provider option not seen!!!"); Assert.IsTrue(casePartyPage.VerifyCasePartyTypeExists("Student Accommodation Provider"), "Student Accommodation Provider option not seen!!!"); Assert.IsTrue(casePartyPage.VerifyCasePartyTypeExists("Moveable Dwelling Provider"), "Moveable Dwelling Provider option not seen!!!"); Assert.IsTrue(casePartyPage.VerifyCasePartyTypeExists("Community Housing Organisation"), "Community Housing Organisation option not seen!!!"); Assert.IsTrue(casePartyPage.VerifyCasePartyTypeExists("Owner"), "Owner option not seen!!!"); Trace.Listeners.Add(new TextWriterTraceListener("TextWriterOutput.log", "myListener")); Trace.TraceInformation("Add Case Party end:" + DateTime.Now.ToString("ddMMyyyyhhmmssffff")); Trace.Flush(); casePartyPage.ClickPageTitle(); casePartyPage.SetClientName(ClientName); casePartyPage.ClickSaveCloseButton(); driver = driver.SwitchTo().Window(BaseWindow); investigationCasePage.CheckForErrors(); investigationCasePage.ClickSaveCloseButton(); // Verify new Case Management Activity is shown in the Investigation Case which documents that the Case Party was added and by whom. investigationsCaseSearchPage = new InvestigationCaseSearchPage(driver); investigationsCaseSearchPage.SetSearchRecord(investigationID); Table table = new Table(investigationsCaseSearchPage.GetSearchResultTable()); table.ClickCellValue("Case Number", investigationID, "Case Number"); driver = driver.SwitchTo().Window(BaseWindow); investigationCasePage.ClickPageTitle(); table = new Table(investigationCasePage.GetActivitiesSearchResultTable()); StringAssert.Contains(table.GetCellContainsValue("Subject", "Case party " + ClientName + " added to case " + investigationID, "Activity Status"), "Completed"); InvWindow = driver.CurrentWindowHandle; //Client window ClientDriver = ClientDriver.SwitchTo().Window(ClientWindow); clientsSearchPage = new ClientsSearchPage(ClientDriver); clientsSearchPage.SetClientSearchText(ClientName); table = new Table(clientsSearchPage.GetSearchResultTable()); table.ClickCellValue("Full Name", ClientName, "Full Name"); clientPage = new ClientPage(ClientDriver); Thread.Sleep(3000); clientPage.ClickSeeRecordsAssociatedWithThisViewButton("Activities"); clientPage.SwitchToFrame(); clientPage.SetPageFilterList("All Activities", ClientDriver); clientPage.SetFilterOnList("All", ClientDriver); table = new Table(clientPage.GetActivitiesAssociatedViewTable(ClientDriver)); StringAssert.Contains(table.GetCellValue("Subject", "Case party " + ClientName + " added to case " + investigationID, "Activity Status"), "Completed"); ClientWindow = ClientDriver.CurrentWindowHandle; // DEACTIVATE the Case Party by opening the Case Party Associated View and running the Dialog. driver = driver.SwitchTo().Window(InvWindow); investigationCasePage = new InvestigationCasePage(driver); investigationCasePage.ClickPageTitle(); table = new Table(investigationCasePage.GetCasePartyTable()); table.ClickCellContainsValueEnterRow("Client", ClientName, "Party Type"); casePartyPage = new CasePartyPage(driver); casePartyPage.ClickPageTitle(); casePartyPage.ClickSaveButton(); casePartyPage.ClickStartDialog(); table = new Table(casePartyPage.GetProcessSearchResultTable()); table.ClickCell("Process Name", "INV: Deactivate case party", "Created On"); BaseWindow = driver.CurrentWindowHandle; casePartyPage.ClickDialogAddButton(); driver = UICommon.SwitchToNewBrowserWithTitle(driver, BaseWindow, "INV:"); INVPage INV = new INVPage(driver); INV.ClickNextButton(); INV.ClickFinishButton(); driver = driver.SwitchTo().Window(BaseWindow); casePartyPage.ClickSaveCloseButton(); investigationCasePage = new InvestigationCasePage(driver); investigationCasePage.ClickPageTitle(); table = new Table(investigationCasePage.GetActivitiesSearchResultTable()); StringAssert.Contains(table.GetCellContainsValue("Subject", "Case party " + ClientName + " removed from case " + investigationID, "Activity Status"), "Completed"); // A new Case Management Activity is shown in the Client which documents that the Case Party was removed and by whom. ClientDriver = ClientDriver.SwitchTo().Window(ClientWindow); ClientDriver = ClientDriver.SwitchTo().Window(HomeWindowClient); homePage.HoverCRMRibbonTab(); homePage.ClickClientServicesRibbonButton(); homePage.HoverClientServicesRibbonTab(); homePage.ClickClientsRibbonButton(); clientsSearchPage = new ClientsSearchPage(ClientDriver); clientsSearchPage.SetClientSearchText(ClientName); table = new Table(clientsSearchPage.GetSearchResultTable()); table.ClickCellValue("Full Name", ClientName, "Full Name"); clientPage = new ClientPage(ClientDriver); clientPage.ClickPageTitle(); clientPage.ClickSeeRecordsAssociatedWithThisViewButton("Activities"); clientPage.SwitchToFrame(); clientPage.SetPageFilterList("All Activities", ClientDriver); clientPage.SetFilterOnList("All", ClientDriver); table = new Table(clientPage.GetActivitiesAssociatedViewTable(ClientDriver)); StringAssert.Contains(table.GetCellValue("Subject", "Case party " + ClientName + " removed from case " + investigationID, "Activity Status"), "Completed"); }
public void ATC3309_CRMInvestigationVerifyOfficerCanRecordPhoneCalls() { #region Start Up Excel MyBook = MyApp.Workbooks.Open(DatasourceDir + @"\Investigations.xlsx", 0, false, 5, "", "", true, Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0); MySheet = (Excel.Worksheet)MyBook.Sheets[Properties.Settings.Default.ENVIRONMENT.ToString()]; MyRange = MySheet.UsedRange; //Get specific row for the data int testDataRows = MyRange.Rows.Count; int MyRow = 0; for (int i = 2; i <= testDataRows; i++) { if (MyRange.Cells[i, 1].Value.ToString() == "ClientTestData") { MyRow = i; break; } } #endregion string clientName = MyRange.Cells[MyRow, InvestigationSchema.GetColumnIndex(ColumnName.CLIENT_NAME)].Value; User user = this.environment.GetUser(SecurityRole.InvestigationOfficer); new LoginDialog().Login(user.Id, user.Password); // Create Investigation Case HomePage homePage = new HomePage(driver); string HomeWindow = driver.CurrentWindowHandle; homePage.HoverCRMRibbonTab(); homePage.ClickInvestigationsRibbonButton(); homePage.HoverInvestigationsRibbonTab(); homePage.ClickInvestigationsCasesRibbonButton(); // Verify that Investigation Officer is able to record Phone call for Investigation Case InvestigationCaseSearchPage investigationsCaseSearchPage = new InvestigationCaseSearchPage(driver); investigationsCaseSearchPage.ClickNewInvestigationCaseButton(); // Create new case InvestigationCasePage investigationCasePage = new InvestigationCasePage(driver); string BaseWindow = driver.CurrentWindowHandle; investigationCasePage.ClickSaveButton(); String investigationID = investigationCasePage.GetInvestigationCaseNumber(); //Phone Call investigationCasePage.ClickPageTitle(); investigationCasePage.ClickActivitiesAddButton(); investigationCasePage.ClickAddActivity("Phone Call"); driver = investigationCasePage.SwitchNewBrowserWithTitle(driver, BaseWindow, "Phone Call"); PhoneCallPage phoneCall = new PhoneCallPage(driver); phoneCall.ClickPageTitle(); phoneCall.SetSelectSubjectValue("Bond balance enquiry"); phoneCall.SetSubject("Test 3309 Phone Call"); phoneCall.SetRecipient(clientName); phoneCall.ClickSaveCloseButton(); driver = driver.SwitchTo().Window(BaseWindow); investigationCasePage.CheckForErrors(); investigationCasePage.ClickPageTitle(); Table table = new Table(investigationCasePage.GetActivitiesSearchResultTable()); StringAssert.Contains(table.GetCellContainsValue("Subject", "Test 3309 Phone Call", "Owner"), "IMSTestU03"); table.ClickCellValue("Subject", "Test 3309 Phone Call", "Subject"); phoneCall = new PhoneCallPage(driver); phoneCall.SwitchFrame(); StringAssert.Contains(phoneCall.GetSelectSubjectValue(), "Bond balance enquiry"); StringAssert.Contains(phoneCall.GetSubjectValue(), "Test 3309 Phone Call"); StringAssert.Contains(phoneCall.GetRecipientValue(), clientName); StringAssert.Contains(phoneCall.GetSenderValue(), user.Id); // Verify that Investigation Officer is able to record Phone call for Client driver = driver.SwitchTo().Window(HomeWindow); homePage.HoverCRMRibbonTab(); homePage.ClickClientServicesRibbonButton(); homePage.HoverClientServicesRibbonTab(); homePage.ClickClientsRibbonButton(); ClientsSearchPage clientsSearchPage = new ClientsSearchPage(driver); clientsSearchPage.ClickNewClientButton(); ClientPage clientPage = new ClientPage(driver); BaseWindow = driver.CurrentWindowHandle; clientPage.ClickPageTitle(); clientPage.PopulateNewClient("Client Phone Record"); clientPage.ClickSaveButton(); clientPage.ClickActivitiesAddButton(); clientPage.ClickAddActivity("Phone Call"); Thread.Sleep(3000); driver = clientPage.SwitchNewBrowser(driver, BaseWindow, "Phone Call"); phoneCall = new PhoneCallPage(driver); phoneCall.ClickPageTitle(); phoneCall.SetSelectSubjectValue("Bond balance enquiry"); phoneCall.SetSubject("Test 3309 Client Phone Call"); phoneCall.SetRecipient(clientName); phoneCall.ClickSaveCloseButton(); driver = driver.SwitchTo().Window(BaseWindow); phoneCall.CheckForErrors(); clientPage.ClickPageTitle(); table = new Table(clientPage.GetActivitiesTable()); StringAssert.Contains(table.GetCellContainsValue("Subject", "Test 3309 Client Phone Call", "Owner"), "IMSTestU03"); table.ClickCellValue("Subject", "Test 3309 Client Phone Call", "Subject"); phoneCall = new PhoneCallPage(driver); StringAssert.Contains(phoneCall.GetSelectSubjectValue(), "Bond balance enquiry"); StringAssert.Contains(phoneCall.GetSubjectValue(), "Test 3309 Client Phone Call"); StringAssert.Contains(phoneCall.GetRecipientValue(), clientName); StringAssert.Contains(phoneCall.GetSenderValue(), user.Id); // Verify that Investigation Officer is able to record Phone call for General Case homePage.HoverCRMRibbonTab(); homePage.ClickInvestigationsRibbonButton(); homePage.HoverInvestigationsRibbonTab(); homePage.ClickInvestigationsGeneralCasesRibbonButton(); InvestigationGeneralCaseSearchPage invGeneralCaseSearchPage = new InvestigationGeneralCaseSearchPage(driver); invGeneralCaseSearchPage.ClickNewGeneralCaseButton(); InvestigationGeneralCasePage investigationGeneralCasePage = new InvestigationGeneralCasePage(driver); BaseWindow = driver.CurrentWindowHandle; investigationGeneralCasePage.ClickPageTitle(); investigationGeneralCasePage.SetTitle("New General Case"); investigationGeneralCasePage.SetClientName(clientName); investigationGeneralCasePage.SetType("Complaint"); investigationGeneralCasePage.ClickSaveButton(); investigationGeneralCasePage.ClickActivitiesAddButton(); investigationGeneralCasePage.ClickAddActivity("Phone Call"); driver = investigationGeneralCasePage.SwitchNewBrowserWithTitle(driver, BaseWindow, "Phone Call"); phoneCall = new PhoneCallPage(driver); phoneCall.ClickPageTitle(); phoneCall.SetSelectSubjectValue("Bond balance enquiry"); phoneCall.SetSubject("Test 3309 General Case Phone Call"); phoneCall.SetRecipient(clientName); phoneCall.ClickSaveCloseButton(); driver = driver.SwitchTo().Window(BaseWindow); phoneCall.CheckForErrors(); investigationGeneralCasePage.ClickPageTitle(); table = new Table(investigationGeneralCasePage.GetActivitiesTable()); StringAssert.Contains(table.GetCellContainsValue("Subject", "Test 3309 General Case Phone Call", "Owner"), "IMSTestU03"); table.ClickCellValue("Subject", "Test 3309 General Case Phone Call", "Subject"); phoneCall = new PhoneCallPage(driver); StringAssert.Contains(phoneCall.GetSelectSubjectValue(), "Bond balance enquiry"); StringAssert.Contains(phoneCall.GetSubjectValue(), "Test 3309 General Case Phone Call"); StringAssert.Contains(phoneCall.GetRecipientValue(), clientName); StringAssert.Contains(phoneCall.GetSenderValue(), user.Id); #region Shut down Excel MyBook.Save(); MyBook.Close(); MyApp.Quit(); #endregion }
public void ATC3312_CRMInvestigationCaseCloseAndReopen() { //There is only 1 string InvestigationWindowHandle; // for driver string ClientWindowHandle; // for ClientDriver string ClientName = "CLIENT CASE" + UICommon.GetRandomString(3); User user = this.environment.GetUser(SecurityRole.InvestigationOfficer); new LoginDialog().Login(user.Id, user.Password); // Create Investigation Case HomePage homePageInvestigation = new HomePage(driver); InvestigationWindowHandle = driver.CurrentWindowHandle; homePageInvestigation.HoverCRMRibbonTab(); homePageInvestigation.ClickInvestigationsRibbonButton(); homePageInvestigation.HoverInvestigationsRibbonTab(); homePageInvestigation.ClickInvestigationsCasesRibbonButton(); // Verify that Investigation Officer is able to record Phone call for Investigation Case InvestigationCaseSearchPage investigationsCaseSearchPage = new InvestigationCaseSearchPage(driver); investigationsCaseSearchPage.ClickNewInvestigationCaseButton(); // Create new Investigation case InvestigationCasePage investigationCasePage = new InvestigationCasePage(driver); investigationCasePage.ClickSaveButton(); String investigationID = investigationCasePage.GetInvestigationCaseNumber(); IWebDriver ClientDriver = null; // Spawn a new window and open a Client record if (Properties.Settings.Default.BROWSER == BrowserType.Ie) { ClientDriver = new BrowserContext().WebDriver; this.environment = TestEnvironment.GetTestEnvironment(); } ClientDriver.Navigate().GoToUrl(this.environment.Url); new LoginDialog().Login(user.Id, user.Password); // Create new Client Profile HomePage homePageClient = new HomePage(ClientDriver); ClientWindowHandle = ClientDriver.CurrentWindowHandle; homePageClient.HoverCRMRibbonTab(); homePageClient.ClickClientServicesRibbonButton(); homePageClient.HoverClientServicesRibbonTab(); homePageClient.ClickClientsRibbonButton(); ClientsSearchPage clientsSearchPage = new ClientsSearchPage(ClientDriver); clientsSearchPage.ClickNewClientButton(); ClientPage clientPage = new ClientPage(ClientDriver); clientPage.ClickPageTitle(); clientPage.PopulateNewClient(ClientName); clientPage.ClickSaveCloseButton(); Thread.Sleep(3000); clientsSearchPage = new ClientsSearchPage(ClientDriver); // ADD the Client from the second open window as a Case Party to the Investigation Case driver.SwitchTo().Window(InvestigationWindowHandle); investigationCasePage = new InvestigationCasePage(driver); investigationCasePage.ClickPageTitle(); investigationCasePage.ClickAddCasePartyRecordButton(); investigationCasePage.SwitchNewBrowserWithTitle(driver, InvestigationWindowHandle, "Case Party"); CasePartyPage casePartyPage = new CasePartyPage(driver); casePartyPage.ClickPageTitle(); casePartyPage.SetClientName(ClientName); casePartyPage.ClickSaveCloseButton(); Thread.Sleep(3000); driver = driver.SwitchTo().Window(InvestigationWindowHandle); investigationCasePage.ClickSaveCloseButton(); // Verify new Case Management Activity is shown in the Investigation Case which documents that the Case Party was added and by whom. investigationsCaseSearchPage = new InvestigationCaseSearchPage(driver); investigationsCaseSearchPage.SetSearchRecord(investigationID); Table table = new Table(investigationsCaseSearchPage.GetSearchResultTable()); table.ClickCellValue("Case Number", investigationID, "Case Number"); investigationCasePage = new InvestigationCasePage(driver); investigationCasePage.ClickPageTitle(); table = new Table(investigationCasePage.GetActivitiesSearchResultTable()); StringAssert.Contains(table.GetCellContainsValue("Subject", "Case party " + ClientName + " added to case " + investigationID, "Activity Status"), "Completed"); StringAssert.Contains(table.GetCellContainsValue("Subject", "Case party " + ClientName + " added to case " + investigationID, "Modified By"), "SRCRM5-TEAdmin Last Name"); //Client window ClientDriver = ClientDriver.SwitchTo().Window(ClientWindowHandle); clientsSearchPage = new ClientsSearchPage(ClientDriver); clientsSearchPage.SetClientSearchText(ClientName); table = new Table(clientsSearchPage.GetSearchResultTable()); table.ClickCellValue("Full Name", ClientName, "Full Name"); clientPage = new ClientPage(ClientDriver); clientPage.ClickSeeRecordsAssociatedWithThisViewButton("Activities"); clientPage.SwitchToFrame(); clientPage.SetPageFilterList("All Activities", ClientDriver); clientPage.SetFilterOnList("All", ClientDriver); table = new Table(clientPage.GetActivitiesAssociatedViewTable(ClientDriver)); StringAssert.Contains(table.GetCellValue("Subject", "Case party " + ClientName + " added to case " + investigationID, "Activity Status"), "Completed"); StringAssert.Contains(table.GetCellValue("Subject", "Case party " + ClientName + " added to case " + investigationID, "Modified By"), "SRCRM5-TEAdmin Last Name"); // Investigation Case window, SELECT Start Dialog and close the Investigation case driver.SwitchTo().Window(InvestigationWindowHandle); investigationCasePage = new InvestigationCasePage(driver); investigationCasePage.ClickPageTitle(); investigationCasePage.ClickStartDialogButton(); table = new Table(investigationCasePage.GetProcessSearchResultTable()); table.ClickCell("Process Name", "INV: Close investigation case", "Created On"); investigationCasePage.ClickDialogAddButton(); driver = UICommon.SwitchToNewBrowserWithTitle(driver, InvestigationWindowHandle, "INV:"); INVPage iNVPage = new INVPage(driver); iNVPage.ClickNextButton(); iNVPage.ClickNextButton(); iNVPage.ClickNextButton(); iNVPage.ClickFinishButton(); Thread.Sleep(3000); driver = driver.SwitchTo().Window(InvestigationWindowHandle); investigationCasePage = new InvestigationCasePage(driver); investigationCasePage.ClickSaveCloseButton(); // Investigation Case is shown as Inactive. A new Case Management Activity is shown in the Investigation Case which documents that the case was closed and by whom. investigationsCaseSearchPage = new InvestigationCaseSearchPage(driver); investigationsCaseSearchPage.SetPageFilterList("All Investigation Cases"); table = new Table(investigationsCaseSearchPage.GetHeaderSearchResultTable()); table.ClickTableColumnHeader("Case Number"); table = new Table(investigationsCaseSearchPage.GetSearchResultTable()); table.ClickCellValue("Case Number", investigationID, "Case Number"); investigationCasePage = new InvestigationCasePage(driver); investigationCasePage.ClickPageTitle(); StringAssert.Contains(investigationCasePage.GetStatus(), "Closed"); table = new Table(investigationCasePage.GetActivitiesSearchResultTable()); StringAssert.Contains(table.GetCellContainsValue("Subject", investigationID + " case closed: Act applies-Insufficient evidence", "Activity Status"), "Completed"); StringAssert.Contains(table.GetCellContainsValue("Subject", investigationID + " case closed: Act applies-Insufficient evidence", "Modified By"), "IMSTestU03"); // A new Case Management Activity is shown in the Client which documents that the case was closed and by whom. ClientDriver.SwitchTo().Window(ClientWindowHandle); homePageClient.HoverCRMRibbonTab(); homePageClient.ClickClientServicesRibbonButton(); homePageClient.HoverClientServicesRibbonTab(); homePageClient.ClickClientsRibbonButton(); clientsSearchPage = new ClientsSearchPage(ClientDriver); clientsSearchPage.SetClientSearchText(ClientName); table = new Table(clientsSearchPage.GetSearchResultTable()); table.ClickCellValue("Full Name", ClientName, "Full Name"); clientPage = new ClientPage(ClientDriver); clientPage.ClickSeeRecordsAssociatedWithThisViewButton("Activities"); clientPage.SwitchToFrame(); Thread.Sleep(1000); clientPage.SetPageFilterList("All Activities", ClientDriver); clientPage.SetFilterOnList("All", ClientDriver); table = new Table(clientPage.GetActivitiesAssociatedViewTable(ClientDriver)); Console.WriteLine(table.GetRowCount()); StringAssert.Contains(table.GetCellValue("Subject", investigationID + " case closed: Act applies-Insufficient evidence", "Activity Status"), "Completed"); StringAssert.Contains(table.GetCellValue("Subject", investigationID + " case closed: Act applies-Insufficient evidence", "Modified By"), "IMSTestU03"); // In the Investigation Case, SELECT Start Dialog and Re-Open the case driver.SwitchTo().Window(InvestigationWindowHandle); investigationCasePage = new InvestigationCasePage(driver); investigationCasePage.ClickPageTitle(); investigationCasePage.ClickStartDialogButton(); table = new Table(investigationCasePage.GetProcessSearchResultTable()); table.ClickCell("Process Name", "INV: Re-open investigation case", "Created On"); investigationCasePage.ClickDialogAddButton(); driver = UICommon.SwitchToNewBrowserWithTitle(driver, InvestigationWindowHandle, "INV:"); iNVPage = new INVPage(driver); iNVPage.ClickNextButton(); iNVPage.ClickNextButton(); iNVPage.ClickFinishButton(); driver = driver.SwitchTo().Window(InvestigationWindowHandle); investigationCasePage = new InvestigationCasePage(driver); homePageInvestigation.HoverInvestigationsRibbonTab(); homePageInvestigation.ClickInvestigationsCasesRibbonButton(); investigationsCaseSearchPage = new InvestigationCaseSearchPage(driver); investigationsCaseSearchPage.SetSearchRecord(investigationID); table = new Table(investigationsCaseSearchPage.GetSearchResultTable()); table.ClickCellValue("Case Number", investigationID, "Case Number"); // Investigation Case is shown as Active. A new Case Management Activity is shown in the Investigation Case which documents that the case was closed and by whom. investigationCasePage = new InvestigationCasePage(driver); investigationCasePage.ClickPageTitle(); StringAssert.Contains(investigationCasePage.GetStatus(), "Case finalisation"); table = new Table(investigationCasePage.GetActivitiesSearchResultTable()); StringAssert.Contains(table.GetCellContainsValue("Subject", investigationID + " case re-opened: Case finalisation - Case closed discussion", "Activity Status"), "Completed"); StringAssert.Contains(table.GetCellContainsValue("Subject", investigationID + " case re-opened: Case finalisation - Case closed discussion", "Modified By"), "IMSTestU03"); // A new Case Management Activity is shown in the Client which documents that the case was reopened and by whom. ClientDriver.SwitchTo().Window(ClientWindowHandle); homePageClient.HoverClientServicesRibbonTab(); homePageClient.ClickClientsRibbonButton(); clientsSearchPage = new ClientsSearchPage(ClientDriver); clientsSearchPage.SetClientSearchText(ClientName); table = new Table(clientsSearchPage.GetSearchResultTable()); table.ClickCellValue("Full Name", ClientName, "Full Name"); clientPage = new ClientPage(ClientDriver); clientPage.ClickSeeRecordsAssociatedWithThisViewButton("Activities"); clientPage.SwitchToFrame(); Thread.Sleep(1000); clientPage.SetPageFilterList("All Activities", ClientDriver); clientPage.SetFilterOnList("All", ClientDriver); table = new Table(clientPage.GetActivitiesAssociatedViewTable(ClientDriver)); StringAssert.Contains(table.GetCellValue("Subject", investigationID + " case re-opened: Case finalisation - Case closed discussion", "Activity Status"), "Completed"); StringAssert.Contains(table.GetCellValue("Subject", investigationID + " case re-opened: Case finalisation - Case closed discussion", "Modified By"), "IMSTestU03"); }
public void ATC4397_CRMCheckClientID() { //Login in as role User user = this.environment.GetUser(SecurityRole.Default); new LoginDialog().Login(user.Id, user.Password); HomePage homePage = new HomePage(driver); homePage.HoverCRMRibbonTab(); homePage.ClickClientServicesRibbonButton(); homePage.HoverClientServicesRibbonTab(); homePage.ClickClientsRibbonButton(); ClientsSearchPage clientsSearchPage = new ClientsSearchPage(driver); clientsSearchPage.ClickNewClientButton(); ClientPage clientPage = new ClientPage(driver); clientPage.ClickPageTitle(); clientPage.PopulateNewClient("UPINA"); clientPage.ClickSaveButton(); string clientId1 = clientPage.GetClientID(); int clientNum1 = int.Parse(clientId1.Substring(1)); clientPage.ClickNewClientButton(); clientPage = new ClientPage(driver); clientPage.ClickPageTitle(); clientPage.PopulateNewClient("UPINAA"); clientPage.ClickSaveButton(); string clientId2 = clientPage.GetClientID(); int clientNum2 = int.Parse(clientId2.Substring(1)); if (clientId1.StartsWith("C") && (clientId2.StartsWith("C"))) //checks if clientID starts with "C" { Assert.AreEqual(clientNum1, clientNum2 - 1); //if clientNum2 is a single increment from clientnum1 then TRUE } else { Assert.Fail(); } }
public void ATC3351_CRMEntityClientNameCreateNewWithInformation() { #region Start Up Excel MyBook = MyApp.Workbooks.Open(DatasourceDir + @"\Clients.xlsx", 0, false, 5, "", "", true, Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0); MySheet = (Excel.Worksheet)MyBook.Sheets[Properties.Settings.Default.ENVIRONMENT.ToString()]; MyRange = MySheet.UsedRange; //Get specific row for the data int testDataRows = MyRange.Rows.Count; int MyRow = 0; for (int i = 2; i <= testDataRows; i++) { if (MyRange.Cells[i, 1].Value.ToString() == "ClientTestData") { MyRow = i; break; } } #endregion string clientName = (MyRange.Cells[MyRow, ClientsSchema.GetColumnIndex("CLIENT_NAME")].Value.ToString()); string EmailID = (MyRange.Cells[MyRow, ClientsSchema.GetColumnIndex("EMAIL")].Value.ToString()); //Login in as role User user = this.environment.GetUser(SecurityRole.Investigations); new LoginDialog().Login(user.Id, user.Password); HomePage homePage = new HomePage(driver); string HomeWindow = driver.CurrentWindowHandle; homePage.HoverCRMRibbonTab(); homePage.ClickClientServicesRibbonButton(); homePage.HoverClientServicesRibbonTab(); homePage.ClickClientsRibbonButton(); ClientsSearchPage clientsSearchPage = new ClientsSearchPage(driver); clientsSearchPage.ClickNewClientButton(); // Add new client name ClientPage clientPage = new ClientPage(driver); // Fill in mandatory fields clientPage.PopulateNewClient(clientName); // Fill in Email address clientPage.SetEmail1ID(EmailID); clientPage.ClickSaveButton(); string BaseWindow = driver.CurrentWindowHandle; // Set the postal address clientPage.ClickCreateNewClientAddressButton("rta_physicaladdressid"); driver = UICommon.SwitchToNewBrowserWithTitle(driver, BaseWindow, "Client Address"); ClientNewAddressPage clientNewAddressPage = new ClientNewAddressPage(driver); clientNewAddressPage.SetAddressDetails("Australian Physical", 10, "GRACELAND"); driver.SwitchTo().Window(BaseWindow); clientPage = new ClientPage(driver); //Verify Address value Assert.AreEqual("10 GRACELAND", clientPage.GetAddressValue("rta_physicaladdressid")); // Navigate to client phone numbers driver.SwitchTo().Window(HomeWindow); homePage.HoverClientXRibbonTab(clientName); homePage.ClickClientXPhoneNumbersRibbonButton(); clientPage = new ClientPage(driver); BaseWindow = driver.CurrentWindowHandle; clientPage.ClickAddNewClientPhoneImage(); driver = UICommon.SwitchToNewBrowserWithTitle(driver, BaseWindow, "Client Phone Number"); ClientPhoneNumberPage clientPhoneNumberPage = new ClientPhoneNumberPage(driver); //clientPhoneNumberPage.ClickTypeList(); clientPhoneNumberPage.SetTypeListValue("Fixed Line"); //clientPhoneNumberPage.ClickAreaCodeElement(); clientPhoneNumberPage.SetAreaCodeValue("07"); //clientPhoneNumberPage.ClickPhoneNumberElement(); clientPhoneNumberPage.SetPhoneNumberValue("11111111"); clientPhoneNumberPage.ClickSaveCloseButton(); driver = driver.SwitchTo().Window(BaseWindow); clientPage.SetClientSearchText(clientName); Table table = new Table(clientPage.GetSearchResultTable()); StringAssert.Contains(table.GetCellValue("Client", clientName, "Full Phone Number"), "+61 7 1111 1111"); #region Shut down Excel MyBook.Save(); MyBook.Close(); MyApp.Quit(); #endregion }
public void ATC3343_CRMAlterCloseReopenFrontCounterActivity() { #region Start Up Excel MyBook = MyApp.Workbooks.Open(DatasourceDir + @"\Investigations.xlsx", 0, false, 5, "", "", true, Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0); MySheet = (Excel.Worksheet)MyBook.Sheets[Properties.Settings.Default.ENVIRONMENT.ToString()]; MyRange = MySheet.UsedRange; //Get specific row for the data int testDataRows = MyRange.Rows.Count; int MyRow = 0; for (int i = 2; i <= testDataRows; i++) { if (MyRange.Cells[i, 1].Value.ToString() == "ClientTestData") { MyRow = i; break; } } #endregion string ClientName = MyRange.Cells[MyRow, InvestigationSchema.GetColumnIndex(ColumnName.CLIENT_NAME)].Value.ToString(); string FrontCounterActivity1 = "TC 3343 Front Counter Activity 1" + UICommon.GetRandomString(3); string FrontCounterActivity2 = "TC 3343 Front Counter Activity 2" + UICommon.GetRandomString(3); User user = this.environment.GetUser(SecurityRole.Investigations); new LoginDialog().Login(user.Id, user.Password); HomePage homePage = new HomePage(driver); String HomeWindow = driver.CurrentWindowHandle; homePage.ClickCreateIMG(); homePage.ClickFrontCounterContactActivityRibbonButton(); FrontCounterContactPage frontCounterContactPage = new FrontCounterContactPage(driver); frontCounterContactPage.ClickPageTitle(); // Assign a Client and fill in all possisble fields. frontCounterContactPage.SetSelectSubjectValue("Bond existence"); frontCounterContactPage.SetSubjectValue(FrontCounterActivity1); frontCounterContactPage.SetClientName(ClientName); frontCounterContactPage.ClickSaveCloseButton(); driver = driver.SwitchTo().Window(HomeWindow); homePage.ClickCreateIMG(); homePage.ClickFrontCounterContactActivityRibbonButton(); frontCounterContactPage = new FrontCounterContactPage(driver); frontCounterContactPage.ClickPageTitle(); // Assign a Client and fill in all possisble fields. frontCounterContactPage.SetSelectSubjectValue("Bond existence"); frontCounterContactPage.SetSubjectValue(FrontCounterActivity2); frontCounterContactPage.SetClientName(ClientName); frontCounterContactPage.ClickSaveCloseButton(); driver.Quit(); driver = null; this.TestSetup(); user = this.environment.GetUser(SecurityRole.SystemAdministrator); new LoginDialog().Login(user.Id, user.Password); homePage = new HomePage(driver); 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.PopulateNewClient("Test"); clientPage.ClickSaveButton(); string ClientID = clientPage.GetClientID(); clientPage.ClickSaveCloseButton(); driver = driver.SwitchTo().Window(HomeWindow); homePage.HoverCRMRibbonTab(); homePage.ClickClientServicesRibbonButton(); homePage.HoverClientServicesRibbonTab(); homePage.ClickClientActivitiesRibbonButton(); // Open an existing Front Counter Contact activity (not created by your test user) from the list. ActivitiesSearchPage activitiesSearchPage = new ActivitiesSearchPage(driver); string BaseWindow = driver.CurrentWindowHandle; activitiesSearchPage.SetTenancyRequestSearchText(FrontCounterActivity1); Table table = new Table(activitiesSearchPage.GetSearchResultTable()); table.ClickCellValue("Activity Type", "Front Counter Contact", "Subject"); frontCounterContactPage = new FrontCounterContactPage(driver); // Modify an aspect of the activity - add a client and change the description and then save the Activity. frontCounterContactPage.SetClientName("TEST"); frontCounterContactPage.SetDescription("Modify Front Counter Activity"); frontCounterContactPage.ClickSaveButton(); frontCounterContactPage.ClickPageTitle(); // Activity saves without error. StringAssert.Contains(frontCounterContactPage.GetClientName(), "TEST"); StringAssert.Contains(frontCounterContactPage.GetDescription(), "Modify Front Counter Activity"); frontCounterContactPage.ClickSaveCloseButton(); // Open another Front Counter Contact which has not been created by your test user. driver = driver.SwitchTo().Window(BaseWindow); activitiesSearchPage = new ActivitiesSearchPage(driver); activitiesSearchPage.SetTenancyRequestSearchText(FrontCounterActivity2); table = new Table(activitiesSearchPage.GetSearchResultTable()); table.ClickCellValue("Activity Type", "Front Counter Contact", "Subject"); frontCounterContactPage = new FrontCounterContactPage(driver); // Close the Front Counter Contact.Activity Closes without any error frontCounterContactPage.ClickPageTitle(); Thread.Sleep(500); frontCounterContactPage.ClickCloseFrontCounterContactButton(); Thread.Sleep(500); frontCounterContactPage.ClickDialogAddButton(); Thread.Sleep(1000); // Ensure that the Activity does not allow editing. frontCounterContactPage.ClickPageTitle(); Assert.IsTrue(UICommon.VerifyElementLocked("subject", driver), "Subject Field is NOT locked!!!"); Assert.IsTrue(UICommon.VerifyElementLocked("customers", driver), "customers Field is NOT locked!!!"); Assert.IsTrue(UICommon.VerifyElementLocked("actualend", driver), "actualend Field is NOT locked!!!"); Assert.IsTrue(UICommon.VerifyElementLocked("actualdurationminutes", driver), "Actual Duration Field is NOT locked!!!"); Assert.IsTrue(UICommon.VerifyElementLocked("regardingobjectid", driver), "Regarding Field is NOT locked!!!"); Assert.IsTrue(UICommon.VerifyElementLocked("rta_assistive_service_usedid", driver), "Assistive Service Field is NOT locked!!!"); Assert.IsTrue(UICommon.VerifyElementLocked("description", driver), "Description Field is NOT locked!!!"); // Reopen the Front Counter Contact through the Dialog. frontCounterContactPage.ClickStartDialogButton(); table = new Table(frontCounterContactPage.GetProcessSearchResultTable()); table.ClickCell("Process Name", "Re-open Front Counter Contact activity", "Created On"); BaseWindow = driver.CurrentWindowHandle; frontCounterContactPage.ClickDialogAddButton(); driver = UICommon.SwitchToNewBrowserWithTitle(driver, BaseWindow, "Re-open Front Counter Contact activity"); ReOpenCall reOpenActivity = new ReOpenCall(driver); reOpenActivity.ClickNextButton(); reOpenActivity.ClickFinishButton(); driver = driver.SwitchTo().Window(HomeWindow); homePage.HoverClientServicesRibbonTab(); homePage.ClickClientActivitiesRibbonButton(); // Open an existing Front Counter Contact activity (not created by your test user) from the list. activitiesSearchPage = new ActivitiesSearchPage(driver); activitiesSearchPage.SetTenancyRequestSearchText(FrontCounterActivity2); table = new Table(activitiesSearchPage.GetSearchResultTable()); table.ClickCellValue("Activity Type", "Front Counter Contact", "Subject"); frontCounterContactPage = new FrontCounterContactPage(driver); frontCounterContactPage.ClickPageTitle(); // Ensure that the Activity allows editing. Assert.IsFalse(UICommon.VerifyElementLocked("subject", driver), "Subject Field is locked!!!"); Assert.IsFalse(UICommon.VerifyElementLocked("customers", driver), "customers Field is locked!!!"); Assert.IsFalse(UICommon.VerifyElementLocked("actualend", driver), "actualend Field is locked!!!"); Assert.IsFalse(UICommon.VerifyElementLocked("actualdurationminutes", driver), "Actual Duration Field is locked!!!"); Assert.IsFalse(UICommon.VerifyElementLocked("regardingobjectid", driver), "Regarding Field is locked!!!"); Assert.IsFalse(UICommon.VerifyElementLocked("rta_assistive_service_usedid", driver), "Assistive Service Field is locked!!!"); Assert.IsFalse(UICommon.VerifyElementLocked("description", driver), "Description Field is locked!!!"); frontCounterContactPage.SetDescription("Description updated after reopening activity"); frontCounterContactPage.ClickPageTitle(); StringAssert.Contains(frontCounterContactPage.GetDescription(), "Description updated after reopening activity"); }
public void ATC4419_CRMEntityClientDOBFieldTest() { #region Start Up Excel MyBook = MyApp.Workbooks.Open(DatasourceDir + @"\Clients.xlsx", 0, false, 5, "", "", true, Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0); MySheet = (Excel.Worksheet)MyBook.Sheets[Properties.Settings.Default.ENVIRONMENT.ToString()]; MyRange = MySheet.UsedRange; //Get specific row for the data int testDataRows = MyRange.Rows.Count; int MyRow = 0; for (int i = 2; i <= testDataRows; i++) { if (MyRange.Cells[i, 1].Value.ToString() == "ClientTestData") { MyRow = i; break; } } #endregion string clientName = (MyRange.Cells[MyRow, ClientsSchema.GetColumnIndex("CLIENT_NAME")].Value.ToString()); //Login in as role User user = this.environment.GetUser(SecurityRole.Investigations); new LoginDialog().Login(user.Id, user.Password); HomePage homePage = new HomePage(driver); homePage.HoverCRMRibbonTab(); homePage.ClickClientServicesRibbonButton(); homePage.HoverClientServicesRibbonTab(); homePage.ClickClientsRibbonButton(); ClientsSearchPage clientsSearchPage = new ClientsSearchPage(driver); clientsSearchPage.ClickNewClientButton(); // Add new client name ClientPage clientPage = new ClientPage(driver); string BaseWindow = driver.CurrentWindowHandle; // Fill in mandatory fields clientPage.PopulateNewClient(clientName); clientPage.ClickSaveButton(); Assert.IsTrue(clientPage.CheckFamilyNameErrorPresent(), "Error in saving Family Name"); // Set {Date of Birth} field to tomorrow. clientPage.SetDateOfBirthValue(DateTime.Now.AddDays(1).ToString("dd/MM/yyyy")); clientPage.ClickSaveButton(); StringAssert.Contains(clientPage.GetBirthdayErrorText(), "Invalid Date of Birth entered, please correct."); // Set {Date of Birth} field to make client less than 16 years old. clientPage.SetDateOfBirthValue(DateTime.Now.AddYears(-5).ToString("dd/MM/yyyy")); clientPage.ClickSaveButton(); StringAssert.Contains(clientPage.GetBirthdayErrorText(), "Invalid Date of Birth entered, please correct."); // Set {Date of Birth} field to make client have year of birth prior to 1900 (e.g. 1899). clientPage.SetDateOfBirthValue("01/01/1899"); clientPage.ClickSaveButton(); StringAssert.Contains(clientPage.GetBirthdayErrorText(), "The specified date format is invalid or the date is out of valid range. Enter a valid date in the format: d/MM/yyyy"); // Set {Date of Birth} field to make client 16 years old. driver.Navigate().Refresh(); clientPage = new ClientPage(driver); clientPage.SetDateOfBirthValue(DateTime.Now.AddYears(-16).ToString("dd/MM/yyyy")); clientPage.ClickSaveButton(); Assert.IsFalse(clientPage.CheckDateOfBirthErrorPresent(), "Error in saving date of birth field to make client 16 years old."); // Update {Date of Birth} field to tomorrow. clientPage.SetDateOfBirthValue(DateTime.Now.AddDays(1).ToString("dd/MM/yyyy")); clientPage.ClickSaveButton(); StringAssert.Contains(clientPage.GetBirthdayErrorText(), "Invalid Date of Birth entered, please correct."); // Update {Date of Birth} field to make client less than 16 years old. clientPage.SetDateOfBirthValue(DateTime.Now.AddYears(-6).ToString("dd/MM/yyyy")); clientPage.ClickSaveButton(); StringAssert.Contains(clientPage.GetBirthdayErrorText(), "Invalid Date of Birth entered, please correct."); // Set {Date of Birth} field to make client have year of birth prior to 1900 (e.g. 1899). clientPage.SetDateOfBirthValue("01/01/1899"); clientPage.ClickSaveButton(); StringAssert.Contains(clientPage.GetBirthdayErrorText(), "The specified date format is invalid or the date is out of valid range. Enter a valid date in the format: d/MM/yyyy"); // Remove error message clientPage.SetDateOfBirthValue(""); clientPage.ClickSaveButton(); // Update {Date of Birth} field to 01/01/1900 driver.Navigate().Refresh(); clientPage = new ClientPage(driver); clientPage.SetDateOfBirthValue("01/01/1900"); clientPage.ClickSaveButton(); Assert.IsFalse(clientPage.CheckDateOfBirthErrorPresent(), "Error in saving date of birth field to 01/01/1900"); #region Shut down Excel MyBook.Save(); MyBook.Close(); MyApp.Quit(); #endregion }
public void ATC4413_CRMClientAgreedtoEmailCorrespondencenewclientsettoyes() { //Login in as role User user = this.environment.GetUser(SecurityRole.Default); new LoginDialog().Login(user.Id, user.Password); HomePage homePage = new HomePage(driver); homePage.HoverCRMRibbonTab(); homePage.ClickClientServicesRibbonButton(); homePage.HoverClientServicesRibbonTab(); homePage.ClickClientsRibbonButton(); ClientsSearchPage clientsSearchPage = new ClientsSearchPage(driver); clientsSearchPage.ClickNewClientButton(); ClientPage clientPage = new ClientPage(driver); clientPage.ClickPageTitle(); clientPage.ClickPreferencesTab(); StringAssert.Contains(clientPage.GetEmailCorrespondenceValue(), "No"); clientPage.SetEmailCorrespondenceValue("Yes"); clientPage.PopulateNewClient("EmailCorrespondenceTest"); clientPage.ClickSaveButton(); string clientId = clientPage.GetClientID(); clientPage.ClickSaveCloseButton(); }