浏览代码

upd json input

VladSenyuta 2 年之前
父节点
当前提交
172133975f
共有 16 个文件被更改,包括 62 次插入26 次删除
  1. 3 3
      kafka-ui-e2e-checks/src/main/java/com/provectus/kafka/ui/models/Schema.java
  2. 13 0
      kafka-ui-e2e-checks/src/main/java/com/provectus/kafka/ui/pages/BasePage.java
  3. 14 3
      kafka-ui-e2e-checks/src/main/java/com/provectus/kafka/ui/pages/connectors/ConnectorCreateForm.java
  4. 12 2
      kafka-ui-e2e-checks/src/main/java/com/provectus/kafka/ui/pages/schemas/SchemaCreateForm.java
  5. 9 0
      kafka-ui-e2e-checks/src/main/java/com/provectus/kafka/ui/utilities/WebUtils.java
  6. 0 0
      kafka-ui-e2e-checks/src/main/resources/testData/connectors/config_for_create_connector.json
  7. 0 0
      kafka-ui-e2e-checks/src/main/resources/testData/connectors/config_for_create_connector_via_api.json
  8. 0 0
      kafka-ui-e2e-checks/src/main/resources/testData/connectors/config_for_update_connector.json
  9. 0 0
      kafka-ui-e2e-checks/src/main/resources/testData/connectors/delete_connector_config.json
  10. 2 9
      kafka-ui-e2e-checks/src/main/resources/testData/schemas/schema_avro_for_update.json
  11. 0 0
      kafka-ui-e2e-checks/src/main/resources/testData/schemas/schema_avro_value.json
  12. 0 0
      kafka-ui-e2e-checks/src/main/resources/testData/schemas/schema_json_Value.json
  13. 0 0
      kafka-ui-e2e-checks/src/main/resources/testData/schemas/schema_protobuf_value.txt
  14. 0 0
      kafka-ui-e2e-checks/src/main/resources/testData/topics/message_content_create_topic.json
  15. 4 4
      kafka-ui-e2e-checks/src/test/java/com/provectus/kafka/ui/smokeSuite/connectors/ConnectorsTest.java
  16. 5 5
      kafka-ui-e2e-checks/src/test/java/com/provectus/kafka/ui/smokeSuite/schemas/SchemasTest.java

+ 3 - 3
kafka-ui-e2e-checks/src/main/java/com/provectus/kafka/ui/models/Schema.java

@@ -16,18 +16,18 @@ public class Schema {
     public static Schema createSchemaAvro() {
     public static Schema createSchemaAvro() {
         return new Schema().setName("schema_avro-" + randomAlphabetic(5))
         return new Schema().setName("schema_avro-" + randomAlphabetic(5))
                 .setType(SchemaType.AVRO)
                 .setType(SchemaType.AVRO)
-                .setValuePath(System.getProperty("user.dir") + "/src/main/resources/testData/schema_avro_value.json");
+                .setValuePath(System.getProperty("user.dir") + "/src/main/resources/testData/schemas/schema_avro_value.json");
     }
     }
 
 
     public static Schema createSchemaJson() {
     public static Schema createSchemaJson() {
         return new Schema().setName("schema_json-" + randomAlphabetic(5))
         return new Schema().setName("schema_json-" + randomAlphabetic(5))
                 .setType(SchemaType.JSON)
                 .setType(SchemaType.JSON)
-                .setValuePath(System.getProperty("user.dir") + "/src/main/resources/testData/schema_Json_Value.json");
+                .setValuePath(System.getProperty("user.dir") + "/src/main/resources/testData/schemas/schema_json_Value.json");
     }
     }
 
 
     public static Schema createSchemaProtobuf() {
     public static Schema createSchemaProtobuf() {
         return new Schema().setName("schema_protobuf-" + randomAlphabetic(5))
         return new Schema().setName("schema_protobuf-" + randomAlphabetic(5))
                 .setType(SchemaType.PROTOBUF)
                 .setType(SchemaType.PROTOBUF)
-                .setValuePath(System.getProperty("user.dir") + "/src/main/resources/testData/schema_protobuf_value.txt");
+                .setValuePath(System.getProperty("user.dir") + "/src/main/resources/testData/schemas/schema_protobuf_value.txt");
     }
     }
 }
 }

+ 13 - 0
kafka-ui-e2e-checks/src/main/java/com/provectus/kafka/ui/pages/BasePage.java

@@ -3,8 +3,11 @@ package com.provectus.kafka.ui.pages;
 import com.codeborne.selenide.Condition;
 import com.codeborne.selenide.Condition;
 import com.codeborne.selenide.ElementsCollection;
 import com.codeborne.selenide.ElementsCollection;
 import com.codeborne.selenide.SelenideElement;
 import com.codeborne.selenide.SelenideElement;
+import com.codeborne.selenide.WebDriverRunner;
 import com.provectus.kafka.ui.utilities.WebUtils;
 import com.provectus.kafka.ui.utilities.WebUtils;
 import lombok.extern.slf4j.Slf4j;
 import lombok.extern.slf4j.Slf4j;
+import org.openqa.selenium.Keys;
+import org.openqa.selenium.interactions.Actions;
 
 
 import java.time.Duration;
 import java.time.Duration;
 
 
@@ -40,6 +43,16 @@ public abstract class BasePage extends WebUtils {
         clickByJavaScript(submitBtn);
         clickByJavaScript(submitBtn);
     }
     }
 
 
+    protected void setJsonInputValue(SelenideElement jsonInput, String jsonConfig) {
+        sendKeysByActions(jsonInput, jsonConfig.replace("  ", ""));
+        new Actions(WebDriverRunner.getWebDriver())
+                .keyDown(Keys.SHIFT)
+                .sendKeys(Keys.PAGE_DOWN)
+                .keyUp(Keys.SHIFT)
+                .sendKeys(Keys.DELETE)
+                .perform();
+    }
+
     protected SelenideElement getTableElement(String elementName) {
     protected SelenideElement getTableElement(String elementName) {
         log.debug("\ngetTableElement: {}", elementName);
         log.debug("\ngetTableElement: {}", elementName);
         return $x(String.format(tableElementNameLocator, elementName));
         return $x(String.format(tableElementNameLocator, elementName));

+ 14 - 3
kafka-ui-e2e-checks/src/main/java/com/provectus/kafka/ui/pages/connectors/ConnectorCreateForm.java

@@ -21,11 +21,22 @@ public class ConnectorCreateForm extends BasePage {
     }
     }
 
 
     @Step
     @Step
-    public ConnectorCreateForm setConnectorDetails(String connectName, String configJson) {
+    public ConnectorCreateForm setName(String connectName) {
         nameField.shouldBe(Condition.enabled).setValue(connectName);
         nameField.shouldBe(Condition.enabled).setValue(connectName);
+        return this;
+    }
+
+    @Step
+    public ConnectorCreateForm setConfig(String configJson) {
         configField.shouldBe(Condition.enabled).click();
         configField.shouldBe(Condition.enabled).click();
-        contentTextArea.setValue(configJson);
-        nameField.shouldBe(Condition.enabled).click();
+        setJsonInputValue(contentTextArea, configJson);
+        return this;
+    }
+
+    @Step
+    public ConnectorCreateForm setConnectorDetails(String connectName, String configJson) {
+        setName(connectName);
+        setConfig(configJson);
         return this;
         return this;
     }
     }
 
 

+ 12 - 2
kafka-ui-e2e-checks/src/main/java/com/provectus/kafka/ui/pages/schemas/SchemaCreateForm.java

@@ -2,10 +2,13 @@ package com.provectus.kafka.ui.pages.schemas;
 
 
 import com.codeborne.selenide.Condition;
 import com.codeborne.selenide.Condition;
 import com.codeborne.selenide.SelenideElement;
 import com.codeborne.selenide.SelenideElement;
+import com.codeborne.selenide.WebDriverRunner;
 import com.provectus.kafka.ui.api.model.CompatibilityLevel;
 import com.provectus.kafka.ui.api.model.CompatibilityLevel;
 import com.provectus.kafka.ui.api.model.SchemaType;
 import com.provectus.kafka.ui.api.model.SchemaType;
 import com.provectus.kafka.ui.pages.BasePage;
 import com.provectus.kafka.ui.pages.BasePage;
 import io.qameta.allure.Step;
 import io.qameta.allure.Step;
+import org.openqa.selenium.Keys;
+import org.openqa.selenium.interactions.Actions;
 
 
 import java.util.List;
 import java.util.List;
 import java.util.stream.Collectors;
 import java.util.stream.Collectors;
@@ -92,8 +95,15 @@ public class SchemaCreateForm extends BasePage {
     @Step
     @Step
     public SchemaCreateForm setNewSchemaValue(String configJson) {
     public SchemaCreateForm setNewSchemaValue(String configJson) {
         newSchemaTextArea.shouldBe(Condition.visible).click();
         newSchemaTextArea.shouldBe(Condition.visible).click();
-        clearByKeyboard(newSchemaInput);
-        newSchemaInput.setValue(configJson);
+        newSchemaInput.shouldBe(Condition.enabled);
+        new Actions(WebDriverRunner.getWebDriver())
+                .sendKeys(Keys.PAGE_UP)
+                .keyDown(Keys.SHIFT)
+                .sendKeys(Keys.PAGE_DOWN)
+                .keyUp(Keys.SHIFT)
+                .sendKeys(Keys.DELETE)
+                .perform();
+        setJsonInputValue(newSchemaInput, configJson);
         return this;
         return this;
     }
     }
 
 

+ 9 - 0
kafka-ui-e2e-checks/src/main/java/com/provectus/kafka/ui/utilities/WebUtils.java

@@ -21,6 +21,15 @@ public class WebUtils {
                 .perform();
                 .perform();
     }
     }
 
 
+    public static void sendKeysByActions(SelenideElement element, String keys) {
+        log.debug("\nsendKeysByActions: {} \nsend keys '{}'", element.getSearchCriteria(), keys);
+        element.shouldBe(Condition.enabled);
+        new Actions(WebDriverRunner.getWebDriver())
+                .moveToElement(element)
+                .sendKeys(element, keys)
+                .perform();
+    }
+
     public static void clickByJavaScript(SelenideElement element) {
     public static void clickByJavaScript(SelenideElement element) {
         log.debug("\nclickByJavaScript: {}", element.getSearchCriteria());
         log.debug("\nclickByJavaScript: {}", element.getSearchCriteria());
         element.shouldBe(Condition.enabled);
         element.shouldBe(Condition.enabled);

+ 0 - 0
kafka-ui-e2e-checks/src/main/resources/config_for_create_connector.json → kafka-ui-e2e-checks/src/main/resources/testData/connectors/config_for_create_connector.json


+ 0 - 0
kafka-ui-e2e-checks/src/main/resources/config_for_create_connector_via_api.json → kafka-ui-e2e-checks/src/main/resources/testData/connectors/config_for_create_connector_via_api.json


+ 0 - 0
kafka-ui-e2e-checks/src/main/resources/config_for_update_connector.json → kafka-ui-e2e-checks/src/main/resources/testData/connectors/config_for_update_connector.json


+ 0 - 0
kafka-ui-e2e-checks/src/main/resources/delete_connector_config.json → kafka-ui-e2e-checks/src/main/resources/testData/connectors/delete_connector_config.json


+ 2 - 9
kafka-ui-e2e-checks/src/main/resources/testData/schema_avro_for_update.json → kafka-ui-e2e-checks/src/main/resources/testData/schemas/schema_avro_for_update.json

@@ -5,19 +5,12 @@
   "fields": [
   "fields": [
     {
     {
       "name": "text",
       "name": "text",
-      "type": [
-        "null",
-        "string"
-      ],
+      "type": "string",
       "default": null
       "default": null
     },
     },
     {
     {
       "name": "value",
       "name": "value",
-      "type": [
-        "null",
-        "string",
-        "long"
-      ],
+      "type": "string",
       "default": null
       "default": null
     }
     }
   ]
   ]

+ 0 - 0
kafka-ui-e2e-checks/src/main/resources/testData/schema_avro_value.json → kafka-ui-e2e-checks/src/main/resources/testData/schemas/schema_avro_value.json


+ 0 - 0
kafka-ui-e2e-checks/src/main/resources/testData/schema_Json_Value.json → kafka-ui-e2e-checks/src/main/resources/testData/schemas/schema_json_Value.json


+ 0 - 0
kafka-ui-e2e-checks/src/main/resources/testData/schema_protobuf_value.txt → kafka-ui-e2e-checks/src/main/resources/testData/schemas/schema_protobuf_value.txt


+ 0 - 0
kafka-ui-e2e-checks/src/main/resources/message_content_create_topic.json → kafka-ui-e2e-checks/src/main/resources/testData/topics/message_content_create_topic.json


+ 4 - 4
kafka-ui-e2e-checks/src/test/java/com/provectus/kafka/ui/smokeSuite/connectors/ConnectorsTest.java

@@ -28,7 +28,7 @@ public class ConnectorsTest extends BaseTest {
     private static final String CONNECT_NAME = "first";
     private static final String CONNECT_NAME = "first";
     private static final List<Topic> TOPIC_LIST = new ArrayList<>();
     private static final List<Topic> TOPIC_LIST = new ArrayList<>();
     private static final List<Connector> CONNECTOR_LIST = new ArrayList<>();
     private static final List<Connector> CONNECTOR_LIST = new ArrayList<>();
-    private static final String MESSAGE_CONTENT = "message_content_create_topic.json";
+    private static final String MESSAGE_CONTENT = "testData/topics/message_content_create_topic.json";
     private static final String MESSAGE_KEY = " ";
     private static final String MESSAGE_KEY = " ";
     private static final Topic TOPIC_FOR_CREATE = new Topic()
     private static final Topic TOPIC_FOR_CREATE = new Topic()
             .setName("topic_for_create_connector-" + randomAlphabetic(5))
             .setName("topic_for_create_connector-" + randomAlphabetic(5))
@@ -41,10 +41,10 @@ public class ConnectorsTest extends BaseTest {
             .setMessageContent(MESSAGE_CONTENT).setMessageKey(MESSAGE_KEY);
             .setMessageContent(MESSAGE_CONTENT).setMessageKey(MESSAGE_KEY);
     private static final Connector CONNECTOR_FOR_DELETE = new Connector()
     private static final Connector CONNECTOR_FOR_DELETE = new Connector()
             .setName("sink_postgres_activities_e2e_checks_for_delete-" + randomAlphabetic(5))
             .setName("sink_postgres_activities_e2e_checks_for_delete-" + randomAlphabetic(5))
-            .setConfig(getResourceAsString("delete_connector_config.json"));
+            .setConfig(getResourceAsString("testData/connectors/delete_connector_config.json"));
     private static final Connector CONNECTOR_FOR_UPDATE = new Connector()
     private static final Connector CONNECTOR_FOR_UPDATE = new Connector()
             .setName("sink_postgres_activities_e2e_checks_for_update-" + randomAlphabetic(5))
             .setName("sink_postgres_activities_e2e_checks_for_update-" + randomAlphabetic(5))
-            .setConfig(getResourceAsString("config_for_create_connector_via_api.json"));
+            .setConfig(getResourceAsString("testData/connectors/config_for_create_connector_via_api.json"));
 
 
     @BeforeClass(alwaysRun = true)
     @BeforeClass(alwaysRun = true)
     public void beforeClass() {
     public void beforeClass() {
@@ -65,7 +65,7 @@ public class ConnectorsTest extends BaseTest {
     public void createConnector() {
     public void createConnector() {
         Connector connectorForCreate = new Connector()
         Connector connectorForCreate = new Connector()
                 .setName("sink_postgres_activities_e2e_checks-" + randomAlphabetic(5))
                 .setName("sink_postgres_activities_e2e_checks-" + randomAlphabetic(5))
-                .setConfig(getResourceAsString("config_for_create_connector.json"));
+                .setConfig(getResourceAsString("testData/connectors/config_for_create_connector.json"));
         navigateToConnectors();
         navigateToConnectors();
         kafkaConnectList
         kafkaConnectList
                 .clickCreateConnectorBtn();
                 .clickCreateConnectorBtn();

+ 5 - 5
kafka-ui-e2e-checks/src/test/java/com/provectus/kafka/ui/smokeSuite/schemas/SchemasTest.java

@@ -1,8 +1,8 @@
 package com.provectus.kafka.ui.smokeSuite.schemas;
 package com.provectus.kafka.ui.smokeSuite.schemas;
 
 
 import com.codeborne.selenide.Condition;
 import com.codeborne.selenide.Condition;
-import com.provectus.kafka.ui.api.model.CompatibilityLevel;
 import com.provectus.kafka.ui.BaseTest;
 import com.provectus.kafka.ui.BaseTest;
+import com.provectus.kafka.ui.api.model.CompatibilityLevel;
 import com.provectus.kafka.ui.models.Schema;
 import com.provectus.kafka.ui.models.Schema;
 import com.provectus.kafka.ui.utilities.qaseUtils.annotations.AutomationStatus;
 import com.provectus.kafka.ui.utilities.qaseUtils.annotations.AutomationStatus;
 import com.provectus.kafka.ui.utilities.qaseUtils.annotations.Suite;
 import com.provectus.kafka.ui.utilities.qaseUtils.annotations.Suite;
@@ -68,7 +68,7 @@ public class SchemasTest extends BaseTest {
     @CaseId(186)
     @CaseId(186)
     @Test(priority = 2)
     @Test(priority = 2)
     public void updateSchemaAvro() {
     public void updateSchemaAvro() {
-        AVRO_API.setValuePath(System.getProperty("user.dir") + "/src/main/resources/testData/schema_avro_for_update.json");
+        AVRO_API.setValuePath(System.getProperty("user.dir") + "/src/main/resources/testData/schemas/schema_avro_for_update.json");
         navigateToSchemaRegistryAndOpenDetails(AVRO_API.getName());
         navigateToSchemaRegistryAndOpenDetails(AVRO_API.getName());
         schemaDetails
         schemaDetails
                 .openEditSchema();
                 .openEditSchema();
@@ -85,7 +85,7 @@ public class SchemasTest extends BaseTest {
                 .clickSubmitButton();
                 .clickSubmitButton();
         schemaDetails
         schemaDetails
                 .waitUntilScreenReady();
                 .waitUntilScreenReady();
-        Assert.assertEquals(CompatibilityLevel.CompatibilityEnum.NONE.toString(), schemaDetails.getCompatibility(), "getCompatibility()");
+        Assert.assertEquals(schemaDetails.getCompatibility(), CompatibilityLevel.CompatibilityEnum.NONE.toString(), "getCompatibility()");
     }
     }
 
 
     @Suite(suiteId = SUITE_ID, title = SUITE_TITLE)
     @Suite(suiteId = SUITE_ID, title = SUITE_TITLE)
@@ -103,10 +103,10 @@ public class SchemasTest extends BaseTest {
                 .waitUntilScreenReady()
                 .waitUntilScreenReady()
                 .openSchemaVersionDdl()
                 .openSchemaVersionDdl()
                 .getVersionsNumberFromList();
                 .getVersionsNumberFromList();
-        Assert.assertEquals(latestVersion, versionsNumberFromDdl, "Versions number is not matched");
+        Assert.assertEquals(versionsNumberFromDdl, latestVersion, "Versions number is not matched");
         schemaCreateForm
         schemaCreateForm
                 .selectVersionFromDropDown(1);
                 .selectVersionFromDropDown(1);
-        Assert.assertEquals(53, schemaCreateForm.getMarkedLinesNumber(), "getAllMarkedLines()");
+        Assert.assertEquals(schemaCreateForm.getMarkedLinesNumber(), 42, "getAllMarkedLines()");
     }
     }
 
 
     @Suite(suiteId = SUITE_ID, title = SUITE_TITLE)
     @Suite(suiteId = SUITE_ID, title = SUITE_TITLE)