コード例 #1
0
ファイル: Steps.cs プロジェクト: alfa-laboratory/Molder
        public void ClearField(string name)
        {
            var element = BrowserController.GetBrowser().GetCurrentPage().GetElement(name);

            (element is Input).Should().BeTrue($"элемент \"{name}\" имеет отличный от Input профиль");
            (element as Input)?.Clear();
        }
コード例 #2
0
ファイル: Steps.cs プロジェクト: alfa-laboratory/Molder
        public void ClickAndHoldToWebElement(string name)
        {
            var element = BrowserController.GetBrowser().GetCurrentPage().GetElement(name);

            (element is BaseClick).Should().BeTrue($"элемент \"{name}\" имеет отличный от Click профиль");
            (element as BaseClick)?.ClickAndHold();
        }
コード例 #3
0
ファイル: Steps.cs プロジェクト: alfa-laboratory/Molder
        public void DropdownIntoIndex(string name, int index)
        {
            var element = BrowserController.GetBrowser().GetCurrentPage().GetElement(name);

            (element is Dropdown).Should().BeTrue($"элемент \"{name}\" имеет отличный от Dropdown профиль");
            (element as Dropdown)?.SelectByIndex(index);
        }
コード例 #4
0
ファイル: Steps.cs プロジェクト: alfa-laboratory/Molder
        public void SaveTitleActiveWebPage(string varName)
        {
            variableController.Variables.Should().NotContainKey(varName, $"переменная \"{varName}\" уже существует");

            var title = BrowserController.GetBrowser().Title;

            variableController.SetVariable(varName, title.GetType(), title);
        }
コード例 #5
0
ファイル: Steps.cs プロジェクト: alfa-laboratory/Molder
        public void GoToTabByNumber(int number)
        {
            (number--).Should().BePositive("неверно задан номер вкладки");
            number.Should().BeLessOrEqualTo(BrowserController.GetBrowser().Tabs,
                                            "выбранной вкладки не существует");

            BrowserController.GetBrowser().SwitchTo(number);
        }
コード例 #6
0
ファイル: Steps.cs プロジェクト: alfa-laboratory/Molder
        public void StoreWebElementValueOfAttributeInVariable(string attribute, string name, string varName)
        {
            this.variableController.Variables.Should().NotContainKey(varName, $"переменная \"{varName}\" уже существует");
            var element        = BrowserController.GetBrowser().GetCurrentPage().GetElement(name);
            var attributeValue = element.GetAttribute(attribute);

            this.variableController.SetVariable(varName, attributeValue.GetType(), attributeValue);
        }
コード例 #7
0
ファイル: Steps.cs プロジェクト: alfa-laboratory/Molder
        public void SaveUrlActivePage(string varName)
        {
            variableController.Variables.Should().NotContainKey(varName, $"переменная \"{varName}\" уже существует");

            var url = BrowserController.GetBrowser().Url;

            variableController.SetVariable(varName, url.GetType(), url);
        }
コード例 #8
0
ファイル: Steps.cs プロジェクト: alfa-laboratory/Molder
        public void SetVariableValueOfElementValue(string varName, string name)
        {
            this.variableController.Variables.Should().NotContainKey(varName, $"переменная \"{varName}\" уже существует");

            var element = BrowserController.GetBrowser().GetCurrentPage().GetElement(name);

            this.variableController.SetVariable(varName, element.Value.GetType(), element.Value);
        }
コード例 #9
0
ファイル: Steps.cs プロジェクト: alfa-laboratory/Molder
        public void SetVariableValueOfAlertText(string varName)
        {
            this.variableController.Variables.Should().NotContainKey(varName, $"переменная \"{varName}\" уже существует");

            var alert = BrowserController.GetBrowser().Alert();

            this.variableController.SetVariable(varName, alert.Text.GetType(), alert.Text);
        }
コード例 #10
0
ファイル: Steps.cs プロジェクト: alfa-laboratory/Molder
        public void LoadFileToElement(string varName, string name)
        {
            var element = BrowserController.GetBrowser().GetCurrentPage().GetElement(name);

            this.variableController.Variables.Should().ContainKey(varName, $"переменная \"{varName}\" не существует");
            var path = this.variableController.GetVariableValueText(varName);

            path.Should().NotBeNull($"путь к файлу \"{varName}\" пустой");
            (element as File)?.SetText(path);
        }
コード例 #11
0
ファイル: Steps.cs プロジェクト: alfa-laboratory/Molder
        public void UploadFileIntoField(string name, string fullpath)
        {
            fullpath = variableController.ReplaceVariables(fullpath) ?? fullpath;

            var element = BrowserController.GetBrowser().GetCurrentPage().GetElement(name);

            (element is File).Should().BeTrue($"элемент \"{name}\" имеет отличный от File профиль");

            (element as File)?.SetText(fullpath);
        }
コード例 #12
0
ファイル: Steps.cs プロジェクト: alfa-laboratory/Molder
        public void DropdownIntoText(string name, string text)
        {
            text.Should().NotBeNull($"значение \"expected\" не задано");
            text = this.variableController.ReplaceVariables(text) ?? text;

            var element = BrowserController.GetBrowser().GetCurrentPage().GetElement(name);

            (element is Dropdown).Should().BeTrue($"элемент \"{name}\" имеет отличный от Dropdown профиль");
            (element as Dropdown)?.SelectByText(text);
        }
コード例 #13
0
ファイル: Steps.cs プロジェクト: alfa-laboratory/Molder
        public void InputValueIntoField(string name, string text)
        {
            var element = BrowserController.GetBrowser().GetCurrentPage().GetElement(name);

            (element is Input).Should().BeTrue($"элемент \"{name}\" имеет отличный от Input профиль");

            text.Should().NotBeNull($"значение \"text\" не задано");
            text = this.variableController.ReplaceVariables(text) ?? text;
            (element as Input)?.SetText(text);
        }
コード例 #14
0
ファイル: Steps.cs プロジェクト: alfa-laboratory/Molder
        public void WebElementTextNotContainsValue(string name, string expected)
        {
            expected.Should().NotBeNull($"значение \"expected\" не задано");
            expected = this.variableController.ReplaceVariables(expected) ?? expected;

            var element = BrowserController.GetBrowser().GetCurrentPage().GetElement(name);

            element.Text.Should().NotBeNullOrWhiteSpace($"эначение элемента \"{name}\" пусто или не существует");

            element.Text.Should().NotContain(expected, $"текст у элемента \"{name}\":\"{element.Text}\" содержит \"{expected}\"");
        }
コード例 #15
0
ファイル: Steps.cs プロジェクト: alfa-laboratory/Molder
        public void WebElementValueEqualValue(string name, string expected)
        {
            expected.Should().NotBeNull($"значение \"expected\" не задано");
            expected = this.variableController.ReplaceVariables(expected) ?? expected;

            var element = BrowserController.GetBrowser().GetCurrentPage().GetElement(name);

            element.Value.ToString().Should().NotBeNullOrWhiteSpace($"эначение элемента \"{name}\" пусто или не существует");

            element.Value.ToString().Should().Be(expected, $"значение элемента \"{name}\":\"{element.Value}\" не равно \"{expected}\"");
        }
コード例 #16
0
ファイル: Steps.cs プロジェクト: alfa-laboratory/Molder
        public void AlertClick(string key)
        {
            var alert = BrowserController.GetBrowser().Alert();

            switch (key)
            {
            case "Accept":
                alert.Accept();
                break;

            case "Dismiss":
                alert.Dismiss();
                break;

            default:
                /// TODO добавить текст ошибки
                throw new ArgumentOutOfRangeException("Key for alert is not valid");
            }
        }
コード例 #17
0
ファイル: Steps.cs プロジェクト: alfa-laboratory/Molder
        public void ClickToWebElement(string name)
        {
            var stopwatch = new Stopwatch();
            var element   = BrowserController.GetBrowser().GetCurrentPage().GetElement(name);

            stopwatch.Start();
            try
            {
                var isDisplayed = element.Displayed;
                while (!isDisplayed && stopwatch.Elapsed.Ticks < (TimeSpan.TicksPerSecond * Constants.TIC_IN_SEC))
                {
                    isDisplayed = element.Displayed;
                }

                (element is BaseClick).Should().BeTrue($"элемент \"{name}\" имеет отличный от Click профиль");
                (element as BaseClick)?.Click();
                stopwatch.Stop();
            }
            catch
            {
                stopwatch.Stop();
            }
        }
コード例 #18
0
ファイル: Steps.cs プロジェクト: alfa-laboratory/Molder
 public void GetDefaultFrame()
 {
     BrowserController.GetBrowser().GetCurrentPage().GetDefaultFrame();
 }
コード例 #19
0
ファイル: Steps.cs プロジェクト: alfa-laboratory/Molder
 public void GoToFrame(string frame)
 {
     BrowserController.GetBrowser().GetCurrentPage().GetFrame(frame);
 }
コード例 #20
0
ファイル: Steps.cs プロジェクト: alfa-laboratory/Molder
 public void BackToPage()
 {
     BrowserController.GetBrowser().GetCurrentPage().BackToPage();
 }
コード例 #21
0
ファイル: Steps.cs プロジェクト: alfa-laboratory/Molder
 public void GoToBlock(string block)
 {
     BrowserController.GetBrowser().GetCurrentPage().GetBlock(block);
 }
コード例 #22
0
ファイル: Steps.cs プロジェクト: alfa-laboratory/Molder
 public void Refresh()
 {
     BrowserController.GetBrowser().Refresh();
 }
コード例 #23
0
ファイル: Steps.cs プロジェクト: alfa-laboratory/Molder
        public void WebElementIsEditable(string name)
        {
            var element = BrowserController.GetBrowser().GetCurrentPage().GetElement(name);

            element.Editabled.Should().BeTrue($"элемент \"{name}\" не доступен для редактирования");
        }
コード例 #24
0
ファイル: Steps.cs プロジェクト: alfa-laboratory/Molder
 public void CloseWebPage()
 {
     BrowserController.GetBrowser().Close();
 }
コード例 #25
0
ファイル: Steps.cs プロジェクト: alfa-laboratory/Molder
        public void WebElementIsNotDisplayed(string name)
        {
            var element = BrowserController.GetBrowser().GetCurrentPage().GetElement(name);

            element.NotDisplayed.Should().BeTrue($"элемент \"{name}\" отображается");
        }
コード例 #26
0
ファイル: Steps.cs プロジェクト: alfa-laboratory/Molder
 public void SetCurrentPage(string name)
 {
     BrowserController.GetBrowser().SetCurrentPage(name);
 }
コード例 #27
0
ファイル: Steps.cs プロジェクト: alfa-laboratory/Molder
        public void WebElementIsDisabled(string name)
        {
            var element = BrowserController.GetBrowser().GetCurrentPage().GetElement(name);

            element.Disabled.Should().BeTrue($"элемент \"{name}\" активен");
        }
コード例 #28
0
ファイル: Steps.cs プロジェクト: alfa-laboratory/Molder
        public void WebElementIsNotSelected(string name)
        {
            var element = BrowserController.GetBrowser().GetCurrentPage().GetElement(name);

            element.NotSelected.Should().BeTrue($"элемент \"{name}\" выбран");
        }
コード例 #29
0
ファイル: Steps.cs プロジェクト: alfa-laboratory/Molder
 public void GoPageTop()
 {
     BrowserController.GetBrowser().GetCurrentPage().PageTop();
 }
コード例 #30
0
ファイル: Steps.cs プロジェクト: alfa-laboratory/Molder
 public void UpdateCurrentPage(string name)
 {
     BrowserController.GetBrowser().UpdateCurrentPage(name);
 }