summaryrefslogtreecommitdiffstats
path: root/cds-regression-test/test/remote-python
diff options
context:
space:
mode:
Diffstat (limited to 'cds-regression-test/test/remote-python')
-rw-r--r--cds-regression-test/test/remote-python/connection-fail/resources/elalto/expected-response.json29
-rw-r--r--cds-regression-test/test/remote-python/connection-fail/resources/elalto/request-payload.json16
-rw-r--r--cds-regression-test/test/remote-python/connection-fail/resources/frankfurt/expected-response.json29
-rw-r--r--cds-regression-test/test/remote-python/connection-fail/resources/frankfurt/request-payload.json16
-rw-r--r--cds-regression-test/test/remote-python/connection-fail/test.sh26
-rw-r--r--cds-regression-test/test/remote-python/dummy-request-payload.json14
-rw-r--r--cds-regression-test/test/remote-python/failing-script/expected-response.json33
-rw-r--r--cds-regression-test/test/remote-python/failing-script/request-payload.json16
-rwxr-xr-xcds-regression-test/test/remote-python/failing-script/test.sh25
-rwxr-xr-xcds-regression-test/test/remote-python/remote-python-enrichment-test.sh16
-rwxr-xr-xcds-regression-test/test/remote-python/remote-python-upload-test.sh20
-rw-r--r--cds-regression-test/test/remote-python/success/expected-response.json36
-rw-r--r--cds-regression-test/test/remote-python/success/request-payload.json16
-rwxr-xr-xcds-regression-test/test/remote-python/success/test.sh25
14 files changed, 317 insertions, 0 deletions
diff --git a/cds-regression-test/test/remote-python/connection-fail/resources/elalto/expected-response.json b/cds-regression-test/test/remote-python/connection-fail/resources/elalto/expected-response.json
new file mode 100644
index 0000000..2ab445b
--- /dev/null
+++ b/cds-regression-test/test/remote-python/connection-fail/resources/elalto/expected-response.json
@@ -0,0 +1,29 @@
+{
+ "correlationUUID": "9f53fea6-c288-4d19-8d85-93832294f21a",
+ "commonHeader": {
+ "timestamp": "2020-07-20T18:15:21.593Z",
+ "originatorId": "System",
+ "requestId": "remote-python-connection-fail",
+ "subRequestId": "1",
+ "flags": null
+ },
+ "actionIdentifiers": {
+ "blueprintName": "RT-remote-python",
+ "blueprintVersion": "1.0.0",
+ "actionName": "connection-fail",
+ "mode": "sync"
+ },
+ "status": {
+ "code": 500,
+ "eventType": "EVENT_COMPONENT_FAILURE",
+ "timestamp": "2020-07-20T18:15:22.846Z",
+ "errorMessage": "FAILURE : prepare-env : Command failed during env. preparation... timeout(120) requestId (remote-python-connection-fail). grpcError: (Connection refused: /127.0.0.1:4242)",
+ "message": "failure"
+ },
+ "payload": {
+ "connection-fail-response": {
+ "execute-command-payload": "",
+ "execute-command-logs": ""
+ }
+ }
+}
diff --git a/cds-regression-test/test/remote-python/connection-fail/resources/elalto/request-payload.json b/cds-regression-test/test/remote-python/connection-fail/resources/elalto/request-payload.json
new file mode 100644
index 0000000..4bcf8e2
--- /dev/null
+++ b/cds-regression-test/test/remote-python/connection-fail/resources/elalto/request-payload.json
@@ -0,0 +1,16 @@
+{
+ "commonHeader": {
+ "originatorId": "System",
+ "requestId": "remote-python-connection-fail",
+ "subRequestId": "1"
+ },
+ "actionIdentifiers": {
+ "blueprintName": "RT-remote-python",
+ "blueprintVersion": "1.0.0",
+ "actionName": "connection-fail",
+ "mode": "sync"
+ },
+ "payload": {
+ "connection-fail-request": {}
+ }
+}
diff --git a/cds-regression-test/test/remote-python/connection-fail/resources/frankfurt/expected-response.json b/cds-regression-test/test/remote-python/connection-fail/resources/frankfurt/expected-response.json
new file mode 100644
index 0000000..c9b15bd
--- /dev/null
+++ b/cds-regression-test/test/remote-python/connection-fail/resources/frankfurt/expected-response.json
@@ -0,0 +1,29 @@
+{
+ "correlationUUID": null,
+ "commonHeader": {
+ "timestamp": "2020-06-09T21:02:52.783Z",
+ "originatorId": "System",
+ "requestId": "remote-python-connection-fail",
+ "subRequestId": "1",
+ "flags": null
+ },
+ "actionIdentifiers": {
+ "blueprintName": "RT-remote-python",
+ "blueprintVersion": "1.0.0",
+ "actionName": "connection-fail",
+ "mode": "sync"
+ },
+ "status": {
+ "code": 500,
+ "eventType": "EVENT_COMPONENT_FAILURE",
+ "timestamp": "2020-06-09T21:02:53.142Z",
+ "errorMessage": "FAILURE : prepare-env : Command failed during env. preparation... timeout(120) requestId (remote-python-connection-fail). grpcError: (finishConnect(..) failed: Connection refused: /127.0.0.1:4242)",
+ "message": "failure"
+ },
+ "payload": {
+ "connection-fail-response": {
+ "execute-command-logs": "[]",
+ "execute-command-payload": "{}"
+ }
+ }
+}
diff --git a/cds-regression-test/test/remote-python/connection-fail/resources/frankfurt/request-payload.json b/cds-regression-test/test/remote-python/connection-fail/resources/frankfurt/request-payload.json
new file mode 100644
index 0000000..4bcf8e2
--- /dev/null
+++ b/cds-regression-test/test/remote-python/connection-fail/resources/frankfurt/request-payload.json
@@ -0,0 +1,16 @@
+{
+ "commonHeader": {
+ "originatorId": "System",
+ "requestId": "remote-python-connection-fail",
+ "subRequestId": "1"
+ },
+ "actionIdentifiers": {
+ "blueprintName": "RT-remote-python",
+ "blueprintVersion": "1.0.0",
+ "actionName": "connection-fail",
+ "mode": "sync"
+ },
+ "payload": {
+ "connection-fail-request": {}
+ }
+}
diff --git a/cds-regression-test/test/remote-python/connection-fail/test.sh b/cds-regression-test/test/remote-python/connection-fail/test.sh
new file mode 100644
index 0000000..4d3a38f
--- /dev/null
+++ b/cds-regression-test/test/remote-python/connection-fail/test.sh
@@ -0,0 +1,26 @@
+#!/bin/bash
+
+CBA_NAME="remote-python"
+TEST_NAME="connection-fail"
+TEST_NUMBER=$RANDOM
+
+mkdir -p "$RESPONSES_DIRECTORY/$CBA_NAME/$TEST_NAME/$TEST_NUMBER/"
+RESPONSE_HEADERS_FILE="$RESPONSES_DIRECTORY/$CBA_NAME/$TEST_NAME/$TEST_NUMBER/response-headers"
+RESPONSE_PAYLOAD_FILE="$RESPONSES_DIRECTORY/$CBA_NAME/$TEST_NAME/$TEST_NUMBER/response-payload"
+
+RESOURCES_DIR="$TEST_DIRECTORY/$CBA_NAME/$TEST_NAME/resources/$CDS_VERSION"
+REQUEST_PAYLOAD_FILE="$RESOURCES_DIR/request-payload.json"
+EXPECTED_PAYLOAD_FILE="$RESOURCES_DIR/expected-response.json"
+
+. ./$TEST_DIRECTORY/utils.sh
+
+echo "Running test: $CBA_NAME:$TEST_NUMBER:$TEST_NAME"
+
+echo 'Calling CDS process'
+process_cba $REQUEST_PAYLOAD_FILE $RESPONSE_PAYLOAD_FILE $RESPONSE_HEADERS_FILE
+
+echo 'Assert statuscode'
+assert_status_code 500 $RESPONSE_HEADERS_FILE
+
+echo 'Assert payload'
+assert_cds_response_equals $EXPECTED_PAYLOAD_FILE $RESPONSE_PAYLOAD_FILE
diff --git a/cds-regression-test/test/remote-python/dummy-request-payload.json b/cds-regression-test/test/remote-python/dummy-request-payload.json
new file mode 100644
index 0000000..688e5e9
--- /dev/null
+++ b/cds-regression-test/test/remote-python/dummy-request-payload.json
@@ -0,0 +1,14 @@
+{
+ "commonHeader": {
+ "originatorId": "System",
+ "requestId": "dummy-request-should-fail",
+ "subRequestId": "1"
+ },
+ "actionIdentifiers": {
+ "blueprintName": "RT-remote-python",
+ "blueprintVersion": "1.0.0",
+ "actionName": "dummy",
+ "mode": "sync"
+ },
+ "payload": {}
+}
diff --git a/cds-regression-test/test/remote-python/failing-script/expected-response.json b/cds-regression-test/test/remote-python/failing-script/expected-response.json
new file mode 100644
index 0000000..119b135
--- /dev/null
+++ b/cds-regression-test/test/remote-python/failing-script/expected-response.json
@@ -0,0 +1,33 @@
+{
+ "correlationUUID": "0ae1f48a-ec91-4573-af76-070ec42e2cdd",
+ "commonHeader": {
+ "timestamp": "2020-07-02T23:46:04.959Z",
+ "originatorId": "System",
+ "requestId": "remote-python-failing-script",
+ "subRequestId": "1",
+ "flags": null
+ },
+ "actionIdentifiers": {
+ "blueprintName": "RT-remote-python",
+ "blueprintVersion": "1.0.0",
+ "actionName": "failing-remote-python",
+ "mode": "sync"
+ },
+ "status": {
+ "code": 500,
+ "eventType": "EVENT_COMPONENT_FAILURE",
+ "timestamp": "2020-07-02T23:46:22.167Z",
+ "errorMessage": "FAILURE : execute-command : [\"Intentionally raised exception!\"]",
+ "message": "failure"
+ },
+ "payload": {
+ "failing-remote-python-response": {
+ "execute-command-payload": {
+ "errorMessage": "Intentionally raised exception!"
+ },
+ "execute-command-logs": [
+ "Intentionally raised exception!"
+ ]
+ }
+ }
+}
diff --git a/cds-regression-test/test/remote-python/failing-script/request-payload.json b/cds-regression-test/test/remote-python/failing-script/request-payload.json
new file mode 100644
index 0000000..d4c612c
--- /dev/null
+++ b/cds-regression-test/test/remote-python/failing-script/request-payload.json
@@ -0,0 +1,16 @@
+{
+ "commonHeader": {
+ "originatorId": "System",
+ "requestId": "remote-python-failing-script",
+ "subRequestId": "1"
+ },
+ "actionIdentifiers": {
+ "blueprintName": "RT-remote-python",
+ "blueprintVersion": "1.0.0",
+ "actionName": "failing-remote-python",
+ "mode": "sync"
+ },
+ "payload": {
+ "failing-remote-python-request": {}
+ }
+}
diff --git a/cds-regression-test/test/remote-python/failing-script/test.sh b/cds-regression-test/test/remote-python/failing-script/test.sh
new file mode 100755
index 0000000..1c394a3
--- /dev/null
+++ b/cds-regression-test/test/remote-python/failing-script/test.sh
@@ -0,0 +1,25 @@
+#!/bin/bash
+
+CBA_NAME="remote-python"
+TEST_NAME="failing-script"
+TEST_NUMBER=$RANDOM
+
+mkdir -p "$RESPONSES_DIRECTORY/$CBA_NAME/$TEST_NAME/$TEST_NUMBER/"
+RESPONSE_HEADERS_FILE="$RESPONSES_DIRECTORY/$CBA_NAME/$TEST_NAME/$TEST_NUMBER/response-headers"
+RESPONSE_PAYLOAD_FILE="$RESPONSES_DIRECTORY/$CBA_NAME/$TEST_NAME/$TEST_NUMBER/response-payload"
+
+REQUEST_PAYLOAD_FILE="$TEST_DIRECTORY/$CBA_NAME/$TEST_NAME/request-payload.json"
+EXPECTED_PAYLOAD_FILE="$TEST_DIRECTORY/$CBA_NAME/$TEST_NAME/expected-response.json"
+
+. ./$TEST_DIRECTORY/utils.sh
+
+echo "Running test: $CBA_NAME:$TEST_NUMBER:$TEST_NAME"
+
+echo 'Calling CDS process'
+process_cba $REQUEST_PAYLOAD_FILE $RESPONSE_PAYLOAD_FILE $RESPONSE_HEADERS_FILE
+
+echo 'Assert statuscode'
+assert_status_code 500 $RESPONSE_HEADERS_FILE
+
+echo 'Assert payload'
+assert_cds_response_equals $EXPECTED_PAYLOAD_FILE $RESPONSE_PAYLOAD_FILE
diff --git a/cds-regression-test/test/remote-python/remote-python-enrichment-test.sh b/cds-regression-test/test/remote-python/remote-python-enrichment-test.sh
new file mode 100755
index 0000000..e2344bd
--- /dev/null
+++ b/cds-regression-test/test/remote-python/remote-python-enrichment-test.sh
@@ -0,0 +1,16 @@
+#!/bin/bash
+CBA_NAME="remote-python"
+TEST_NAME="$CBA_NAME-enrichment"
+TEST_NUMBER=$RANDOM
+RESPONSE_HEADERS_FILE="$RESPONSES_DIRECTORY/$TEST_NAME-$TEST_NUMBER-response-headers"
+
+. ./$TEST_DIRECTORY/utils.sh
+
+echo "Compressing CBA: $CBA_NAME"
+compress_cba $CBA_NAME
+
+echo "Enriching CBA: $CBA_NAME"
+enrich_cba $CBA_NAME $RESPONSE_HEADERS_FILE
+
+echo 'Assert status 200'
+assert_status_code 200 $RESPONSE_HEADERS_FILE
diff --git a/cds-regression-test/test/remote-python/remote-python-upload-test.sh b/cds-regression-test/test/remote-python/remote-python-upload-test.sh
new file mode 100755
index 0000000..f62490c
--- /dev/null
+++ b/cds-regression-test/test/remote-python/remote-python-upload-test.sh
@@ -0,0 +1,20 @@
+#!/bin/bash
+CBA_NAME="remote-python"
+TEST_NAME="$CBA_NAME-upload"
+TEST_NUMBER=$RANDOM
+RESPONSE_HEADERS_FILE="$RESPONSES_DIRECTORY/$TEST_NAME-$TEST_NUMBER-response-headers"
+RESPONSE_PAYLOAD_FILE="$RESPONSES_DIRECTORY/$TEST_NAME-$TEST_NUMBER-response-payload"
+REQUEST_PAYLOAD_FILE="$TEST_DIRECTORY/$CBA_NAME/dummy-request-payload.json"
+
+. ./$TEST_DIRECTORY/utils.sh
+
+echo "Uploading CBA: $CBA_NAME"
+upload_cba $CBA_NAME $RESPONSE_PAYLOAD_FILE $RESPONSE_HEADERS_FILE
+
+echo 'Assert status 200'
+assert_status_code 200 $RESPONSE_HEADERS_FILE
+
+# This step prevents a race-condition for parallel process requests
+# when cba has not yet been written to filesystem
+echo 'Send process request to force CDS to load CBA to filesystem'
+process_cba $REQUEST_PAYLOAD_FILE '/dev/null' '/dev/null'
diff --git a/cds-regression-test/test/remote-python/success/expected-response.json b/cds-regression-test/test/remote-python/success/expected-response.json
new file mode 100644
index 0000000..8b0149f
--- /dev/null
+++ b/cds-regression-test/test/remote-python/success/expected-response.json
@@ -0,0 +1,36 @@
+{
+ "correlationUUID": "9acac95d-9b17-4224-9fe1-0cdb652d027c",
+ "commonHeader": {
+ "timestamp": "2020-07-02T22:52:50.662Z",
+ "originatorId": "System",
+ "requestId": "remote-python-request",
+ "subRequestId": "1",
+ "flags": null
+ },
+ "actionIdentifiers": {
+ "blueprintName": "RT-remote-python",
+ "blueprintVersion": "1.0.0",
+ "actionName": "remote-python",
+ "mode": "sync"
+ },
+ "status": {
+ "code": 200,
+ "eventType": "EVENT_COMPONENT_EXECUTED",
+ "timestamp": "2020-07-02T22:53:05.357Z",
+ "errorMessage": null,
+ "message": "success"
+ },
+ "payload": {
+ "remote-python-response": {
+ "execute-command-payload": {
+ "abc": [
+ "xyz",
+ "qqq"
+ ]
+ },
+ "execute-command-logs": [
+ "remote executor regression"
+ ]
+ }
+ }
+}
diff --git a/cds-regression-test/test/remote-python/success/request-payload.json b/cds-regression-test/test/remote-python/success/request-payload.json
new file mode 100644
index 0000000..b3b9be8
--- /dev/null
+++ b/cds-regression-test/test/remote-python/success/request-payload.json
@@ -0,0 +1,16 @@
+{
+ "commonHeader": {
+ "originatorId": "System",
+ "requestId": "remote-python-request",
+ "subRequestId": "1"
+ },
+ "actionIdentifiers": {
+ "blueprintName": "RT-remote-python",
+ "blueprintVersion": "1.0.0",
+ "actionName": "remote-python",
+ "mode": "sync"
+ },
+ "payload": {
+ "remote-python-request": {}
+ }
+}
diff --git a/cds-regression-test/test/remote-python/success/test.sh b/cds-regression-test/test/remote-python/success/test.sh
new file mode 100755
index 0000000..1afabbb
--- /dev/null
+++ b/cds-regression-test/test/remote-python/success/test.sh
@@ -0,0 +1,25 @@
+#!/bin/bash
+
+CBA_NAME="remote-python"
+TEST_NAME="success"
+TEST_NUMBER=$RANDOM
+
+mkdir -p "$RESPONSES_DIRECTORY/$CBA_NAME/$TEST_NAME/$TEST_NUMBER/"
+RESPONSE_HEADERS_FILE="$RESPONSES_DIRECTORY/$CBA_NAME/$TEST_NAME/$TEST_NUMBER/response-headers"
+RESPONSE_PAYLOAD_FILE="$RESPONSES_DIRECTORY/$CBA_NAME/$TEST_NAME/$TEST_NUMBER/response-payload"
+
+REQUEST_PAYLOAD_FILE="$TEST_DIRECTORY/$CBA_NAME/$TEST_NAME/request-payload.json"
+EXPECTED_PAYLOAD_FILE="$TEST_DIRECTORY/$CBA_NAME/$TEST_NAME/expected-response.json"
+
+. ./$TEST_DIRECTORY/utils.sh
+
+echo "Running test: $CBA_NAME:$TEST_NUMBER:$TEST_NAME"
+
+echo 'Calling CDS process'
+process_cba $REQUEST_PAYLOAD_FILE $RESPONSE_PAYLOAD_FILE $RESPONSE_HEADERS_FILE
+
+echo 'Assert statuscode'
+assert_status_code 200 $RESPONSE_HEADERS_FILE
+
+echo 'Assert payload'
+assert_cds_response_equals $EXPECTED_PAYLOAD_FILE $RESPONSE_PAYLOAD_FILE