Пример #1
0
        private void EnsureMandatoryValuesAreProvided(ParentCampaignsData data)
        {
            var dataErrorFound     = false;
            var campaignDataErrors = new StringBuilder();

            campaignDataErrors.Append("The feature file " + FeatureContext.FeatureInfo.Title + " has the following data issues:");

            if (string.IsNullOrWhiteSpace(data.Name))
            {
                dataErrorFound = true;
                campaignDataErrors.Append("\n- Parent campaign name was not set");
            }

            if (string.IsNullOrWhiteSpace(data.Status))
            {
                dataErrorFound = true;
                campaignDataErrors.Append("\n- Parent campaign status was not set");
            }

            if (string.IsNullOrWhiteSpace(data.Client))
            {
                dataErrorFound = true;
                campaignDataErrors.Append("\n- Parent campaign client was not set");
            }

            if (dataErrorFound)
            {
                throw new ArgumentException(campaignDataErrors.ToString());
            }
        }
Пример #2
0
        private IWebElement GetRowWithParentCampaignName(ParentCampaignsData data)
        {
            var parentCampaignNameColumnIndex = GetColumnIndexWithTableHeader("Parent Campaign Name");

            var row = FindElementsByXPath($"{PARENT_CAMPAIGNS_TABLE_XPATH}//td[{parentCampaignNameColumnIndex}]").Where(x => x.Text == data.Name).FirstOrDefault();

            return(row);
        }
Пример #3
0
        public void ClickEdit(ParentCampaignsData data)
        {
            var rowParentCampaignName = GetRowWithParentCampaignName(data);

            var _lnkEdit = rowParentCampaignName.FindElement(By.XPath($"..//ancestor::tr//a[text() = 'Edit']"));

            ScrollAndClickElement(_lnkEdit);
            SwitchToFrame(ADD_EDIT_PARENT_CAMPAIGN_FRAME);
        }
Пример #4
0
        public bool IsCampaignStatusCorrect(ParentCampaignsData data)
        {
            var statusColumnIndex = GetColumnIndexWithTableHeader("Status");

            var rowParentCampaignName = GetRowWithParentCampaignName(data);

            var isCampaignStatusCorrect = rowParentCampaignName.FindElement(By.XPath($"./ancestor::tr//td[{statusColumnIndex}]")).Text.Equals(data.Status.ToUpper());

            return(isCampaignStatusCorrect);
        }
Пример #5
0
        public bool IsParentCampaignExist(ParentCampaignsData data)
        {
            EnsureMandatoryValuesAreProvided(data);

            SelectWebformDropdownValueByText(_ddlClient, data.Client);

            var isParentCampaignExist = false;

            if (IsElementPresent(By.XPath($"{PARENT_CAMPAIGNS_TABLE_XPATH}/table/thead")))
            {
                var parentCampaignNameColumnIndex = GetColumnIndexWithTableHeader("Parent Campaign Name");

                isParentCampaignExist = FindElementsByXPath($"{PARENT_CAMPAIGNS_TABLE_XPATH}//td[{parentCampaignNameColumnIndex}]").Where(x => x.Text == data.Name).Any();
            }

            return(isParentCampaignExist);
        }
Пример #6
0
        public void PopulateParentCampaignDetails(ParentCampaignsData data)
        {
            if (_ddlClient.Enabled)
            {
                SelectWebformDropdownValueByText(_ddlClient, data.Client);
            }

            ClearInputAndTypeValueIfRequired(_txtParentCampaignName, data.Name);

            if (_chkEnabled.Enabled)
            {
                var isEnable = false;

                if (data.Status.ToLower().Equals("enabled"))
                {
                    isEnable = true;
                }

                SetWebformCheckBoxState(_chkEnabled, isEnable);
            }

            ScrollAndClickElement(_btnSave);
            ScrollAndClickElement(_btnClose);
        }