upd editActiveSmartFilterCheck
This commit is contained in:
parent
d9e7d29f54
commit
9028116fad
2 changed files with 61 additions and 64 deletions
|
@ -38,7 +38,7 @@ public class TopicDetails extends BasePage {
|
|||
protected SelenideElement savedFiltersLink = $x("//div[text()='Saved Filters']");
|
||||
protected SelenideElement addFilterCodeModalTitle = $x("//label[text()='Filter code']");
|
||||
protected SelenideElement addFilterCodeEditor = $x("//div[@id='ace-editor']");
|
||||
protected SelenideElement addFilterCodeEditorTextarea = $x("//div[@id='ace-editor']//textarea");
|
||||
protected SelenideElement addFilterCodeTextarea = $x("//div[@id='ace-editor']//textarea");
|
||||
protected SelenideElement saveThisFilterCheckBoxAddFilterMdl = $x("//input[@name='saveFilter']");
|
||||
protected SelenideElement displayNameInputAddFilterMdl = $x("//input[@placeholder='Enter Name']");
|
||||
protected SelenideElement cancelBtnAddFilterMdl = $x("//button[text()='Cancel']");
|
||||
|
@ -58,7 +58,6 @@ public class TopicDetails extends BasePage {
|
|||
protected SelenideElement previousMonthButton = $x("//button[@aria-label='Previous Month']");
|
||||
protected SelenideElement nextMonthButton = $x("//button[@aria-label='Next Month']");
|
||||
protected SelenideElement calendarTimeFld = $x("//input[@placeholder='Time']");
|
||||
protected SelenideElement editActiveFilterBtn = $x("//div[@data-testid='editActiveSmartFilterBtn']");
|
||||
protected String detailsTabLtr = "//nav//a[contains(text(),'%s')]";
|
||||
protected String dayCellLtr = "//div[@role='option'][contains(text(),'%d')]";
|
||||
protected String seekFilterDdlLocator = "//ul[@id='selectSeekType']/ul/li[text()='%s']";
|
||||
|
@ -66,6 +65,7 @@ public class TopicDetails extends BasePage {
|
|||
protected String consumerIdLocator = "//a[@title='%s']";
|
||||
protected String topicHeaderLocator = "//h1[contains(text(),'%s')]";
|
||||
protected String activeFilterNameLocator = "//div[@data-testid='activeSmartFilter']/div[1][contains(text(),'%s')]";
|
||||
protected String editActiveFilterBtnLocator = "//div[text()='%s']/../div[@data-testid='editActiveSmartFilterBtn']";
|
||||
protected String settingsGridValueLocator = "//tbody/tr/td/span[text()='%s']//ancestor::tr/td[2]/span";
|
||||
|
||||
@Step
|
||||
|
@ -188,8 +188,9 @@ public class TopicDetails extends BasePage {
|
|||
}
|
||||
|
||||
@Step
|
||||
public TopicDetails clickEditActiveFiltersBtn() {
|
||||
editActiveFilterBtn.shouldBe(Condition.enabled).click();
|
||||
public TopicDetails clickEditActiveFilterBtn(String filterName) {
|
||||
$x(String.format(editActiveFilterBtnLocator, filterName))
|
||||
.shouldBe(Condition.enabled).click();
|
||||
return this;
|
||||
}
|
||||
|
||||
|
@ -232,25 +233,25 @@ public class TopicDetails extends BasePage {
|
|||
}
|
||||
|
||||
@Step
|
||||
public TopicDetails setFilterCodeFieldAddFilterMdl(String filterCode) {
|
||||
addFilterCodeEditorTextarea.shouldBe(Condition.enabled).setValue(filterCode);
|
||||
public TopicDetails setFilterCodeFldAddFilterMdl(String filterCode) {
|
||||
addFilterCodeTextarea.shouldBe(Condition.enabled).setValue(filterCode);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Step
|
||||
public boolean doesFilterCodeFieldMatchValue(String value) {
|
||||
// the code is not reflected in "addFilterCodeEditorTextarea" until "addFilterCodeEditor" is clicked
|
||||
// otherwise "addFilterCodeEditorTextarea" is empty string even though the code is displayed in the editor
|
||||
addFilterCodeEditor.click();
|
||||
String codeValue = addFilterCodeEditorTextarea.getValue();
|
||||
// the value retrieved from "addFilterCodeEditorTextarea" is appended with 2x new line characters e.g. "code\n\n"
|
||||
String codeValueWithoutNewLines = codeValue.substring(0, codeValue.length() - 2);
|
||||
return codeValueWithoutNewLines.equals(value);
|
||||
public String getFilterCodeValue() {
|
||||
addFilterCodeEditor.shouldBe(Condition.enabled).click();
|
||||
String value = addFilterCodeTextarea.getValue();
|
||||
if (value == null) {
|
||||
return null;
|
||||
} else {
|
||||
return value.substring(0, value.length() - 2);
|
||||
}
|
||||
}
|
||||
|
||||
@Step
|
||||
public boolean doesFilterNameFieldMatchValue(String value) {
|
||||
return displayNameInputAddFilterMdl.shouldBe(Condition.enabled).getValue().equals(value);
|
||||
public String getFilterNameValue() {
|
||||
return displayNameInputAddFilterMdl.shouldBe(Condition.enabled).getValue();
|
||||
}
|
||||
|
||||
@Step
|
||||
|
@ -308,13 +309,13 @@ public class TopicDetails extends BasePage {
|
|||
}
|
||||
|
||||
@Step
|
||||
public boolean isActiveFilterVisible(String activeFilterName) {
|
||||
return isVisible($x(String.format(activeFilterNameLocator, activeFilterName)));
|
||||
public boolean isActiveFilterVisible(String filterName) {
|
||||
return isVisible($x(String.format(activeFilterNameLocator, filterName)));
|
||||
}
|
||||
|
||||
@Step
|
||||
public boolean doesSearchFieldContainValue(String value) {
|
||||
return searchFld.shouldBe(Condition.visible).getValue().equals(value);
|
||||
public String getSearchFieldValue() {
|
||||
return searchFld.shouldBe(Condition.visible).getValue();
|
||||
}
|
||||
|
||||
public List<SelenideElement> getAllAddFilterModalVisibleElements() {
|
||||
|
|
|
@ -313,14 +313,44 @@ public class TopicsTest extends BaseTest {
|
|||
verifyElementsCondition(topicDetails.getAllAddFilterModalDisabledElements(), Condition.disabled);
|
||||
Assert.assertFalse(topicDetails.isSaveThisFilterCheckBoxSelected(), "isSaveThisFilterCheckBoxSelected()");
|
||||
topicDetails
|
||||
.setFilterCodeFieldAddFilterMdl(filterName);
|
||||
.setFilterCodeFldAddFilterMdl(filterName);
|
||||
Assert.assertTrue(topicDetails.isAddFilterBtnAddFilterMdlEnabled(), "isAddFilterBtnAddFilterMdlEnabled()");
|
||||
topicDetails.clickAddFilterBtnAndCloseMdl(true);
|
||||
Assert.assertTrue(topicDetails.isActiveFilterVisible(filterName), "isActiveFilterVisible()");
|
||||
}
|
||||
|
||||
@QaseId(13)
|
||||
@QaseId(352)
|
||||
@Test(priority = 13)
|
||||
public void editActiveSmartFilterCheck() {
|
||||
String filterName = randomAlphabetic(5);
|
||||
String filterCode = randomAlphabetic(5);
|
||||
navigateToTopicsAndOpenDetails(TOPIC_FOR_CHECK_FILTERS.getName());
|
||||
topicDetails
|
||||
.openDetailsTab(MESSAGES)
|
||||
.clickMessagesAddFiltersBtn()
|
||||
.waitUntilAddFiltersMdlVisible()
|
||||
.setFilterCodeFldAddFilterMdl(filterCode)
|
||||
.setDisplayNameFldAddFilterMdl(filterName)
|
||||
.clickAddFilterBtnAndCloseMdl(true)
|
||||
.clickEditActiveFilterBtn(filterName)
|
||||
.waitUntilAddFiltersMdlVisible();
|
||||
SoftAssert softly = new SoftAssert();
|
||||
softly.assertEquals(topicDetails.getFilterCodeValue(), filterCode, "getFilterCodeValue()");
|
||||
softly.assertEquals(topicDetails.getFilterNameValue(), filterName, "getFilterNameValue()");
|
||||
softly.assertAll();
|
||||
String newFilterName = randomAlphabetic(5);
|
||||
String newFilterCode = randomAlphabetic(5);
|
||||
topicDetails
|
||||
.setFilterCodeFldAddFilterMdl(newFilterCode)
|
||||
.setDisplayNameFldAddFilterMdl(newFilterName)
|
||||
.clickSaveFilterBtnAndCloseMdl(true);
|
||||
softly.assertTrue(topicDetails.isActiveFilterVisible(newFilterName), "isActiveFilterVisible()");
|
||||
softly.assertEquals(topicDetails.getSearchFieldValue(), newFilterCode, "getSearchFieldValue()");
|
||||
softly.assertAll();
|
||||
}
|
||||
|
||||
@QaseId(13)
|
||||
@Test(priority = 14)
|
||||
public void checkFilterSavingWithinSavedFilters() {
|
||||
String displayName = randomAlphabetic(5);
|
||||
navigateToTopicsAndOpenDetails(TOPIC_FOR_CHECK_FILTERS.getName());
|
||||
|
@ -328,7 +358,7 @@ public class TopicsTest extends BaseTest {
|
|||
.openDetailsTab(MESSAGES)
|
||||
.clickMessagesAddFiltersBtn()
|
||||
.waitUntilAddFiltersMdlVisible()
|
||||
.setFilterCodeFieldAddFilterMdl(randomAlphabetic(4))
|
||||
.setFilterCodeFldAddFilterMdl(randomAlphabetic(4))
|
||||
.selectSaveThisFilterCheckboxMdl(true)
|
||||
.setDisplayNameFldAddFilterMdl(displayName);
|
||||
Assert.assertTrue(topicDetails.isAddFilterBtnAddFilterMdlEnabled(),
|
||||
|
@ -341,7 +371,7 @@ public class TopicsTest extends BaseTest {
|
|||
}
|
||||
|
||||
@QaseId(14)
|
||||
@Test(priority = 14)
|
||||
@Test(priority = 15)
|
||||
public void checkApplyingSavedFilterWithinTopicMessages() {
|
||||
String displayName = randomAlphabetic(5);
|
||||
navigateToTopicsAndOpenDetails(TOPIC_FOR_CHECK_FILTERS.getName());
|
||||
|
@ -349,7 +379,7 @@ public class TopicsTest extends BaseTest {
|
|||
.openDetailsTab(MESSAGES)
|
||||
.clickMessagesAddFiltersBtn()
|
||||
.waitUntilAddFiltersMdlVisible()
|
||||
.setFilterCodeFieldAddFilterMdl(randomAlphabetic(4))
|
||||
.setFilterCodeFldAddFilterMdl(randomAlphabetic(4))
|
||||
.selectSaveThisFilterCheckboxMdl(true)
|
||||
.setDisplayNameFldAddFilterMdl(displayName)
|
||||
.clickAddFilterBtnAndCloseMdl(false)
|
||||
|
@ -360,7 +390,7 @@ public class TopicsTest extends BaseTest {
|
|||
}
|
||||
|
||||
@QaseId(11)
|
||||
@Test(priority = 15)
|
||||
@Test(priority = 16)
|
||||
public void checkShowInternalTopicsButton() {
|
||||
navigateToTopics();
|
||||
topicsList
|
||||
|
@ -377,7 +407,7 @@ public class TopicsTest extends BaseTest {
|
|||
}
|
||||
|
||||
@QaseId(334)
|
||||
@Test(priority = 16)
|
||||
@Test(priority = 17)
|
||||
public void checkInternalTopicsNaming() {
|
||||
navigateToTopics();
|
||||
SoftAssert softly = new SoftAssert();
|
||||
|
@ -390,7 +420,7 @@ public class TopicsTest extends BaseTest {
|
|||
}
|
||||
|
||||
@QaseId(56)
|
||||
@Test(priority = 17)
|
||||
@Test(priority = 18)
|
||||
public void checkRetentionBytesAccordingToMaxSizeOnDisk() {
|
||||
navigateToTopics();
|
||||
topicsList
|
||||
|
@ -438,7 +468,7 @@ public class TopicsTest extends BaseTest {
|
|||
}
|
||||
|
||||
@QaseId(247)
|
||||
@Test(priority = 18)
|
||||
@Test(priority = 19)
|
||||
public void recreateTopicFromTopicProfile() {
|
||||
Topic topicToRecreate = new Topic()
|
||||
.setName("topic-to-recreate-" + randomAlphabetic(5))
|
||||
|
@ -466,7 +496,7 @@ public class TopicsTest extends BaseTest {
|
|||
}
|
||||
|
||||
@QaseId(8)
|
||||
@Test(priority = 19)
|
||||
@Test(priority = 20)
|
||||
public void checkCopyTopicPossibility() {
|
||||
Topic topicToCopy = new Topic()
|
||||
.setName("topic-to-copy-" + randomAlphabetic(5))
|
||||
|
@ -489,40 +519,6 @@ public class TopicsTest extends BaseTest {
|
|||
Assert.assertTrue(topicDetails.isTopicHeaderVisible(topicToCopy.getName()), "isTopicHeaderVisible()");
|
||||
}
|
||||
|
||||
// todo: what does it mean? what's the optimal value?
|
||||
// @QaseId(12)
|
||||
@Test(priority = 20)
|
||||
public void editFilter() {
|
||||
String filterName = randomAlphabetic(5);
|
||||
String filterCode = randomAlphabetic(5);
|
||||
|
||||
navigateToTopicsAndOpenDetails(TOPIC_FOR_CHECK_FILTERS.getName());
|
||||
topicDetails
|
||||
.openDetailsTab(MESSAGES)
|
||||
.clickMessagesAddFiltersBtn()
|
||||
.waitUntilAddFiltersMdlVisible()
|
||||
.setFilterCodeFieldAddFilterMdl(filterCode)
|
||||
.setDisplayNameFldAddFilterMdl(filterName)
|
||||
.clickAddFilterBtnAndCloseMdl(true)
|
||||
.clickEditActiveFiltersBtn()
|
||||
.waitUntilAddFiltersMdlVisible();
|
||||
|
||||
Assert.assertTrue(topicDetails.doesFilterCodeFieldMatchValue(filterCode), "doesFilterCodeFieldValueMatchInput()");
|
||||
Assert.assertTrue(topicDetails.doesFilterNameFieldMatchValue(filterName), "doesFilterNameFieldValueMatchInput()");
|
||||
|
||||
String newFilterName = randomAlphabetic(5);
|
||||
String newFilterCode = randomAlphabetic(5);
|
||||
|
||||
topicDetails
|
||||
.setDisplayNameFldAddFilterMdl(newFilterName)
|
||||
.setFilterCodeFieldAddFilterMdl(newFilterCode)
|
||||
.clickSaveFilterBtnAndCloseMdl(true);
|
||||
|
||||
Assert.assertTrue(topicDetails.isActiveFilterVisible(newFilterName), "isActiveFilterVisible()");
|
||||
Assert.assertTrue(topicDetails.doesSearchFieldContainValue(newFilterCode), "isNewCodeVisible()");
|
||||
|
||||
}
|
||||
|
||||
@AfterClass(alwaysRun = true)
|
||||
public void afterClass() {
|
||||
TOPIC_LIST.forEach(topic -> apiService.deleteTopic(topic.getName()));
|
||||
|
|
Loading…
Add table
Reference in a new issue