public void ThenUserCanOnlyCreateClaimsIfHavingClaimsOrTrusteeRole() { CaseDetailPage caseDetailPage = ((CaseDetailPage)GetSharedPageObjectFromContext("Case Detail")); List <String> roles = ScenarioContext.Current.Get <List <string> >("Roles"); ClaimsDetailTab claimsTab = caseDetailPage.GoToClaimsDetail(); if (roles.Contains("Claims") || roles.Contains("Trustee Role")) { //New Claim button claimsTab.NewClaimButtonIsDisabled.Should().BeFalse("User has roles " + this.PrintableRoles(roles) + ", so New Claim button is active"); claimsTab.ClickNewClaim(); claimsTab.IsNewClaimFormVisible().Should().BeTrue("User has roles " + this.PrintableRoles(roles) + ", so New Claim button opens the form"); claimsTab.ClickCancel(); //Edit Claim button } else { //New Claim button claimsTab.NewClaimButtonIsDisabled.Should().BeTrue("User has roles " + this.PrintableRoles(roles) + ", so New Claim button is inactive"); try { claimsTab.ClickNewClaim(); claimsTab.IsNewClaimFormVisible().Should().BeFalse("User has roles " + this.PrintableRoles(roles) + ", so clicking New Claim button does nothing"); } catch (Exception) { //do nothing, if click fails then test passes } //Edit Claim button } }
private void WhenIScrollAllTheWayDownOnThePage() { CaseDetailPage caseDetailPage = ((CaseDetailPage)GetSharedPageObjectFromContext("Case Detail")); caseDetailPage.Pause(10); caseDetailPage.ScrollDownToPageBottom(); }
public void WhenIScrollAllTheWayUpOnThePage() { CaseDetailPage caseDetailPage = ((CaseDetailPage)GetSharedPageObjectFromContext("Case Detail")); caseDetailPage.Pause(10); caseDetailPage.ScrollUpToPageTop(); }
public void ThenISeeTheCaseDetailPageDisplaysForCaseNumberWithCaseName(string caseNbr, string caseName) { CaseDetailPage caseDetailPage = ScenarioContext.Current.Get <CaseDetailPage>("Target Case Detail Page"); caseDetailPage.Number.Trim().Should().Be(caseNbr, "Case Detail Should Display Case Number '" + caseNbr + "'"); caseDetailPage.Name.Should().Be(caseName, "Case Detail Should Display Case Name '" + caseName + "'"); }
private void ThenBankBalanceIconDisplaysWithDescriptionAndValue(string description, string value) { CaseDetailPage caseDetailPage = ((CaseDetailPage)GetSharedPageObjectFromContext("Case Detail")); caseDetailPage.BankBalanceIcon.DisplaysCorrectly().Should().BeTrue("Bank Balance icon displays as a circle"); caseDetailPage.BankBalanceIcon.Description.Should().Be(description, "Bank Balance icon description is " + description); caseDetailPage.BankBalanceIcon.Value.Should().Be(value, "Bank Balance icon value is " + value); }
private void ThenISeeHeaderBarSticksVisibleOnTop() { CaseDetailPage caseDetailPage = ((CaseDetailPage)GetSharedPageObjectFromContext("Case Detail")); caseDetailPage.IsStickyCaseHeaderVisible().Should().BeTrue("Case Header is Sticky"); caseDetailPage.IsNameSticky().Should().BeTrue("Name is sticky"); caseDetailPage.IsNumberSticky().Should().BeTrue("Number is sticky"); caseDetailPage.IsTypeSticky().Should().BeTrue("Type is sticky"); caseDetailPage.IsStatusSticky().Should().BeTrue("Status is sticky"); }
private void ThenISeeClaimsDetailIsSelectedByDefaultAndTabTitleIs(string expTitle) { CaseDetailPage caseDetailPage = ((CaseDetailPage)GetSharedPageObjectFromContext("Case Detail")); //Claims detail is selected by default ClaimsDetailTab claimsTab = caseDetailPage.ClaimsTab; claimsTab.Should().NotBeNull("Claims Navigation Menu Item is present and selected by default"); claimsTab.TabTitle.Should().Be(expTitle, "Claims Tab Title is '" + expTitle + "'"); //Save claims tab on context SetSharedPageObjectInCurrentContext("Claims Tab", claimsTab); }
public void ThenISeeCaseDetailPageDisplaysTheCaseDataAccordingToTheCaseList() { CaseData caseData = ScenarioContext.Current.Get <CaseData>("CaseData"); CaseDetailPage caseGeneralPage = ScenarioContext.Current.Get <CaseDetailPage>("Case General"); caseGeneralPage.Number.Should().Be(caseData.Number, "Case Number displayed is correct"); caseGeneralPage.Name.Should().Be(caseData.Name, "Case Name displayed is correct"); caseGeneralPage.Type.Should().BeEquivalentTo(caseData.Type, "Case Type displayed is correct"); caseGeneralPage.Status.ToLower().Should().Be(caseData.Status.ToLower(), "Case Status displayed is correct"); //caseGeneralPage.OpenDateLabel.ShouldBeEquivalentTo("OPEN DATE", "Open Date label is correct."); //caseGeneralPage.OpenDate.Should().Be(caseData.OpenDate, "Case Open Date displayed is correct"); //caseGeneralPage.EstimatedDistributionDateLabel.ShouldBeEquivalentTo("ESTIMATED DISTRIBUTION DATE", "Open Date label is correct."); //caseGeneralPage.EstimatedDistributionDate.Should().Be(caseData.EstimatedDistributionDate, "Case Estimated Distribution Date displayed is correct"); }
public void ThenUserCanOnlyCreateAssetsIfHavingAssetsOrTrusteeRole() { CaseDetailPage caseDetailPage = ((CaseDetailPage)GetSharedPageObjectFromContext("Case Detail")); List <String> roles = ScenarioContext.Current.Get <List <string> >("Roles"); AssetsDetailTab assetsTab = caseDetailPage.GoToAssetsDetail(); if (roles.Contains("Assets") || roles.Contains("Trustee Role")) { //New Asset button assetsTab.IsNewAssetButtonActive.Should().BeTrue("User has roles " + this.PrintableRoles(roles) + ", so New Asset button is active"); assetsTab.ClickNewAssetButton(); assetsTab.IsNewAssetFormVisible.Should().BeTrue("User has roles " + this.PrintableRoles(roles) + ", so New Asset button opens New Asset Form"); assetsTab.CancelNewAsset(); //Quick Edit button assetsTab.AllQuickEditButtonsActive.Should().BeTrue("User has roles " + this.PrintableRoles(roles) + "User has roles " + this.PrintableRoles(roles) + ", so Quick Edit button is active"); assetsTab.ClickQuickEditButtonOnFirstAsset(); assetsTab.IsEditAssetFormVisible.Should().BeTrue("User has roles " + this.PrintableRoles(roles) + ", so Quick Edit button opens Edit Asset Form"); } else { //New Asset button assetsTab.IsNewAssetButtonActive.Should().BeFalse("User does not have assets role, so New Asset button is inactive"); try { assetsTab.ClickNewAssetButton(); assetsTab.IsNewAssetFormVisible.Should().BeFalse("User does not have assets role, so New Asset button doesn't work"); assetsTab.CancelNewAsset(); } catch (Exception) { //do nothing, if not clickeable test passes } //Quick Edit button assetsTab.AllQuickEditButtonsInactive.Should().BeTrue("User does not have assets role, so Quick Edit button is inactive"); try { assetsTab.ClickQuickEditButtonOnFirstAsset(); assetsTab.IsEditAssetFormVisible.Should().BeFalse("User does not have assets role, so New Asset button doesn't work"); } catch (Exception) { //do nothing, if not clickeable test passes } } }
public void ThenUserCanOnlyCreateTransactionsIfHavingBankingOrTrusteeRole() { CaseDetailPage caseDetailPage = ((CaseDetailPage)GetSharedPageObjectFromContext("Case Detail")); List <String> roles = ScenarioContext.Current.Get <List <string> >("Roles"); BankingDetailTab bankingTab = caseDetailPage.GoToBankingDetail(); if (roles.Contains("Banking") || roles.Contains("Trustee Role")) { //Check button bankingTab.IsCheckButtonInactive().Should().BeFalse("User has roles " + this.PrintableRoles(roles) + ", so Add Check button is active"); TransactionForm form = bankingTab.ClickCheckButton(); bankingTab.IsNewTransactionFormOpen().Should().BeTrue("User has roles " + this.PrintableRoles(roles) + ", so clicking Check button opens the Form"); form.Cancel(); //Deposit button bankingTab.IsDepositButtonInactive().Should().BeFalse("User has roles " + this.PrintableRoles(roles) + ", so Deposit button is active"); bankingTab.ClickDepositButton(); bankingTab.IsNewTransactionFormOpen().Should().BeTrue("User has roles " + this.PrintableRoles(roles) + ", so clicking Deposit button opens the Form"); } else { //Check button bankingTab.IsCheckButtonInactive().Should().BeTrue("User has roles " + this.PrintableRoles(roles) + ", so Add Check button is inactive"); try { bankingTab.ClickCheckButton(); bankingTab.IsNewTransactionFormOpen().Should().BeFalse("User has roles " + this.PrintableRoles(roles) + ", so clicking Check does nothing"); } catch (Exception) { //do nothing, if not clickeable the test passes } //Deposit button bankingTab.IsDepositButtonInactive().Should().BeTrue("User has roles " + this.PrintableRoles(roles) + ", so Deposit button is inactive"); try { bankingTab.ClickDepositButton(); bankingTab.IsNewTransactionFormOpen().Should().BeFalse("User has roles " + this.PrintableRoles(roles) + ", so clicking Deposit button does nothing"); } catch (Exception) { //do nothing, if not clickeable the test passes } } }
private void ThenISeeCaseDetailPageDisplayingTheCorrectCaseData() { CaseDetailPage caseDetailPage = ((CaseDetailPage)GetSharedPageObjectFromContext("Case Detail")); CaseData caseData = ScenarioContext.Current.Get <CaseData>("CaseData"); caseDetailPage.Number.Should().Be(caseData.Number, "Case Number displayed is correct"); caseDetailPage.Name.Should().Be(caseData.Name, "Case Name displayed is correct"); caseDetailPage.Type.Should().BeEquivalentTo(caseData.Type, "Case Type displayed is correct"); caseDetailPage.Status.ToLower().Should().Be(caseData.Status.ToLower(), "Case Status displayed is correct"); //not verifying this here anymore, special tests have been written for key dates //caseDetailPage.OpenDateLabel.ShouldBeEquivalentTo("OPEN DATE", "Open Date label is correct."); //caseDetailPage.OpenDate.Should().Be(caseData.OpenDate, "Case Open Date displayed is correct"); //caseDetailPage.EstimatedDistributionDateLabel.ShouldBeEquivalentTo("ESTIMATED DISTRIBUTION DATE", "Open Date label is correct."); //caseDetailPage.EstimatedDistributionDate.Should().Be(caseData.EstimatedDistributionDate, "Case Estimated Distribution Date displayed is correct"); }
private void GivenIEnterToCaseDetailPageForCaseWithCaseNumber(string caseNbr) { dashboardPage.UniversalSearch.EnterTextForSearch(caseNbr); CaseDetailPage detailPage = dashboardPage.UniversalSearch.ClickOnCaseResultByCaseNumber(caseNbr); SetSharedPageObjectInCurrentContext("Case Detail", detailPage); //Save Case number on Scenario try { ScenarioContext.Current.Add("Case Number", caseNbr); } catch (Exception) { ScenarioContext.Current.Remove("Case Number"); ScenarioContext.Current.Add("Case Number", caseNbr); } }
public void ThenUserCanOnlyCreateDistributionsIfHavingDistributionsOrTrusteeRole() { CaseDetailPage caseDetailPage = ((CaseDetailPage)GetSharedPageObjectFromContext("Case Detail")); List <String> roles = ScenarioContext.Current.Get <List <string> >("Roles"); DistributionTab distributionTab = caseDetailPage.GoToDistribution(); if (roles.Contains("Distributions") || roles.Contains("Trustee Role")) { distributionTab.NewDistributionButtonIsEnabled.Should().BeTrue("User has roles " + this.PrintableRoles(roles) + ", so New Distribution button is active"); distributionTab.ClickNewDistribution(); distributionTab.IsNewDistributionFormVisible().Should().BeTrue("User has roles " + this.PrintableRoles(roles) + ", so New Distribution button opens the form"); } else { distributionTab.NewDistributionButtonIsEnabled.Should().BeFalse("User has roles " + this.PrintableRoles(roles) + ", so New Distribution button is inactive"); distributionTab.ClickNewDistribution(); distributionTab.IsNewDistributionFormVisible().Should().BeFalse("User has roles " + this.PrintableRoles(roles) + ", so clicking New Distribution button does nothing"); } }
private void ThenIStillSeeTab(string tab) { CaseDetailPage caseDetailPage = ((CaseDetailPage)GetSharedPageObjectFromContext("Case Detail")); switch (tab) { case "Assets": caseDetailPage.Title.Should().Be("Assets | Case Detail | UNITY"); break; case "Banking": caseDetailPage.Title.Should().Be("Banking | Case Detail | UNITY"); break; case "Claims": caseDetailPage.Title.Should().Be("Claims | Case Detail | UNITY"); break; default: ScenarioContext.Current.Pending(); break; } }
private void GivenGoToTab(string tab) { CaseDetailPage caseDetailPage = ((CaseDetailPage)GetSharedPageObjectFromContext("Case Detail")); switch (tab) { case "Assets": caseDetailPage.GoToAssetsDetail(); break; case "Banking": caseDetailPage.GoToBankingDetail(); break; case "Claims": caseDetailPage.GoToClaimsDetail(); break; default: ScenarioContext.Current.Pending(); break; } }
private void ThenClaimsIconDisplaysWithDescriptionAndValue(string description) { CaseDetailPage caseDetailPage = ((CaseDetailPage)GetSharedPageObjectFromContext("Case Detail")); CaseData caseData = ScenarioContext.Current.Get <CaseData>("CaseData"); caseDetailPage.ClaimsIcon.DisplaysCorrectly().Should().BeTrue("Claims icon displays as a circle"); caseDetailPage.ClaimsIcon.Description.Should().Be(description, "Claims icon description is " + description); //query db to get count of currently open cases int expectedCount = 0; Dictionary <string, string> parameters = new Dictionary <string, string>(); parameters.Add("CaseId", Convert.ToString(GetCaseIdFromCaseNumber(caseData.Number))); DataRowCollection results = ExecuteQueryOnDB(Properties.Resources.GetClaimsCountByCaseId, parameters); foreach (DataRow result in results) { expectedCount = result.Field <int>("ClaimsCount"); } caseDetailPage.ClaimsIcon.Value.Should().Be("" + expectedCount, "Claims icon value is " + expectedCount); }
private void WhenIGoToClaimsDetail() { CaseDetailPage caseDetailPage = ((CaseDetailPage)GetSharedPageObjectFromContext("Case Detail")); SetSharedPageObjectInCurrentContext("Claims Tab", caseDetailPage.GoToClaimsDetail()); }
private void WhenIRefreshThePage() { CaseDetailPage caseDetailPage = ((CaseDetailPage)GetSharedPageObjectFromContext("Case Detail")); caseDetailPage.Reload(); }
private void WhenIGoToDistribution() { CaseDetailPage caseDetailPage = ((CaseDetailPage)GetSharedPageObjectFromContext("Case Detail")); SetSharedPageObjectInCurrentContext("Distributions Tab", caseDetailPage.GoToDistribution()); }
private void GivenIGoToBankingDetail() { CaseDetailPage caseDetailPage = ((CaseDetailPage)GetSharedPageObjectFromContext("Case Detail")); SetSharedPageObjectInCurrentContext("Banking Tab", caseDetailPage.GoToBankingDetail()); }
public void WhenIClickOnTheCaseResult(string caseNbr) { CaseDetailPage caseDetailPage = dashboardPage.NewUniversalSearch.ClickOnCaseResultByCaseNumber(caseNbr); //ScenarioContext.Current.Add("Target Case Detail Page", caseDetailPage); }
private void ThenTaxIdIs(string taxId) { CaseDetailPage caseDetailPage = ((CaseDetailPage)GetSharedPageObjectFromContext("Case Detail")); caseDetailPage.TaxId.Should().Be(taxId, "Tax ID for the Case is " + taxId); }