Ejemplo n.º 1
0
        public void UploadDatasetByUserTest(string dataset)
        {
            ImportDataset(dataset, PathToZipUser(dataset));

            var dataProcessingStatus = new DataProcessingStatusPage(driver);

            Utils.WaitUntilLoadingDisappears(driver);

            dataProcessingStatus.CheckRefreshRateToMinimum();
            Assert.Multiple(() =>
            {
                Assert.AreEqual(user, dataProcessingStatus.ClientUser[0].Text, "Incorrect User in User column");
                Assert.AreEqual("Add", dataProcessingStatus.UserRequestType[0].Text, "Incorrect Request type");
                Assert.AreEqual("Dataset", dataProcessingStatus.UserDataType[0].Text, "Incorrect Data type");
            });

            wait.Until(Extras.ExpectedConditions.InvisibilityOfElementWithText(By.XPath($"//*[@id='admin-table-office']//tr[1]/td[5]"), "In queue"));

            wait.Until(Extras.ExpectedConditions.InvisibilityOfElementWithText(By.XPath($"//*[@id='admin-table-office']//tr[1]/td[5]"), "In progress"));

            if (!dataProcessingStatus.UserStatus[0].Text.Equals("Completed successfully") | !dataProcessingStatus.UserStatus[0].Text.Equals("Failed"))
            {
                wait.Until(Extras.ExpectedConditions.InvisibilityOfElementWithText(By.XPath($"//*[@id='admin-table-office']//tr[1]/td[5]"), "In queue"));

                wait.Until(Extras.ExpectedConditions.InvisibilityOfElementWithText(By.XPath($"//*[@id='admin-table-office']//tr[1]/td[5]"), "In progress"));
            }

            Utils.WaitBeforeAssert(driver);

            Assert.AreEqual("Completed successfully", dataProcessingStatus.UserStatus[0].Text, $"Status is not Completed successfully for dataset {dataset}");
        }
Ejemplo n.º 2
0
        public void UploadDatasetTest(string datasetDifference)
        {
            importDataset(datasetDifference, datasetDescription, pathToZipAdmin, "HO3 Florida");

            var dataProcessingStatus = new DataProcessingStatusPage(driver);

            Utils.WaitUntilLoadingDisappears(driver);
            dataProcessingStatus.CheckRefreshRateToMinimum();

            Assert.Multiple(() =>
            {
                Assert.AreEqual(admin, dataProcessingStatus.User[0].Text, "Incorrect User in User column");
                Assert.AreEqual("Add", dataProcessingStatus.RequestType[0].Text, "Incorrect Request type");
                Assert.AreEqual("Dataset", dataProcessingStatus.DataType[0].Text, "Incorrect Data type");
            });

            var wait = new WebDriverWait(driver, TimeSpan.FromSeconds(10000));

            wait.Until(Extras.ExpectedConditions.InvisibilityOfElementWithText(By.XPath($"//*[@id='admin-table-office']//tr[1]/td[6]"), "In queue"));

            wait.Until(Extras.ExpectedConditions.InvisibilityOfElementWithText(By.XPath($"//*[@id='admin-table-office']//tr[1]/td[6]"), "In progress"));

            if (!dataProcessingStatus.Status[0].Text.Equals("Completed successfully") | !dataProcessingStatus.UserStatus[0].Text.Equals("Failed"))
            {
                wait.Until(Extras.ExpectedConditions.InvisibilityOfElementWithText(By.XPath($"//*[@id='admin-table-office']//tr[1]/td[6]"), "In queue"));

                wait.Until(Extras.ExpectedConditions.InvisibilityOfElementWithText(By.XPath($"//*[@id='admin-table-office']//tr[1]/td[6]"), "In progress"));
            }

            Assert.AreEqual("Completed successfully", dataProcessingStatus.Status[0].Text, "Status is not Completed successfully");
        }
Ejemplo n.º 3
0
        public void AddRatesByUserTest(string type, string datasetDifference)
        {
            loginPage.LoginToApplication(user, "NBV87^yu");

            var menu = new MenuPage(driver);

            var datasetName = $"{DatasetUserDescription(type)} {datasetDifference}";

            menu.DataMenuLocator.ClickEx(driver);

            menu.CarrierRatesAddMenuLocator.Click();

            var carrierAddPage = new CarrierRatesAddPage(driver);

            carrierAddPage.SelectDatasetButtonLocator.Click();

            carrierAddPage.SelectDataset(datasetName);

            Assert.AreEqual(carrierAddPage.SelectDatasetButtonLocator.Text, datasetName, "Dataset is not selected");

            carrierAddPage.CarrierNameTextBoxLocator.SendKeys($"User{randomString}");

            Assert.True(carrierAddPage.EnteredCarrierNameLocator.Text.Equals($"LUXFT-User{randomString}"), "Carrier name is not entered");

            uploadFile(PathToRates(type), driver);

            Utils.WaitUntilLoadingDisappears(driver, secondtToWait: 500);

            Assert.True(carrierAddPage.UploadedFileTextLocator.Text.Contains(fileRates), "File is not loaded");

            Utils.Scroll(carrierAddPage.FooterLocator, driver);

            carrierAddPage.StartButtonLocator.Click();

            waitQuick.Until(ExpectedConditions.ElementToBeClickable(carrierAddPage.ConfirmAddRatesButtonLocator)).Click();

            Utils.WaitUntilLoadingDisappears(driver, secondtToWait: 500);

            var dataProcessingStatus = new DataProcessingStatusPage(driver);

            Utils.WaitUntilLoadingDisappears(driver);

            dataProcessingStatus.CheckRefreshRateToMinimum();

            wait.Until(ExpectedConditions.InvisibilityOfElementWithText(By.XPath($"//*[@id='admin-table-office']//tr[1]/td[5]"), "In queue"));

            wait.Until(ExpectedConditions.InvisibilityOfElementWithText(By.XPath($"//*[@id='admin-table-office']//tr[1]/td[5]"), "In progress"));

            Utils.WaitBeforeAssert(driver);

            Assert.AreEqual("Completed successfully", dataProcessingStatus.UserStatus[0].Text, "Status is not Completed successfully");
        }
        public void CheckErrorHandlingTest(string dataset, string validationMessage)
        {
            ImportDataset(dataset, PathToZipUser(dataset));

            var dataProcessingStatus = new DataProcessingStatusPage(driver);

            Utils.WaitUntilLoadingDisappears(driver);

            dataProcessingStatus.CheckRefreshRateToMinimum();


            Assert.Multiple(() =>
            {
                Assert.AreEqual(user, dataProcessingStatus.ClientUser[0].Text, "Incorrect User in User column");
                Assert.AreEqual("Add", dataProcessingStatus.UserRequestType[0].Text, "Incorrect Request type");
                Assert.AreEqual("Dataset", dataProcessingStatus.UserDataType[0].Text, "Incorrect Data type");
            });

            wait.Until(Extras.ExpectedConditions.InvisibilityOfElementWithText(By.XPath($"//*[@id='admin-table-office']//tr[1]/td[5]"), "In queue"));

            wait.Until(Extras.ExpectedConditions.InvisibilityOfElementWithText(By.XPath($"//*[@id='admin-table-office']//tr[1]/td[5]"), "In progress"));

            if (!dataProcessingStatus.UserStatus[0].Text.Equals("Completed successfully") | !dataProcessingStatus.UserStatus[0].Text.Equals("Failed"))
            {
                wait.Until(Extras.ExpectedConditions.InvisibilityOfElementWithText(By.XPath($"//*[@id='admin-table-office']//tr[1]/td[5]"), "In queue"));

                wait.Until(Extras.ExpectedConditions.InvisibilityOfElementWithText(By.XPath($"//*[@id='admin-table-office']//tr[1]/td[5]"), "In progress"));
            }

            Utils.WaitBeforeAssert(driver);

            Assert.Multiple(() =>
            {
                Assert.AreEqual("Failed", dataProcessingStatus.UserStatus[0].Text, $"Status is not Failed for dataset {DatasetUserDescription(dataset)}");

                dataProcessingStatus.DataProcessStatusReportLocator.Click();
                Thread.Sleep(1000);

                var a = dataProcessingStatus.ReportPopupLocator.Text;

                Assert.True(dataProcessingStatus.ReportPopupLocator.Text.Contains(validationMessage));
            });
        }
Ejemplo n.º 5
0
        public void CheckDeleteDatasetTest(string type, string datasetDifference)
        {
            loginPage.LoginToApplication();

            var menu = new MenuPage(driver);

            var datasetName = $"{DatasetUserDescription(type)} {datasetDifference}";

            menu.AdministrationMenuLocator.ClickEx(driver);

            menu.DatasetArchiveDeleteMenuLocator.Click();

            var datasetDeletePage = new DatasetDeletePage(driver);

            Utils.WaitUntilLoadingPlaceholderDisappears(driver);

            datasetDeletePage.SelectDatasetButtonLocator.Click();

            datasetDeletePage.SelectDataset(datasetName);

            Utils.WaitUntilLoadingDisappears(driver);

            Assert.AreEqual(datasetName, datasetDeletePage.SelectDatasetButtonLocator.Text, $"Dataset {datasetName} is not selected");

            datasetDeletePage.StartButtonLocator.Click();

            Utils.WaitUntilLoadingDisappears(driver);

            var dataProcessingStatus = new DataProcessingStatusPage(driver);

            Utils.WaitUntilLoadingDisappears(driver);

            dataProcessingStatus.CheckRefreshRateToMinimum();

            wait.Until(ExpectedConditions.InvisibilityOfElementWithText(By.XPath($"//*[@id='admin-table-office']//tr[1]/td[6]"), "In queue"));

            wait.Until(ExpectedConditions.InvisibilityOfElementWithText(By.XPath($"//*[@id='admin-table-office']//tr[1]/td[6]"), "In progress"));

            Utils.WaitBeforeAssert(driver);

            Assert.AreEqual("Completed successfully", dataProcessingStatus.Status[0].Text, "Status is not Completed successfully");
        }
Ejemplo n.º 6
0
        public void AddLossesByUserTest(string type, string datasetDifference)
        {
            loginPage.LoginToApplication(user, "NBV87^yu");

            var menu = new MenuPage(driver);

            var datasetName = $"{DatasetUserDescription(type)} {datasetDifference}";

            menu.DataMenuLocator.ClickEx(driver);

            menu.LossesAddMenuLocator.Click();

            var lossesAddPage = new LossesAddPage(driver);

            lossesAddPage.SelectDatasetButtonLocator.Click();

            lossesAddPage.SelectDataset(datasetName);

            Assert.AreEqual(lossesAddPage.SelectDatasetButtonLocator.Text, datasetName);

            UploadLosses(type, "LossUser1", driver);

            wait.Until(ExpectedConditions.ElementToBeClickable(lossesAddPage.StartButtonLocator)).Click();

            wait.Until(ExpectedConditions.ElementToBeClickable(lossesAddPage.ConfirmAddRatesButtonLocator)).Click();

            Utils.WaitUntilLoadingDisappears(driver, secondtToWait: 500);

            var dataProcessingStatus = new DataProcessingStatusPage(driver);

            Utils.WaitUntilLoadingDisappears(driver);

            dataProcessingStatus.CheckRefreshRateToMinimum();

            wait.Until(ExpectedConditions.InvisibilityOfElementWithText(By.XPath($"//*[@id='admin-table-office']//tr[1]/td[5]"), "In queue"));

            wait.Until(ExpectedConditions.InvisibilityOfElementWithText(By.XPath($"//*[@id='admin-table-office']//tr[1]/td[5]"), "In progress"));

            Utils.WaitBeforeAssert(driver);

            Assert.AreEqual("Completed successfully", dataProcessingStatus.UserStatus[0].Text, "Status is not Completed successfully");
        }
Ejemplo n.º 7
0
        public void CheckCarrierRatesRemovingByAdminTest(string carrierName)
        {
            var menu = new MenuPage(driver);

            menu.DataMenuLocator.ClickEx(driver);

            menu.CarrierRatesRemoveMenuLocator.Click();

            var carrierRemovePage = new CarrierRatesRemovePage(driver);

            carrierRemovePage.SelectDatasetButtonLocator.Click();

            carrierRemovePage.SelectDataset(datasetDescription);

            carrierRemovePage.SelectCarrierButtonLocator.Click();

            carrierRemovePage.SelectCarrier(carrierName);

            waitQuick.Until(ExpectedConditions.ElementToBeClickable(carrierRemovePage.StartButtonLocator)).Click();

            waitQuick.Until(ExpectedConditions.ElementToBeClickable(carrierRemovePage.ConfirmRemoveRatesButtonLocator)).Click();

            Utils.WaitUntilLoadingDisappears(driver, secondtToWait: 500);

            var dataProcessingStatus = new DataProcessingStatusPage(driver);

            Utils.WaitUntilLoadingDisappears(driver);

            dataProcessingStatus.CheckRefreshRateToMinimum();

            wait.Until(ExpectedConditions.InvisibilityOfElementWithText(By.XPath($"//*[@id='admin-table-office']//tr[1]/td[6]"), "In queue"));

            wait.Until(ExpectedConditions.InvisibilityOfElementWithText(By.XPath($"//*[@id='admin-table-office']//tr[1]/td[6]"), "In progress"));

            Assert.Multiple(() =>
            {
                Assert.AreEqual("Completed successfully", dataProcessingStatus.Status[0].Text, "Status is not Completed successfully");
                Assert.AreEqual("Carrier Rates", dataProcessingStatus.DataType[0].Text, "Incorrect dataset type");
                Assert.AreEqual("Delete", dataProcessingStatus.RequestType[0].Text, "Incorrect request type");
            });
        }
Ejemplo n.º 8
0
        public void UploadDatasetMandatoryTest(string type)
        {
            loginPage.LoginToApplication(user, "NBV87^yu");

            var datasetName = $"{DatasetUserDescription(type)}";

            ImportDataset("Mandatory", DatasetUserDescription(type), PathToZipMandatoryOnly(type), type);

            var dataProcessingStatus = new DataProcessingStatusPage(driver);

            Utils.WaitUntilLoadingDisappears(driver);

            dataProcessingStatus.CheckRefreshRateToMinimum();

            //Assert.True(driver.Url.Equals("https://qa.millimanpixel.com/Integration/DataProcessingStatus"),
            //    "Data processing Page is not opened");

            Assert.Multiple(() =>
            {
                Assert.AreEqual(user, dataProcessingStatus.ClientUser[0].Text, "Incorrect User in User column");
                Assert.AreEqual("Add", dataProcessingStatus.UserRequestType[0].Text, "Incorrect Request type");
                Assert.AreEqual("Dataset", dataProcessingStatus.UserDataType[0].Text, "Incorrect Data type");
            });

            wait.Until(Extras.ExpectedConditions.InvisibilityOfElementWithText(By.XPath($"//*[@id='admin-table-office']//tr[1]/td[5]"), "In queue"));

            wait.Until(Extras.ExpectedConditions.InvisibilityOfElementWithText(By.XPath($"//*[@id='admin-table-office']//tr[1]/td[5]"), "In progress"));

            if (!dataProcessingStatus.UserStatus[0].Text.Equals("Completed successfully") | !dataProcessingStatus.UserStatus[0].Text.Equals("Failed"))
            {
                wait.Until(Extras.ExpectedConditions.InvisibilityOfElementWithText(By.XPath($"//*[@id='admin-table-office']//tr[1]/td[5]"), "In queue"));

                wait.Until(Extras.ExpectedConditions.InvisibilityOfElementWithText(By.XPath($"//*[@id='admin-table-office']//tr[1]/td[5]"), "In progress"));
            }

            Utils.WaitBeforeAssert(driver);

            Assert.AreEqual("Completed successfully", dataProcessingStatus.UserStatus[0].Text, $"Status is not Completed successfully for dataset {datasetName}");
        }
Ejemplo n.º 9
0
        public void AddRatesTest(string carrierName, string fileFormat, bool isTypeShared = true)
        {
            var menu = new MenuPage(driver);

            menu.DataMenuLocator.ClickEx(driver);

            menu.CarrierRatesAddMenuLocator.Click();

            var carrierAddPage = new CarrierRatesAddPage(driver);

            carrierAddPage.SelectDatasetButtonLocator.Click();

            carrierAddPage.SelectDataset(datasetDescription);

            Assert.AreEqual(carrierAddPage.SelectDatasetButtonLocator.Text, datasetDescription, "Dataset is not selected");

            carrierAddPage.CarrierNameTextBoxLocator.SendKeys($"{carrierName}{randomString}");

            Assert.True(carrierAddPage.EnteredCarrierNameLocator.Text.Contains(carrierName), "Carrier name is not entered");

            if (!isTypeShared)
            {
                carrierAddPage.CarrierTypeButtonLocator.ClickEx(driver);
                carrierAddPage.ClientTypeLocator.Click();
                Thread.Sleep(500);

                carrierAddPage.SelectClient("Luxoft");
            }

            if (carrierName == "AdminExportLuxoft")
            {
                carrierAddPage.SelectSharedClient("Luxoft", true);
            }

            if (carrierName == "AdminLuxShared")
            {
                carrierAddPage.SelectSharedClient("Luxoft");
            }

            uploadFile(pathToRates, fileFormat, driver);

            Utils.WaitUntilLoadingDisappears(driver, secondtToWait: 500);

            Assert.True(carrierAddPage.UploadedFileTextLocator.Text.Contains(fileRates), "File is not loaded");

            Utils.Scroll(carrierAddPage.FooterLocator, driver);

            carrierAddPage.StartButtonLocator.Click();

            waitQuick.Until(ExpectedConditions.ElementToBeClickable(carrierAddPage.ConfirmAddRatesButtonLocator)).Click();

            Utils.WaitUntilLoadingDisappears(driver, secondtToWait: 500);

            var dataProcessingStatus = new DataProcessingStatusPage(driver);

            Utils.WaitUntilLoadingDisappears(driver);

            dataProcessingStatus.CheckRefreshRateToMinimum();

            wait.Until(ExpectedConditions.InvisibilityOfElementWithText(By.XPath($"//*[@id='admin-table-office']//tr[1]/td[6]"), "In queue"));

            wait.Until(ExpectedConditions.InvisibilityOfElementWithText(By.XPath($"//*[@id='admin-table-office']//tr[1]/td[6]"), "In progress"));

            Assert.AreEqual("Completed successfully", dataProcessingStatus.Status[0].Text, "Status is not Completed successfully");
        }
Ejemplo n.º 10
0
        public void AddLossesTest(string lossName, string fileFormat, string delimiter, bool isTypeShared = true)
        {
            var menu = new MenuPage(driver);

            var wait = new WebDriverWait(driver, TimeSpan.FromSeconds(10000));

            menu.DataMenuLocator.ClickEx(driver);

            menu.LossesAddMenuLocator.Click();

            var lossesAddPage = new LossesAddPage(driver);

            lossesAddPage.SelectDatasetButtonLocator.Click();

            lossesAddPage.SelectDataset(datasetDescription);

            Assert.AreEqual(lossesAddPage.SelectDatasetButtonLocator.Text, datasetDescription);

            UploadLosses(lossName, fileFormat, delimiter, driver);

            if (!isTypeShared)
            {
                lossesAddPage.CarrierTypeButtonLocator.ClickEx(driver);
                lossesAddPage.ClientTypeLocator.Click();
                Thread.Sleep(500);

                lossesAddPage.SelectClient("Luxoft");
            }

            if (lossName.Contains("AdminLuxoftExport"))
            {
                lossesAddPage.SelectSharedClient("Luxoft", true);
            }

            if (lossName.Contains("AdminSharedLuxoft"))
            {
                lossesAddPage.SelectSharedClient("Luxoft");
            }

            wait.Until(ExpectedConditions.ElementToBeClickable(lossesAddPage.StartButtonLocator));

            lossesAddPage.ScrollToStartButton();

            lossesAddPage.StartButtonLocator.Click();

            wait.Until(ExpectedConditions.ElementToBeClickable(lossesAddPage.ConfirmAddRatesButtonLocator)).Click();

            Utils.WaitUntilLoadingDisappears(driver, secondtToWait: 500);

            var dataProcessingStatus = new DataProcessingStatusPage(driver);

            Utils.WaitUntilLoadingDisappears(driver);

            dataProcessingStatus.CheckRefreshRateToMinimum();

            int row = dataProcessingStatus.DatasetRow(datasetDescription);

            wait.Until(ExpectedConditions.InvisibilityOfElementWithText(By.XPath($"//*[@id='admin-table-office']//tr[{row + 1}]/td[6]"), "In queue"));

            wait.Until(ExpectedConditions.InvisibilityOfElementWithText(By.XPath($"//*[@id='admin-table-office']//tr[{row + 1}]/td[6]"), "In progress"));

            Assert.AreEqual("Completed successfully", dataProcessingStatus.Status[row].Text, "Status is not Completed successfully");
        }
Ejemplo n.º 11
0
        public void AddLossesByAdminTest(string type, string datasetDifference, string lossName, bool isTypeShared, bool isLuxoftLoss)
        {
            loginPage.LoginToApplication();

            var menu = new MenuPage(driver);

            var datasetName = $"{DatasetUserDescription(type)} {datasetDifference}";

            menu.DataMenuLocator.ClickEx(driver);

            menu.LossesAddMenuLocator.Click();

            var lossesAddPage = new LossesAddPage(driver);

            lossesAddPage.SelectDatasetButtonLocator.Click();

            lossesAddPage.SelectDataset(datasetName);

            Assert.AreEqual(lossesAddPage.SelectDatasetButtonLocator.Text, datasetName);

            UploadLosses(type, lossName, driver);

            if (!isTypeShared)
            {
                lossesAddPage.CarrierTypeButtonLocator.ClickEx(driver);
                lossesAddPage.ClientTypeLocator.Click();
                Thread.Sleep(500);
                if (isLuxoftLoss)
                {
                    lossesAddPage.SelectClient("Luxoft");
                }
                else
                {
                    lossesAddPage.SelectClient("Test");
                }
            }

            wait.Until(ExpectedConditions.ElementToBeClickable(lossesAddPage.StartButtonLocator));

            lossesAddPage.ScrollToStartButton();

            lossesAddPage.StartButtonLocator.Click();

            wait.Until(ExpectedConditions.ElementToBeClickable(lossesAddPage.ConfirmAddRatesButtonLocator)).Click();

            Utils.WaitUntilLoadingDisappears(driver, secondtToWait: 500);

            var dataProcessingStatus = new DataProcessingStatusPage(driver);

            Utils.WaitUntilLoadingDisappears(driver);

            dataProcessingStatus.CheckRefreshRateToMinimum();

            wait.Until(ExpectedConditions.InvisibilityOfElementWithText(By.XPath($"//*[@id='admin-table-office']//tr[1]/td[6]"), "In queue"));

            wait.Until(ExpectedConditions.InvisibilityOfElementWithText(By.XPath($"//*[@id='admin-table-office']//tr[1]/td[6]"), "In progress"));

            Utils.WaitBeforeAssert(driver);

            Assert.AreEqual("Completed successfully", dataProcessingStatus.Status[0].Text, "Status is not Completed successfully");
        }