فهرست منبع

upd editActiveSmartFilterCheck

VladSenyuta 2 سال پیش
والد
کامیت
9028116fad

+ 21 - 20
kafka-ui-e2e-checks/src/main/java/com/provectus/kafka/ui/pages/topics/TopicDetails.java

@@ -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() {

+ 40 - 44
kafka-ui-e2e-checks/src/test/java/com/provectus/kafka/ui/smokesuite/topics/TopicsTest.java

@@ -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()));