Ejemplo n.º 1
0
        public void SetOperationDetails(Field el, OperationWithValues operation, ReportPage _reportPage)
        {
            if (operation.Type != OperationType.None)
            {
                switch (el.Filter)
                {
                case FilterTypes.Input:
                    _reportPage.InputField(el.Name).Clear();
                    _reportPage.InputField(el.Name).SendKeys(operation.ValueToUse);

                    break;

                case FilterTypes.AutoComplete:
                    _reportPage.InputWithAutoCompleteField(el.Name).Clear();
                    _reportPage.InputWithAutoCompleteField(el.Name).Click();
                    Console.WriteLine(operation.ValueToUse);
                    if (operation.ValueToUse.Length >= 4)
                    {
                        _reportPage.InputWithAutoCompleteField(el.Name).SendKeys(operation.ValueToUse.Substring(0, 4));
                    }
                    else
                    {
                        _reportPage.InputWithAutoCompleteField(el.Name).SendKeys(operation.ValueToUse);
                    }
                    _reportPage.InputWithAutoCompleteField(el.Name).Click();
                    _reportPage.SelectFromList(operation.ValueToUse).Click();

                    break;

                case FilterTypes.Date:
                    _reportPage.InputField(el.Name).Click();
                    _reportPage.InputField(el.Name).Clear();
                    _reportPage.InputField(el.Name).SendKeys(operation.StartDate.ToString());
                    _reportPage.InputField(el.Name).SendKeys(Keys.Enter);
                    _reportPage.Body.Click();
                    if (operation.Type == OperationType.Between)
                    {
                        _reportPage.AddFilter.Click();
                        _reportPage.Body.Click();
                        _reportPage.EndDateField(el.Name).Click();
                        _reportPage.EndDateField(el.Name).Clear();
                        _reportPage.EndDateField(el.Name).SendKeys(operation.EndDate.ToString());
                        _reportPage.Body.Click();
                    }
                    _driver.FindElement(By.XPath("*//span[text() = 'Apply']")).Click();

                    break;

                case FilterTypes.Select:
                    _reportPage.SelectField(el.Name).Click();
                    _reportPage.SelectFromListForFilter(operation.ValueToUse);
                    break;

                default:
                    break;
                }
            }
        }
Ejemplo n.º 2
0
        public void _001_Test(Field el, OperationWithValues operation, string reportName, int count)
        {
            var _reportPage = OpenReports();

            _reportPage.DataSourceElem.Click();
            _reportPage.Body.Click();
            _reportPage.DataSourceElem.Click();
            WaitElementIsShown(_reportPage.DataSourceList);

            _reportPage.SelectDataSource(reportName);

            WaitElementIsShown(_reportPage.AddFilter);
            WaitLoadinOverlayIsNotShown(_reportPage);

            _reportPage.AddFilter.Click();

            WaitElementIsShown(_reportPage.FilterList);
            _reportPage.SelectFilter(el.Name, count);

            WaitElementIsShown(_reportPage.FilterRow(el.Name));
            _reportPage.Body.Click();

            _reportPage.SelectAllColumns();
            _reportPage.SelectOperation(el.Name, OperationName(operation.Type));

            Thread.Sleep(4000);
            _reportPage.Body.Click();

            SetOperationDetails(el, operation, _reportPage);

            _reportPage.Body.Click();
            _reportPage.ApplyBtn.Click();

            if (operation.UseValueToCheck)
            {
                operation.ValueToUse = operation.ValueToCheck;
            }

            Thread.Sleep(2000);

            CheckOperation(operation, el);
        }
Ejemplo n.º 3
0
 history.Operations.Should().ContainSingle(
     OperationWithValues(type, occuredOn, amount, currency));
Ejemplo n.º 4
0
        public void CheckOperation(OperationWithValues operation, Field el)
        {
            switch (operation.Type)
            {
            case OperationType.Contains:
                if (operation.ExpectedEmptyTable)
                {
                    Assert.IsTrue(TableIsEmpty() || ColumnContains(operation.ValueToUse, el.Name));
                }
                else
                {
                    Assert.IsTrue(ColumnContains(operation.ValueToUse, el.Name));
                }
                break;

            case OperationType.DoesntContain:
                if (operation.ExpectedEmptyTable)
                {
                    Assert.IsTrue(TableIsEmpty() || ColumnNotContains(operation.ValueToUse, el.Name));
                }
                else
                {
                    Assert.IsTrue(ColumnNotContains(operation.ValueToUse, el.Name));
                }
                break;

            case OperationType.Is:
                if (operation.ExpectedEmptyTable)
                {
                    Assert.IsTrue(TableIsEmpty() || ColumnIs(operation.ValueToUse, el.Name));
                }
                else
                {
                    Assert.IsTrue(ColumnIs(operation.ValueToUse, el.Name));
                }
                break;

            case OperationType.IsNot:
                if (operation.ExpectedEmptyTable)
                {
                    Assert.IsTrue(TableIsEmpty() || ColumnIsNot(operation.ValueToUse, el.Name));
                }
                else
                {
                    Assert.IsTrue(ColumnIsNot(operation.ValueToUse, el.Name));
                }
                break;

            case OperationType.None:
                if (operation.ExpectedEmptyTable)
                {
                    Assert.IsTrue(TableIsEmpty() || ColumnIsEmpty(operation.ValueToUse, el.Name));
                }
                else
                {
                    Assert.IsTrue(ColumnIsEmpty(operation.ValueToUse, el.Name));
                }
                break;

            case OperationType.DateMoreThan:
                if (operation.ExpectedEmptyTable)
                {
                    Assert.IsTrue(TableIsEmpty() || DateMoreThan(operation.StartDate, el.Name));
                }
                else
                {
                    Assert.IsTrue(DateMoreThan(operation.StartDate, el.Name));
                }
                break;

            case OperationType.DateLesThan:
                if (operation.ExpectedEmptyTable)
                {
                    Assert.IsTrue(TableIsEmpty() || DateLessThan(operation.StartDate, el.Name));
                }
                else
                {
                    Assert.IsTrue(DateLessThan(operation.StartDate, el.Name));
                }
                break;

            case OperationType.Between:
                if (operation.ExpectedEmptyTable)
                {
                    Assert.IsTrue(TableIsEmpty() || DateBetween(operation.StartDate, operation.EndDate, el.Name));
                }
                else
                {
                    Assert.IsTrue(DateBetween(operation.StartDate, operation.EndDate, el.Name));
                }
                break;

            case OperationType.DateIs:
                if (operation.ExpectedEmptyTable)
                {
                    Assert.IsTrue(TableIsEmpty() || DateIs(operation.StartDate, el.Name));
                }
                else
                {
                    Assert.IsTrue(DateIs(operation.StartDate, el.Name));
                }
                break;

            case OperationType.DateIsNot:
                if (operation.ExpectedEmptyTable)
                {
                    Assert.IsTrue(TableIsEmpty() || DateIsNot(operation.StartDate, el.Name));
                }
                else
                {
                    Assert.IsTrue(DateIsNot(operation.StartDate, el.Name));
                }
                break;

            case OperationType.MoreThan:
                if (operation.ExpectedEmptyTable)
                {
                    Assert.IsTrue(TableIsEmpty() || NumberMoreThan(operation.ValueToUse, el.Name));
                }
                else
                {
                    Assert.IsTrue(NumberMoreThan(operation.ValueToUse, el.Name));
                }
                break;

            case OperationType.LessThan:
                if (operation.ExpectedEmptyTable)
                {
                    Assert.IsTrue(TableIsEmpty() || NumberLessThan(operation.ValueToUse, el.Name));
                }
                else
                {
                    Assert.IsTrue(NumberLessThan(operation.ValueToUse, el.Name));
                }
                break;

            default:
                break;
            }
        }