From 92909b97408a6e0c23ec378da0fc44943ce90bbc Mon Sep 17 00:00:00 2001 From: Aditya Lahiri Date: Sat, 25 May 2024 13:00:16 +0530 Subject: [PATCH] Test case for dig added --- .../KafkaValidatorDigTest.java | 19 ++++++++ .../validator_dig_test/produce_records.json | 14 ++++++ ..._consume_validator_dig_replace_tokens.json | 44 +++++++++++++++++++ .../validator_dig_test/validation_value.json | 8 ++++ 4 files changed, 85 insertions(+) create mode 100644 kafka-testing/src/test/java/org/jsmart/zerocode/integration/tests/kafka/validation_dig_test/KafkaValidatorDigTest.java create mode 100644 kafka-testing/src/test/resources/kafka/consume/validator_dig_test/produce_records.json create mode 100644 kafka-testing/src/test/resources/kafka/consume/validator_dig_test/test_kafka_produce_consume_validator_dig_replace_tokens.json create mode 100644 kafka-testing/src/test/resources/kafka/consume/validator_dig_test/validation_value.json diff --git a/kafka-testing/src/test/java/org/jsmart/zerocode/integration/tests/kafka/validation_dig_test/KafkaValidatorDigTest.java b/kafka-testing/src/test/java/org/jsmart/zerocode/integration/tests/kafka/validation_dig_test/KafkaValidatorDigTest.java new file mode 100644 index 00000000..24059eb7 --- /dev/null +++ b/kafka-testing/src/test/java/org/jsmart/zerocode/integration/tests/kafka/validation_dig_test/KafkaValidatorDigTest.java @@ -0,0 +1,19 @@ +package org.jsmart.zerocode.integration.tests.kafka.validation_dig_test; + +import org.jsmart.zerocode.core.domain.Scenario; +import org.jsmart.zerocode.core.domain.TargetEnv; +import org.jsmart.zerocode.core.runner.ZeroCodeUnitRunner; +import org.junit.Test; +import org.junit.runner.RunWith; + + +@TargetEnv("kafka_servers/kafka_test_server.properties") +@RunWith(ZeroCodeUnitRunner.class) +public class KafkaValidatorDigTest { + + @Test + @Scenario("kafka/consume/validator_dig_test/test_kafka_produce_consume_validator_dig_replace_tokens.json") + public void test_validator_dig() { + } + +} diff --git a/kafka-testing/src/test/resources/kafka/consume/validator_dig_test/produce_records.json b/kafka-testing/src/test/resources/kafka/consume/validator_dig_test/produce_records.json new file mode 100644 index 00000000..5b18d949 --- /dev/null +++ b/kafka-testing/src/test/resources/kafka/consume/validator_dig_test/produce_records.json @@ -0,0 +1,14 @@ +[ + { + "key": "${$.timestamp_step.response}", + "value": { + "test": "1" + } + }, + { + "key": "0", + "value": { + "test": "2" + } + } +] \ No newline at end of file diff --git a/kafka-testing/src/test/resources/kafka/consume/validator_dig_test/test_kafka_produce_consume_validator_dig_replace_tokens.json b/kafka-testing/src/test/resources/kafka/consume/validator_dig_test/test_kafka_produce_consume_validator_dig_replace_tokens.json new file mode 100644 index 00000000..31c33f2e --- /dev/null +++ b/kafka-testing/src/test/resources/kafka/consume/validator_dig_test/test_kafka_produce_consume_validator_dig_replace_tokens.json @@ -0,0 +1,44 @@ +{ + "scenarioName": "Parameterized kafka test with validator and tokens to dig in validator value", + "steps": [ + { + "name": "timestamp_step", + "url": "java.lang.System", + "method": "currentTimeMillis", + "assertions": "$NOT.NULL" + }, + { + "name": "produce_step", + "url": "kafka-topic:kafka_dig_test_topic", + "operation": "produce", + "request": { + "recordType": "JSON", + "records": "${0}" + }, + "assertions": { + "status" : "Ok" + } + }, + { + "name": "consume_step", + "url": "kafka-topic:kafka_dig_test_topic", + "operation": "consume", + "request": { + "consumerLocalConfigs": { + "recordType": "JSON" + } + }, + "validators": [ + { + "field": "$.records[?(@.key == '${$.timestamp_step.response}')]", + "value": "${1}" + } + ] + } + ], + "parameterized": { + "csvSource":[ + "${JSON.FILE:kafka/consume/validator_dig_test/produce_records.json}, ${JSON.FILE:kafka/consume/validator_dig_test/validation_value.json}" + ] + } +} diff --git a/kafka-testing/src/test/resources/kafka/consume/validator_dig_test/validation_value.json b/kafka-testing/src/test/resources/kafka/consume/validator_dig_test/validation_value.json new file mode 100644 index 00000000..44647c79 --- /dev/null +++ b/kafka-testing/src/test/resources/kafka/consume/validator_dig_test/validation_value.json @@ -0,0 +1,8 @@ +[ + { + "key": "${$.timestamp_step.response}", + "value": { + "test": "1" + } + } +] \ No newline at end of file