Пример #1
0
        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");
        }
Пример #9
0
        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
                }
            }
        }
Пример #10
0
        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);
            }
        }
Пример #13
0
        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);
        }