aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMorgan Richomme <morgan.richomme@orange.com>2020-01-07 10:24:36 +0000
committerGerrit Code Review <gerrit@onap.org>2020-01-07 10:24:36 +0000
commit2df4e82ea14f9286ea4d0accb8e8683937f4aa90 (patch)
tree42402c86eeb01e822bc0194f4a7def1f2db50ae1
parent71e5737a578370615458b2a85067aa3ee69bc089 (diff)
parenta73f9a5c673acc711aed2e7eef7fcb984b7a96bc (diff)
Merge "Add scripts generating temporary certificates for VES CSIT tests"
-rw-r--r--tests/dcaegen2/testcases/assets/certs/rootCAdec.key51
-rw-r--r--tests/dcaegen2/testcases/dcae_ves.robot22
-rw-r--r--tests/dcaegen2/testcases/resources/CertsLibrary.py42
-rw-r--r--tests/dcaegen2/testcases/resources/dcae_keywords.robot3
-rw-r--r--tests/dcaegen2/testcases/resources/dcae_properties.robot8
-rwxr-xr-xtests/dcaegen2/testcases/resources/gen-certs.sh10
-rwxr-xr-xtests/dcaegen2/testcases/resources/rm-certs.sh6
7 files changed, 76 insertions, 66 deletions
diff --git a/tests/dcaegen2/testcases/assets/certs/rootCAdec.key b/tests/dcaegen2/testcases/assets/certs/rootCAdec.key
deleted file mode 100644
index e33b7e34..00000000
--- a/tests/dcaegen2/testcases/assets/certs/rootCAdec.key
+++ /dev/null
@@ -1,51 +0,0 @@
------BEGIN RSA PRIVATE KEY-----
-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
------END RSA PRIVATE KEY-----
diff --git a/tests/dcaegen2/testcases/dcae_ves.robot b/tests/dcaegen2/testcases/dcae_ves.robot
index f9a97b05..48912e15 100644
--- a/tests/dcaegen2/testcases/dcae_ves.robot
+++ b/tests/dcaegen2/testcases/dcae_ves.robot
@@ -7,9 +7,10 @@ Library OperatingSystem
Library Collections
Library DcaeLibrary
Resource ./resources/dcae_keywords.robot
+
Test Teardown Cleanup VES Events
-Suite Setup Run keywords VES Collector Suite Setup DMaaP Create sessions Create header
-Suite Teardown VES Collector Suite Shutdown DMaaP
+Suite Setup Run keywords VES Collector Suite Setup DMaaP Generate Certs Create sessions Create header
+Suite Teardown Run keywords VES Collector Suite Shutdown DMaaP Remove Certs
*** Test Cases ***
@@ -82,7 +83,6 @@ Healthcheck with Outdated Cert
${uuid}= Generate UUID
${headers}= Create Dictionary Accept=*/* X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid} X-FromAppId=${GLOBAL_APPLICATION_ID}
${err_msg}= Run Keyword And Expect Error SSLError:* Get Request ${https_outdated_cert_session} /healthcheck headers=${headers}
- Should Contain ${err_msg} bad handshake
Should Contain ${err_msg} certificate unknown
Log Recieved error message ${err_msg}
@@ -135,14 +135,14 @@ Publish Single VES VNF Measurement Event With Cert
Publish Single VES VNF Measurement Event With Wrong Cert
[Tags] DCAE-VESC-R1
- [Documentation] Post single event with valid data and invalid certificate to /eventListener/v7 endpoint over HTTPS and expect SSLError with bad handshake
- @{err_content} Create List bad handshake certificate unknown
+ [Documentation] Post single event with valid data and invalid certificate to /eventListener/v7 endpoint over HTTPS and expect SSLError with certificate unknown
+ @{err_content} Create List certificate unknown
Send Request And Expect Error Publish Event To VES Collector ${https_invalid_cert_session} ${VES_EVENTLISTENER_V7} ${VES_VALID_JSON_V7} SSLError:* @{err_content}
Publish Single VES VNF Measurement Event With Outdated Cert
[Tags] DCAE-VESC-R1
- [Documentation] Post single event with valid data and outdated certificate to /eventListener/v7 endpoint over HTTPS and expect SSLError with bad handshake
- @{err_content} Create List bad handshake certificate unknown
+ [Documentation] Post single event with valid data and outdated certificate to /eventListener/v7 endpoint over HTTPS and expect SSLError with certificate unknown
+ @{err_content} Create List certificate unknown
Send Request And Expect Error Publish Event To VES Collector ${https_outdated_cert_session} ${VES_EVENTLISTENER_V7} ${VES_VALID_JSON_V7} SSLError:* @{err_content}
Publish Single VES VNF Measurement Event Without Auth And Cert
@@ -167,14 +167,14 @@ Publish V7 Batch Event With Cert
Publish V7 Batch With Wrong Cert
[Tags] DCAE-VESC-R1
- [Documentation] Post single event with valid data and invalid certificate to /eventListener/v7/eventBatch endpoint over HTTPS and expect SSLError with bad handshake
- @{err_content} Create List bad handshake certificate unknown
+ [Documentation] Post single event with valid data and invalid certificate to /eventListener/v7/eventBatch endpoint over HTTPS and expect SSLError with certificate unknown
+ @{err_content} Create List certificate unknown
Send Request And Expect Error Publish Event To VES Collector ${https_invalid_cert_session} ${VES_BATCH_EVENT_ENDPOINT_V7} ${VES_VALID_BATCH_JSON_V7} SSLError:* @{err_content}
Publish V7 Batch Event With Outdated Cert
[Tags] DCAE-VESC-R1
- [Documentation] Post single event with valid data and outdated certificate to /eventListener/v7/eventBatch endpoint over HTTPS and expect SSLError with bad handshake
- @{err_content} Create List bad handshake certificate unknown
+ [Documentation] Post single event with valid data and outdated certificate to /eventListener/v7/eventBatch endpoint over HTTPS and expect SSLError with certificate unknown
+ @{err_content} Create List certificate unknown
Send Request And Expect Error Publish Event To VES Collector ${https_outdated_cert_session} ${VES_BATCH_EVENT_ENDPOINT_V7} ${VES_VALID_BATCH_JSON_V7} SSLError:* @{err_content}
Publish V7 Batch Event Without Auth And Cert
diff --git a/tests/dcaegen2/testcases/resources/CertsLibrary.py b/tests/dcaegen2/testcases/resources/CertsLibrary.py
new file mode 100644
index 00000000..b8189422
--- /dev/null
+++ b/tests/dcaegen2/testcases/resources/CertsLibrary.py
@@ -0,0 +1,42 @@
+
+import os
+import subprocess
+import time
+
+from robot.api import logger
+
+
+class CertsLibrary(object):
+
+ def __init__(self):
+ pass
+
+
+
+ @staticmethod
+ def generate_certs():
+ ws = os.environ['WORKSPACE']
+ script2run = ws + "/tests/dcaegen2/testcases/resources/gen-certs.sh"
+ logger.info("Running script: " + script2run)
+ logger.console("Running script: " + script2run)
+ subprocess.call([script2run, ws])
+ time.sleep(5)
+ return
+
+ @staticmethod
+ def remove_certs():
+ ws = os.environ['WORKSPACE']
+ script2run = ws + "/tests/dcaegen2/testcases/resources/rm-certs.sh"
+ logger.info("Running script: " + script2run)
+ logger.console("Running script: " + script2run)
+ subprocess.call([script2run, ws])
+ time.sleep(5)
+ return
+
+
+
+
+
+
+
+
diff --git a/tests/dcaegen2/testcases/resources/dcae_keywords.robot b/tests/dcaegen2/testcases/resources/dcae_keywords.robot
index 16a8a8ae..0011ab88 100644
--- a/tests/dcaegen2/testcases/resources/dcae_keywords.robot
+++ b/tests/dcaegen2/testcases/resources/dcae_keywords.robot
@@ -4,6 +4,7 @@ Library RequestsLibrary
Library DcaeLibrary
Library OperatingSystem
Library Collections
+Library CertsLibrary
Variables ../resources/DcaeVariables.py
Resource ../../../common.robot
Resource ../resources/dcae_properties.robot
@@ -13,7 +14,7 @@ Create sessions
[Documentation] Create all required sessions
${auth}= Create List ${VESC_HTTPS_USER} ${VESC_HTTPS_PD}
${wrong_auth}= Create List ${VESC_HTTPS_WRONG_USER} ${VESC_HTTPS_WRONG_PD}
- ${certs}= Create List ${VESC_ROOTCA_CERT} ${VESC_ROOTCA_KEY}
+ ${certs}= Create List ${VESC_CERT} ${VESC_KEY}
${wrong_certs}= Create List ${VESC_WRONG_CERT} ${VESC_WRONG_KEY}
${outdated_certs}= Create List ${VESC_OUTDATED_CERT} ${VESC_OUTDATED_KEY}
Create Session dcae_vesc_url ${VESC_URL}
diff --git a/tests/dcaegen2/testcases/resources/dcae_properties.robot b/tests/dcaegen2/testcases/resources/dcae_properties.robot
index de5519ee..119ef236 100644
--- a/tests/dcaegen2/testcases/resources/dcae_properties.robot
+++ b/tests/dcaegen2/testcases/resources/dcae_properties.robot
@@ -4,6 +4,7 @@ Documentation store all properties that can change or are used in multipl
... make sure you prepend them with GLOBAL so that other files can easily see it is from this file.
*** Variables ***
+
${GLOBAL_APPLICATION_ID} robot-dcaegen2
${GLOBAL_DCAE_CONSUL_URL} http://135.205.228.129:8500
${GLOBAL_DCAE_CONSUL_URL1} http://135.205.228.170:8500
@@ -14,8 +15,8 @@ ${VESC_HTTPS_USER} sample1
${VESC_HTTPS_PD} sample1
${VESC_HTTPS_WRONG_PD} sample
${VESC_HTTPS_WRONG_USER} sample
-${VESC_ROOTCA_CERT} %{WORKSPACE}/tests/dcaegen2/testcases/assets/certs/rootCA.crt
-${VESC_ROOTCA_KEY} %{WORKSPACE}/tests/dcaegen2/testcases/assets/certs/rootCAdec.key
+${VESC_CERT} %{WORKSPACE}/tests/dcaegen2/testcases/assets/certs/temporary.crt
+${VESC_KEY} %{WORKSPACE}/tests/dcaegen2/testcases/assets/certs/temporary.key
${VESC_WRONG_CERT} %{WORKSPACE}/tests/dcaegen2/testcases/assets/certs/wrong.crt
${VESC_WRONG_KEY} %{WORKSPACE}/tests/dcaegen2/testcases/assets/certs/wrong.key
${VESC_OUTDATED_CERT} %{WORKSPACE}/tests/dcaegen2/testcases/assets/certs/outdated.crt
@@ -44,4 +45,5 @@ ${CONFIG_BINDING_URL} http://localhost:8443
${CB_HEALTHCHECK_PATH} /healthcheck
${CB_SERVICE_COMPONENT_PATH} /service_component/
${VES_Service_Name1} dcae-controller-ves-collector
-${VES_Service_Name2} ves-collector-not-exist \ No newline at end of file
+${VES_Service_Name2} ves-collector-not-exist
+
diff --git a/tests/dcaegen2/testcases/resources/gen-certs.sh b/tests/dcaegen2/testcases/resources/gen-certs.sh
new file mode 100755
index 00000000..f3f358f9
--- /dev/null
+++ b/tests/dcaegen2/testcases/resources/gen-certs.sh
@@ -0,0 +1,10 @@
+#!/bin/bash
+
+WS=$1
+dir=$WS/tests/dcaegen2/testcases/assets/certs
+
+openssl genrsa -out "$dir/temporary.key" 2048
+
+openssl req -new -key "$dir/temporary.key" -subj "/C=PL/ST=DL/O=Nokia/CN=dcaegen2" -out "$dir/temporary.csr"
+
+openssl x509 -req -in "$dir/temporary.csr" -CA "$dir/rootCA.crt" -CAkey "$dir/rootCA.key" -passin pass:collector -CAcreateserial -out "$dir/temporary.crt" -days 1 -sha256
diff --git a/tests/dcaegen2/testcases/resources/rm-certs.sh b/tests/dcaegen2/testcases/resources/rm-certs.sh
new file mode 100755
index 00000000..827849c7
--- /dev/null
+++ b/tests/dcaegen2/testcases/resources/rm-certs.sh
@@ -0,0 +1,6 @@
+#!/bin/bash
+
+WS=$1
+dir=$WS/tests/dcaegen2/testcases/assets/certs
+
+rm "$dir/temporary.crt" "$dir/temporary.csr" "$dir/temporary.key" "$dir/rootCA.srl" \ No newline at end of file