aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/ccsdk-oran/polmansuite/__init__.robot2
-rw-r--r--tests/ccsdk-oran/polmansuite/test.robot17
-rwxr-xr-xtests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-Ftp-suite/FuncSingleFileFtp.robot2
-rwxr-xr-xtests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-Http-suite/FuncSingleFileHttp.robot2
-rwxr-xr-xtests/dcaegen2-collectors-datafile/testsuites/HTTP-Various-Connection-Types-suite/HttpVariousConnectionTypes.robot (renamed from tests/dcaegen2-collectors-datafile/testsuites/HTTPS-Various-Connection-Types-suite/HttpsVariousConnectionTypes.robot)19
-rwxr-xr-xtests/dcaegen2-collectors-datafile/testsuites/HTTP-Various-Connection-Types-suite/__init__.robot2
-rwxr-xr-xtests/dcaegen2-collectors-datafile/testsuites/HTTPS-Various-Connection-Types-suite/__init__.robot2
-rwxr-xr-xtests/dcaegen2-collectors-datafile/testsuites/Strict-Host-Checking-suite/StrictHostChecking.robot2
-rw-r--r--tests/dcaegen2-pmmapper/files-processing-config-pmmapper/__init__.robot2
-rw-r--r--tests/dcaegen2-pmmapper/files-processing-config-pmmapper/assets/.gitattributes1
-rw-r--r--tests/dcaegen2-pmmapper/files-processing-config-pmmapper/assets/ABigFile.xml163
-rw-r--r--tests/dcaegen2-pmmapper/files-processing-config-pmmapper/assets/config_10_1.env3
-rw-r--r--tests/dcaegen2-pmmapper/files-processing-config-pmmapper/assets/config_1_1.env3
-rw-r--r--tests/dcaegen2-pmmapper/files-processing-config-pmmapper/assets/config_1_10.env3
-rw-r--r--tests/dcaegen2-pmmapper/files-processing-config-pmmapper/assets/valid_metadata.json12
-rw-r--r--tests/dcaegen2-pmmapper/files-processing-config-pmmapper/files-processing-config-pmmapper.robot148
-rw-r--r--tests/dcaegen2-pmmapper/files-processing-config-pmmapper/libraries/DockerContainerManager.py29
-rw-r--r--tests/dcaegen2-pmmapper/files-processing-config-pmmapper/libraries/EnvsReader.py11
-rw-r--r--tests/dcaegen2-pmmapper/files-processing-config-pmmapper/libraries/LogReader.py22
-rw-r--r--tests/dcaegen2/testcases/assets/json_events/ves7_pnf_registration_event.json2
-rw-r--r--tests/so/sanity-check/data/macroflow.json161
-rw-r--r--tests/so/sanity-check/data/serviceBasicVfCnfnotification.json294
-rw-r--r--tests/so/sanity-check/macroflow.robot25
23 files changed, 903 insertions, 24 deletions
diff --git a/tests/ccsdk-oran/polmansuite/__init__.robot b/tests/ccsdk-oran/polmansuite/__init__.robot
deleted file mode 100644
index bf52713b..00000000
--- a/tests/ccsdk-oran/polmansuite/__init__.robot
+++ /dev/null
@@ -1,2 +0,0 @@
-*** Settings ***
-Documentation Non-RT RIC Policy Management - polmansuite
diff --git a/tests/ccsdk-oran/polmansuite/test.robot b/tests/ccsdk-oran/polmansuite/test.robot
deleted file mode 100644
index 59d73eb8..00000000
--- a/tests/ccsdk-oran/polmansuite/test.robot
+++ /dev/null
@@ -1,17 +0,0 @@
-*** Settings ***
-Library OperatingSystem
-Library Process
-
-*** Test Cases ***
-
-Functional Test Case 1
- [Documentation] Deploy PMS without SDNC
- Start Process ${ARCHIVES}/test/pms_a1sim.sh
- ${cli_cmd_output}= Wait For Process timeout=3600
- Should Be Equal as Integers ${cli_cmd_output.rc} 0
-
-Functional Test Case 2
- [Documentation] Deploy PMS with SDNC
- Start Process ${ARCHIVES}/test/pms_a1sim_sdnc.sh
- ${cli_cmd_output}= Wait For Process timeout=3600
- Should Be Equal as Integers ${cli_cmd_output.rc} 0
diff --git a/tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-Ftp-suite/FuncSingleFileFtp.robot b/tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-Ftp-suite/FuncSingleFileFtp.robot
index cecb8d11..bb70b502 100755
--- a/tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-Ftp-suite/FuncSingleFileFtp.robot
+++ b/tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-Ftp-suite/FuncSingleFileFtp.robot
@@ -109,3 +109,5 @@ Set Default Environment Variables
Set Environment Variable HTTP_SIMS http-https-server0:80
Set Environment Variable HTTPS_SIMS http-https-server0:443
Set Environment Variable HTTPS_SIMS_NO_AUTH http-https-server0:8080
+ Set Environment Variable HTTP_JWT_SIMS http-https-server0:32000
+ Set Environment Variable HTTPS_JWT_SIMS http-https-server0:32100
diff --git a/tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-Http-suite/FuncSingleFileHttp.robot b/tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-Http-suite/FuncSingleFileHttp.robot
index f279391c..f96c2f96 100755
--- a/tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-Http-suite/FuncSingleFileHttp.robot
+++ b/tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-Http-suite/FuncSingleFileHttp.robot
@@ -112,3 +112,5 @@ Set Default Environment Variables
Set Environment Variable HTTP_SIMS http-https-server0:80
Set Environment Variable HTTPS_SIMS http-https-server0:443
Set Environment Variable HTTPS_SIMS_NO_AUTH http-https-server0:8080
+ Set Environment Variable HTTP_JWT_SIMS http-https-server0:32000
+ Set Environment Variable HTTPS_JWT_SIMS http-https-server0:32100
diff --git a/tests/dcaegen2-collectors-datafile/testsuites/HTTPS-Various-Connection-Types-suite/HttpsVariousConnectionTypes.robot b/tests/dcaegen2-collectors-datafile/testsuites/HTTP-Various-Connection-Types-suite/HttpVariousConnectionTypes.robot
index c8d09c2b..9e69e536 100755
--- a/tests/dcaegen2-collectors-datafile/testsuites/HTTPS-Various-Connection-Types-suite/HttpsVariousConnectionTypes.robot
+++ b/tests/dcaegen2-collectors-datafile/testsuites/HTTP-Various-Connection-Types-suite/HttpVariousConnectionTypes.robot
@@ -22,16 +22,29 @@ Verify single event with single 1MB file with HTTPS connection (basic authentica
Verify single event with single 1MB file HTTPS connection (client certificate authentication). From event poll to published file
[TAGS] DFC_FUNCTIONAL_41
- [Documentation] Verify single event with single HTTPS (basic authentication) 5MB file from event poll to published file.
+ [Documentation] Verify single event with single 1MB file HTTPS connection (client certificate authentication). From event poll to published file
Verify Single Event From Event Poll To Published File 1 --tc403 HTTPS
Verify single event with single 1MB file HTTPS (no authentication). From event poll to published file
[TAGS] DFC_FUNCTIONAL_42
- [Documentation] Verify single event with single HTTPS (basic authentication) 50MB file from event poll to published file.
+ [Documentation] Verify single event with single 1MB file HTTPS (no authentication). From event poll to published file
Verify Single Event From Event Poll To Published File 1 --tc404 HTTPS
+Verify single event with single 1MB file with HTTP JWT. From event poll to published file
+ [TAGS] DFC_FUNCTIONAL_43
+ [Documentation] Verify single event with single 1MB file with HTTP JWT. From event poll to published file
+ ${cli_cmd_output}= Run Process ${DFC_ROOT}/../dfc-containers-clean.sh stderr=STDOUT
+ Verify Single Event From Event Poll To Published File 1 --tc303 HTTP
+
+
+Verify single event with single 1MB file with HTTPS JWT. From event poll to published file
+ [TAGS] DFC_FUNCTIONAL_44
+ [Documentation] Verify single event with single 1MB file with HTTPS JWT. From event poll to published file
+ ${cli_cmd_output}= Run Process ${DFC_ROOT}/../dfc-containers-clean.sh stderr=STDOUT
+ Verify Single Event From Event Poll To Published File 1 --tc405 HTTPS
+
*** Keywords ***
Verify Single Event From Event Poll To Published File
@@ -93,3 +106,5 @@ Set Default Environment Variables
Set Environment Variable HTTP_SIMS http-https-server0:80
Set Environment Variable HTTPS_SIMS http-https-server0:443
Set Environment Variable HTTPS_SIMS_NO_AUTH http-https-server0:8080
+ Set Environment Variable HTTP_JWT_SIMS http-https-server0:32000
+ Set Environment Variable HTTPS_JWT_SIMS http-https-server0:32100
diff --git a/tests/dcaegen2-collectors-datafile/testsuites/HTTP-Various-Connection-Types-suite/__init__.robot b/tests/dcaegen2-collectors-datafile/testsuites/HTTP-Various-Connection-Types-suite/__init__.robot
new file mode 100755
index 00000000..b4fa2714
--- /dev/null
+++ b/tests/dcaegen2-collectors-datafile/testsuites/HTTP-Various-Connection-Types-suite/__init__.robot
@@ -0,0 +1,2 @@
+*** Settings ***
+Documentation DFC HTTP/HTTPS various connection types test suite. Single event with single file.
diff --git a/tests/dcaegen2-collectors-datafile/testsuites/HTTPS-Various-Connection-Types-suite/__init__.robot b/tests/dcaegen2-collectors-datafile/testsuites/HTTPS-Various-Connection-Types-suite/__init__.robot
deleted file mode 100755
index dac245f8..00000000
--- a/tests/dcaegen2-collectors-datafile/testsuites/HTTPS-Various-Connection-Types-suite/__init__.robot
+++ /dev/null
@@ -1,2 +0,0 @@
-*** Settings ***
-Documentation DFC HTTPS various connection types test suite. Single event with single file.
diff --git a/tests/dcaegen2-collectors-datafile/testsuites/Strict-Host-Checking-suite/StrictHostChecking.robot b/tests/dcaegen2-collectors-datafile/testsuites/Strict-Host-Checking-suite/StrictHostChecking.robot
index 9baf11f6..61f689d1 100755
--- a/tests/dcaegen2-collectors-datafile/testsuites/Strict-Host-Checking-suite/StrictHostChecking.robot
+++ b/tests/dcaegen2-collectors-datafile/testsuites/Strict-Host-Checking-suite/StrictHostChecking.robot
@@ -93,6 +93,8 @@ Setup Strict Host Key Checking Test
Set Environment Variable HTTP_SIMS http-https-server0:80
Set Environment Variable HTTPS_SIMS http-https-server0:443
Set Environment Variable HTTPS_SIMS_NO_AUTH http-https-server0:8080
+ Set Environment Variable HTTP_JWT_SIMS http-https-server0:32000
+ Set Environment Variable HTTPS_JWT_SIMS http-https-server0:32100
${cli_cmd_output}= Run Process ./simulators-start.sh cwd=${SIMGROUP_ROOT}
Log To Console Simulator-start:
diff --git a/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/__init__.robot b/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/__init__.robot
new file mode 100644
index 00000000..9eda6de0
--- /dev/null
+++ b/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/__init__.robot
@@ -0,0 +1,2 @@
+*** Settings ***
+Documentation Files Processing Config PM Mapper Testcases
diff --git a/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/assets/.gitattributes b/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/assets/.gitattributes
new file mode 100644
index 00000000..57cdc503
--- /dev/null
+++ b/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/assets/.gitattributes
@@ -0,0 +1 @@
+*.gz binary
diff --git a/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/assets/ABigFile.xml b/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/assets/ABigFile.xml
new file mode 100644
index 00000000..8a3bcf4d
--- /dev/null
+++ b/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/assets/ABigFile.xml
@@ -0,0 +1,163 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet type="text/xsl" href="MeasDataCollection.xsl"?>
+<measCollecFile xmlns="http://www.3gpp.org/ftp/specs/archive/32_series/32.435#measCollec"
+xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+xsi:schemaLocation="http://www.3gpp.org/ftp/specs/archive/32_series/32.435#measCollec http://www.3gpp.org/ftp/specs/archive/32_series/32.435#measCollec">
+ <fileHeader fileFormatVersion="32.435 V7.0" vendorName="Company NN" dnPrefix="DC=a1.companyNN.com,SubNetwork=1,IRPAgent=1">
+ <fileSender localDn="SubNetwork=CountryNN,MeContext=MEC-Gbg-1,ManagedElement=RNC-Gbg-1" elementType="RNC"/>
+ <measCollec beginTime="2000-03-01T14:00:00+02:00"/>
+ </fileHeader>
+ <measData>
+ <managedElement localDn="SubNetwork=CountryNN,MeContext=MEC-Gbg-1,ManagedElement=RNC-Gbg-1" userLabel="RNC Telecomville"/>
+ <measInfo>
+ <job jobId="1231"/>
+ <granPeriod duration="PT900S" endTime="2000-03-01T14:14:30+02:00"/>
+ <repPeriod duration="PT1800S"/>
+ <measType p="1">attTCHSeizures</measType>
+ <measType p="2">succTCHSeizures</measType>
+ <measType p="3">attImmediateAssignProcs</measType>
+ <measType p="4">succImmediateAssignProcs</measType>
+ <measValue measObjLdn="RncFunction=RF-1,UtranCell=Gbg-997">
+ <r p="1">234</r>
+ <r p="2">345</r>
+ <r p="3">567</r>
+ <r p="4">789</r>
+ </measValue>
+ <measValue measObjLdn="RncFunction=RF-1,UtranCell=Gbg-998">
+ <r p="1">890</r>
+ <r p="2">901</r>
+ <r p="3">123</r>
+ <r p="4">234</r>
+ </measValue>
+ <measValue measObjLdn="RncFunction=RF-1,UtranCell=Gbg-999">
+ <r p="1">456</r>
+ <r p="2">567</r>
+ <r p="3">678</r>
+ <r p="4">789</r>
+ <suspect>true</suspect>
+ </measValue>
+ </measInfo>
+ <measInfo measInfoId="ENodeBFunction">
+ <job jobId="1232"/>
+ <granPeriod duration="PT900S" endTime="2000-03-01T14:14:30+02:00"/>
+ <repPeriod duration="PT1800S"/>
+ <measType p="1">attTCHSeizures1</measType>
+ <measType p="2">succTCHSeizures2</measType>
+ <measType p="3">attImmediateAssignProcs3</measType>
+ <measType p="4">succImmediateAssignProcs4</measType>
+ <measValue measObjLdn="ManagedElement=RNC-Gbg-1,ENodeBFunction=1">
+ <r p="1">4</r>
+ <r p="2">86,87,2,6,77,96,75,33,24</r>
+ <r p="3">40</r>
+ <r p="4">90</r>
+ <suspect>false</suspect>
+ </measValue>
+ </measInfo>
+ <measInfo>
+ <job jobId="1233"/>
+ <granPeriod duration="PT900S" endTime="2000-03-01T14:14:30+02:00"/>
+ <repPeriod duration="PT1800S"/>
+ <measType p="1">attTCHSeizures5</measType>
+ <measType p="2">succTCHSeizures6</measType>
+ <measType p="3">attImmediateAssignProcs7</measType>
+ <measType p="4">succImmediateAssignProcs8</measType>
+ <measValue measObjLdn="RncFunction=RF-1,UtranCell=Gbg-997">
+ <r p="1">238</r>
+ <r p="2">344</r>
+ <r p="3">563</r>
+ <r p="4">787</r>
+ </measValue>
+ <measValue measObjLdn="RncFunction=RF-1,UtranCell=Gbg-998">
+ <r p="1">898</r>
+ <r p="2">905</r>
+ <r p="3">127</r>
+ <r p="4">238</r>
+ </measValue>
+ <measValue measObjLdn="RncFunction=RF-1,UtranCell=Gbg-999">
+ <r p="1">454</r>
+ <r p="2">569</r>
+ <r p="3">672</r>
+ <r p="4">785</r>
+ <suspect>true</suspect>
+ </measValue>
+ </measInfo>
+ </measData>
+ <measData>
+ <managedElement localDn="SubNetwork=CountryNN,MeContext=MEC-Gbg-1,ManagedElement=RNC-Gbg-1" userLabel="RNC Telecomville"/>
+ <measInfo>
+ <job jobId="1231"/>
+ <granPeriod duration="PT900S" endTime="2000-03-01T14:14:30+02:00"/>
+ <repPeriod duration="PT1800S"/>
+ <measType p="1">attTCHSeizures</measType>
+ <measType p="2">succTCHSeizures</measType>
+ <measType p="3">attImmediateAssignProcs</measType>
+ <measType p="4">succImmediateAssignProcs</measType>
+ <measValue measObjLdn="RncFunction=RF-1,UtranCell=Gbg-997">
+ <r p="1">234</r>
+ <r p="2">345</r>
+ <r p="3">567</r>
+ <r p="4">789</r>
+ </measValue>
+ <measValue measObjLdn="RncFunction=RF-1,UtranCell=Gbg-998">
+ <r p="1">890</r>
+ <r p="2">901</r>
+ <r p="3">123</r>
+ <r p="4">234</r>
+ </measValue>
+ <measValue measObjLdn="RncFunction=RF-1,UtranCell=Gbg-999">
+ <r p="1">456</r>
+ <r p="2">567</r>
+ <r p="3">678</r>
+ <r p="4">789</r>
+ <suspect>true</suspect>
+ </measValue>
+ </measInfo>
+ <measInfo measInfoId="ENodeBFunction">
+ <job jobId="1232"/>
+ <granPeriod duration="PT900S" endTime="2000-03-01T14:14:30+02:00"/>
+ <repPeriod duration="PT1800S"/>
+ <measType p="1">attTCHSeizures1</measType>
+ <measType p="2">succTCHSeizures2</measType>
+ <measType p="3">attImmediateAssignProcs3</measType>
+ <measType p="4">succImmediateAssignProcs4</measType>
+ <measValue measObjLdn="ManagedElement=RNC-Gbg-1,ENodeBFunction=1">
+ <r p="1">4</r>
+ <r p="2">86,87,2,6,77,96,75,33,24</r>
+ <r p="3">40</r>
+ <r p="4">90</r>
+ <suspect>false</suspect>
+ </measValue>
+ </measInfo>
+ <measInfo>
+ <job jobId="1233"/>
+ <granPeriod duration="PT900S" endTime="2000-03-01T14:14:30+02:00"/>
+ <repPeriod duration="PT1800S"/>
+ <measType p="1">attTCHSeizures5</measType>
+ <measType p="2">succTCHSeizures6</measType>
+ <measType p="3">attImmediateAssignProcs7</measType>
+ <measType p="4">succImmediateAssignProcs8</measType>
+ <measValue measObjLdn="RncFunction=RF-1,UtranCell=Gbg-997">
+ <r p="1">238</r>
+ <r p="2">344</r>
+ <r p="3">563</r>
+ <r p="4">787</r>
+ </measValue>
+ <measValue measObjLdn="RncFunction=RF-1,UtranCell=Gbg-998">
+ <r p="1">898</r>
+ <r p="2">905</r>
+ <r p="3">127</r>
+ <r p="4">238</r>
+ </measValue>
+ <measValue measObjLdn="RncFunction=RF-1,UtranCell=Gbg-999">
+ <r p="1">454</r>
+ <r p="2">569</r>
+ <r p="3">672</r>
+ <r p="4">785</r>
+ <suspect>true</suspect>
+ </measValue>
+ </measInfo>
+ </measData>
+ <fileFooter>
+ <measCollec endTime="2000-03-01T14:15:00+02:00"/>
+ </fileFooter>
+</measCollecFile>
diff --git a/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/assets/config_10_1.env b/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/assets/config_10_1.env
new file mode 100644
index 00000000..050d2f2a
--- /dev/null
+++ b/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/assets/config_10_1.env
@@ -0,0 +1,3 @@
+PROCESSING_LIMIT_RATE=10
+THREADS_MULTIPLIER=1
+PROCESSING_THREADS_COUNT=1
diff --git a/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/assets/config_1_1.env b/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/assets/config_1_1.env
new file mode 100644
index 00000000..c138912b
--- /dev/null
+++ b/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/assets/config_1_1.env
@@ -0,0 +1,3 @@
+PROCESSING_LIMIT_RATE=1
+THREADS_MULTIPLIER=1
+PROCESSING_THREADS_COUNT=1
diff --git a/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/assets/config_1_10.env b/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/assets/config_1_10.env
new file mode 100644
index 00000000..b4c290e8
--- /dev/null
+++ b/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/assets/config_1_10.env
@@ -0,0 +1,3 @@
+PROCESSING_LIMIT_RATE=1
+THREADS_MULTIPLIER=1
+PROCESSING_THREADS_COUNT=10
diff --git a/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/assets/valid_metadata.json b/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/assets/valid_metadata.json
new file mode 100644
index 00000000..da809d7b
--- /dev/null
+++ b/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/assets/valid_metadata.json
@@ -0,0 +1,12 @@
+{
+ "productName": "gnb",
+ "vendorName": "Ericsson",
+ "lastEpochMicrosec": "1538478000000",
+ "sourceName": "oteNB5309",
+ "startEpochMicrosec": "1538478900000",
+ "timeZoneOffset": "UTC+05.00",
+ "location": "ftpes://192.168.0.101:22/ftp/rop/A20161224.1045-1100.bin.gz",
+ "compression": "gzip",
+ "fileFormatType": "org.3GPP.32.435#measCollec",
+ "fileFormatVersion": "V9"
+ } \ No newline at end of file
diff --git a/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/files-processing-config-pmmapper.robot b/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/files-processing-config-pmmapper.robot
new file mode 100644
index 00000000..09a7de4f
--- /dev/null
+++ b/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/files-processing-config-pmmapper.robot
@@ -0,0 +1,148 @@
+*** Settings ***
+Documentation Testing PM Mapper functionality
+Library Collections
+Library OperatingSystem
+Library RequestsLibrary
+Library Process
+Library String
+Library libraries/DockerContainerManager.py
+Library libraries/LogReader.py
+
+*** Variables ***
+
+${NR_VALID_METADATA_PATH} %{WORKSPACE}/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/assets/valid_metadata.json
+${CLI_EXEC_CLI_PM_LOG_CLEAR} docker exec pmmapper /bin/sh -c "echo -n "" > /var/log/ONAP/dcaegen2/services/pm-mapper/pm-mapper_output.log"
+${PUBLISH_NODE_URL} https://${DR_NODE_IP}:8443/publish/1
+${CLI_EXEC_LOGS_LIST} docker exec datarouter-node /bin/sh -c "ls /opt/app/datartr/logs"
+${DOCKER_CLIENT_IMAGE} nexus3.onap.org:10001/onap/org.onap.dcaegen2.services.pm-mapper:latest
+${CLIENT_CONTAINER_NAME} pmmapper
+${FILE_PATH} %{WORKSPACE}/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/assets/ABigFile.xml
+${CONFIG_ENVS_1_1} %{WORKSPACE}/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/assets/config_1_1.env
+${CONFIG_ENVS_4_1} %{WORKSPACE}/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/assets/config_4_1.env
+${CONFIG_ENVS_10_1} %{WORKSPACE}/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/assets/config_10_1.env
+${CONFIG_ENVS_1_10} %{WORKSPACE}/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/assets/config_1_10.env
+
+*** Test Cases ***
+
+Verify that PM Mapper rejects 6-9 messages when limitRate is 1 and threads count is 1
+ [Tags] FILES_PROCESSING_CONFIG_PM_MAPPER_1
+ [Documentation] Verify that PM Mapper rejects 6-9/10 messages. Configuration: limitRate=1, threadsCount=1
+ [Timeout] 15 minute
+
+ RestartPmmapper ${CONFIG_ENVS_1_1}
+
+ ${testname}= Set Variable Afirst-
+
+ SendFilesToDatarouter ${testname}
+ ${alllogs}= GetLogsOutput
+ ${filtered_logs}= GetFilteredLogs ${alllogs} ${testname}
+ ${dropped_nr}= GetDroppedNumber ${filtered_logs}
+
+ Sleep 40s
+ ${isCorrectDroppedCount}= Evaluate ${5} < ${dropped_nr} < ${10}
+ SavePmMapperLogsAndDroppedCount config_1_1 ${dropped_nr}
+ Should Be True ${isCorrectDroppedCount} Pm-mapper drop: ${dropped_nr} messages. Expected drop count: 6-9
+ ClearLogs
+
+Verify that PM Mapper rejects 0 messages when limitRate is 10 and threads count is 1
+ [Tags] FILES_PROCESSING_CONFIG_PM_MAPPER_2
+ [Documentation] Verify that PM Mapper rejects 0/10 messages. Configuration: limitRate=10, threadsCount=1
+ [Timeout] 25 minute
+
+ RestartPmmapper ${CONFIG_ENVS_10_1}
+
+ ${testname}= Set Variable Athird-
+
+ SendFilesToDatarouter ${testname}
+ ${alllogs}= GetLogsOutput
+ ${filtered_logs}= GetFilteredLogs ${alllogs} ${testname}
+ ${dropped_nr}= GetDroppedNumber ${filtered_logs}
+
+ Sleep 15s
+ SavePmMapperLogsAndDroppedCount config_10_1 ${dropped_nr}
+ Should Be Equal As Numbers ${dropped_nr} 0 Pm-mapper drop: ${dropped_nr} messages. Expected drop count: 0
+ ClearLogs
+
+Verify that PM Mapper rejects 0 messages when limitRate is 1 and threads count is 10
+ [Tags] FILES_PROCESSING_CONFIG_PM_MAPPER_3
+ [Documentation] Verify that PM Mapper rejects 0/10 messages. Configuration: limitRate=1, threadsCount=10
+ [Timeout] 25 minute
+
+ RestartPmmapper ${CONFIG_ENVS_1_10}
+
+ ${testname}= Set Variable Afourth-
+
+ SendFilesToDatarouter ${testname}
+ ${alllogs}= GetLogsOutput
+ ${filtered_logs}= GetFilteredLogs ${alllogs} ${testname}
+ ${dropped_nr}= GetDroppedNumber ${filtered_logs}
+
+ Sleep 15s
+ SavePmMapperLogsAndDroppedCount config_1_10 ${dropped_nr}
+ Should Be Equal As Numbers ${dropped_nr} 0 Pm-mapper drop: ${dropped_nr} messages. Expected drop count: 0
+ ClearLogs
+
+*** Keywords ***
+
+SendFilesToDatarouter
+ [Arguments] ${testnr}
+ FOR ${i} IN RANGE 10
+ SendToDatarouter ${FILE_PATH} ${NR_VALID_METADATA_PATH} X-ONAP-RequestID=${i} ${testnr} ${i}
+ END
+ Sleep 20s
+
+SendToDatarouter
+ [Arguments] ${filepath} ${metadatapath} ${request_id} ${testnr} ${i}
+ ${pmdata}= Get File ${filepath}
+ ${metatdata} Get File ${metadatapath}
+ ${newFilename} Catenate SEPARATOR= ${testnr} ${i} .xml
+ ${resp}= PutCall ${PUBLISH_NODE_URL}/${newFilename} ${request_id} ${pmdata} ${metatdata.replace("\n","")} pmmapper
+ VerifyResponse ${resp.status_code} 204
+
+PutCall
+ [Arguments] ${url} ${request_id} ${data} ${meta} ${user}
+ ${headers}= Create Dictionary X-ONAP-RequestID=${request_id} X-DMAAP-DR-META=${meta} Content-Type=application/octet-stream X-DMAAP-DR-ON-BEHALF-OF=${user} Authorization=Basic cG1tYXBwZXI6cG1tYXBwZXI=
+ ${resp}= Evaluate requests.put('${url}', data="""${data}""", headers=${headers}, verify=False, allow_redirects=False) requests
+ [Return] ${resp}
+
+VerifyResponse
+ [Arguments] ${actual_response_value} ${expected_response_value}
+ Should Be Equal As Strings ${actual_response_value} ${expected_response_value}
+
+ClearLogs
+ Run Process ${CLI_EXEC_CLI_PM_LOG_CLEAR} shell=yes
+
+GetLogsOutput
+ ${filesString}= Run Process ${CLI_EXEC_LOGS_LIST} shell=yes
+ ${filesList}= Get Log Files List ${filesString.stdout}
+ ${output}= Set Variable ${EMPTY}
+ FOR ${file} IN @{filesList}
+ ${file_path}= Catenate SEPARATOR= "cat /opt/app/datartr/logs/ ${file} "
+ ${exec}= Catenate docker exec datarouter-node /bin/sh -c ${file_path}
+ ${single_file}= Run Process ${exec} shell=yes
+ ${output}= Catenate SEPARATOR=\n ${output} ${single_file.stdout}
+ END
+ [Return] ${output}
+
+GetFilteredLogs
+ [Arguments] ${all_logs} ${testname}
+ ${filtered_logs}= Filter Unique ${all_logs} ${testname}
+ [Return] ${filtered_logs}
+
+GetDroppedNumber
+ [Arguments] ${logs_output}
+ ${number}= Get Number Of Dropped Messages ${logs_output}
+ [Return] ${number}
+
+RestartPmmapper
+ [Arguments] ${envs}
+ Remove Container ${CLIENT_CONTAINER_NAME}
+ Sleep 5s
+ Run Pmmapper Container ${DOCKER_CLIENT_IMAGE} ${CLIENT_CONTAINER_NAME} ${envs} ${DR_NODE_IP} ${NODE_IP}
+ Sleep 15s
+
+SavePmMapperLogsAndDroppedCount
+ [Arguments] ${test_name} ${dropped_count}
+ Run Process echo "Dropped: ${dropped_count}" > %{WORKSPACE}/archives/${test_name}_dropped_count.log shell=yes
+ Run Process docker logs ${CLIENT_CONTAINER_NAME} > %{WORKSPACE}/archives/${test_name}_pm_mapper_container_logs.log shell=yes
+
diff --git a/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/libraries/DockerContainerManager.py b/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/libraries/DockerContainerManager.py
new file mode 100644
index 00000000..3e3ae58e
--- /dev/null
+++ b/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/libraries/DockerContainerManager.py
@@ -0,0 +1,29 @@
+import docker
+from EnvsReader import EnvsReader
+from docker.types import Mount
+
+class DockerContainerManager:
+
+ def run_pmmapper_container(self, client_image, container_name, path_to_env, dr_node_ip, mr_ip):
+ client = docker.from_env()
+ environment = EnvsReader().read_env_list_from_file(path_to_env)
+ environment.append("CONFIG_BINDING_SERVICE_SERVICE_HOST=172.18.0.5")
+ environment.append("CONFIG_BINDING_SERVICE_SERVICE_PORT=10000")
+ environment.append("HOSTNAME=pmmapper")
+ client.containers.run(
+ image=client_image,
+ name=container_name,
+ environment=environment,
+ ports={'8081': 8081},
+ network='filesprocessingconfigpmmapper_pmmapper-network',
+ extra_hosts={'dmaap-dr-node': dr_node_ip, 'message-router': mr_ip},
+ user='root',
+ mounts=[Mount(target='/opt/app/pm-mapper/etc/certs/', source='/var/tmp/', type='bind')],
+ detach=True
+ )
+
+ def remove_container(self, container_name):
+ client = docker.from_env()
+ container = client.containers.get(container_name)
+ container.stop()
+ container.remove()
diff --git a/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/libraries/EnvsReader.py b/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/libraries/EnvsReader.py
new file mode 100644
index 00000000..cc60eed6
--- /dev/null
+++ b/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/libraries/EnvsReader.py
@@ -0,0 +1,11 @@
+
+class EnvsReader:
+
+ def read_env_list_from_file(self, path):
+ f = open(path, "r")
+ r_list = []
+ for line in f:
+ line = line.strip()
+ if line[0] != "#":
+ r_list.append(line)
+ return r_list
diff --git a/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/libraries/LogReader.py b/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/libraries/LogReader.py
new file mode 100644
index 00000000..01718e35
--- /dev/null
+++ b/tests/dcaegen2-pmmapper/files-processing-config-pmmapper/libraries/LogReader.py
@@ -0,0 +1,22 @@
+import re
+
+class LogReader:
+
+ def filter_unique(self, merged_logs_output, testname):
+ logs = merged_logs_output.splitlines()
+ del_logs = list(filter(lambda line: "|DEL|" in line, logs))
+ nrs_set = set()
+ ret_logs = set()
+ for log in del_logs:
+ filename = re.findall(testname + "\d", log)
+ if len(filename) > 0 and filename[0] not in nrs_set:
+ ret_logs.add(log)
+ nrs_set.add(filename[0])
+ return ret_logs
+
+ def get_number_of_dropped_messages(self, logs_output):
+ return len(list(filter(lambda line: "|429|" in line, logs_output)))
+
+ def get_log_files_list(self, fileNames):
+ files = fileNames.split()
+ return files
diff --git a/tests/dcaegen2/testcases/assets/json_events/ves7_pnf_registration_event.json b/tests/dcaegen2/testcases/assets/json_events/ves7_pnf_registration_event.json
index dcd3aa5d..1726e064 100644
--- a/tests/dcaegen2/testcases/assets/json_events/ves7_pnf_registration_event.json
+++ b/tests/dcaegen2/testcases/assets/json_events/ves7_pnf_registration_event.json
@@ -28,7 +28,7 @@
"unitFamily": "BBU",
"vendorName": "Nokia",
"oamV4IpAddress": "10.11.12.13",
- "oamV6IpAddress": "1::::9",
+ "oamV6IpAddress": "2001:db2:31:1041:204a::1337",
"softwareVersion": "val7"
}
}
diff --git a/tests/so/sanity-check/data/macroflow.json b/tests/so/sanity-check/data/macroflow.json
new file mode 100644
index 00000000..87f782a4
--- /dev/null
+++ b/tests/so/sanity-check/data/macroflow.json
@@ -0,0 +1,161 @@
+{
+ "requestDetails": {
+ "requestInfo": {
+ "suppressRollback": false,
+ "productFamilyId": "1234",
+ "requestorId": "demo",
+ "instanceName": "CsitEtsiInstance",
+ "source": "VID"
+ },
+ "modelInfo": {
+ "modelType": "service",
+ "modelInvariantId": "b9202a74-4c16-4245-83ad-1cd53c813214",
+ "modelVersionId": "6f2c7614-571c-4482-aa2c-5eac0308aa16",
+ "modelName": "vfw_k8s_demo_CNF",
+ "modelVersion": "1.0"
+ },
+ "cloudConfiguration": {
+ "tenantId": "693c7729b2364a26a3ca602e6f66187d",
+ "cloudOwner": "CloudOwner",
+ "lcpCloudRegionId": "EtsiCloudRegion"
+ },
+ "subscriberInfo": {
+ "globalSubscriberId": "DemoCustomer"
+ },
+ "requestParameters": {
+ "subscriptionServiceType": "vCPE",
+ "userParams": [{
+ "Homing_Solution": "none"
+ }, {
+ "service": {
+ "instanceParams": [],
+ "instanceName": "CsitEtsiInstance",
+ "resources": {
+ "vnfs": [
+ {
+ "modelInfo": {
+ "modelName": "VF_vfw_k8s_demo_CNF",
+ "modelVersionId": "daeb6a5c-3a8a-40b0-a575-8cca71dd0b7c",
+ "modelInvariantUuid": "517403c8-fab8-4cfe-9bc5-d94f5e34b257",
+ "modelVersion": "1.0",
+ "modelCustomizationId": "8b8b67bd-01a4-42f7-b0fc-1d3a0f2765fd",
+ "modelInstanceName": "VF_vfw_k8s_demo_CNF 0"
+ },
+ "cloudConfiguration": {
+ "tenantId": "693c7729b2364a26a3ca602e6f66187d",
+ "cloudOwner": "CloudOwner",
+ "lcpCloudRegionId": "EtsiCloudRegion"
+ },
+ "platform": {
+ "platformName": "test"
+ },
+ "lineOfBusiness": {
+ "lineOfBusinessName": "LOB-Demonstration"
+ },
+ "productFamilyId": "1234",
+ "instanceName": "VF_frankfurt_vfw_k8s_demo_final",
+ "instanceParams": [{
+ "sdnc_model_name": "vFW_CNF_CDS",
+ "sdnc_model_version": "1.0.45",
+ "sdnc_artifact_name": "vnf"
+ }
+ ],
+ "vfModules": [
+ {
+ "modelInfo": {
+ "modelName": "VfVfwK8sDemoCnf..base_template..module-0",
+ "modelVersionId": "86224a10-c17e-42c9-9809-f3c31ba1b781",
+ "modelInvariantUuid": "2bc34946-d57d-4053-9e9f-d60587c9aa12",
+ "modelVersion": "1",
+ "modelCustomizationId": "905ffa63-7011-4cbe-943c-237f303b4e9f"
+ },
+ "instanceName": "vf_frankfurt_vfw_k8s_demo_final0..VfFrankfurtVfwK8sDemoFinal..base_template..module-0",
+ "instanceParams": [{
+ "k8s-rb-profile-name": "vfw-cnf-cds-base-profile",
+ "k8s-rb-profile-namespace": "test-vfw1",
+ "sdnc_model_name": "vFW_CNF_CDS",
+ "sdnc_model_version": "1.0.45",
+ "vf_module_label": "base_template"
+ }
+ ]
+ },
+ {
+ "modelInfo": {
+ "modelName": "VfVfwK8sDemoCnf..vsn..module-1",
+ "modelVersionId": "3c50323b-5f8c-4b31-938f-8e996a2e0001",
+ "modelInvariantUuid": "11e50367-a4c9-4203-a838-518446ec816a",
+ "modelVersion": "1",
+ "modelCustomizationId": "1812807a-9f6b-42e4-b78c-814c3fea5a4c"
+ },
+ "instanceName": "vf_frankfurt_vfw_k8s_demo_final0..VfFrankfurtVfwK8sDemoFinal..vsn..module-1",
+ "instanceParams": [{
+ "k8s-rb-profile-name": "vfw-cnf-cds-base-profile",
+ "k8s-rb-profile-namespace": "vfirewall",
+ "sdnc_model_name": "vFW_CNF_CDS",
+ "sdnc_model_version": "7.0.0",
+ "vf_module_label": "vsn"
+ }
+ ]
+ },
+ {
+ "modelInfo": {
+ "modelName": "VfVfwK8sDemoCnf..vpkg..module-2",
+ "modelVersionId": "104e8b4e-d404-4a5b-9beb-f92a217fd6ee",
+ "modelInvariantUuid": "1782dcdb-2a4c-4665-8d04-be6b989fea8e",
+ "modelVersion": "1",
+ "modelCustomizationId": "02fb0319-f37d-4e8b-9009-263fffdb2549"
+ },
+ "instanceName": "vf_frankfurt_vfw_k8s_demo_final0..VfFrankfurtVfwK8sDemoFinal..vpkg..module-2",
+ "instanceParams": [{
+ "k8s-rb-profile-name": "vfw-cnf-cds-base-profile",
+ "k8s-rb-profile-namespace": "vfirewall",
+ "sdnc_model_name": "vFW_CNF_CDS",
+ "sdnc_model_version": "7.0.0",
+ "vf_module_label": "vpkg"
+ }
+ ]
+ },
+ {
+ "modelInfo": {
+ "modelName": "VfVfwK8sDemoCnf..vfw..module-3",
+ "modelVersionId": "a5f678db-2e5f-47be-8fab-1540bc7482d8",
+ "modelInvariantUuid": "c0869243-7667-4434-b9cc-84791f07a13a",
+ "modelVersion": "1",
+ "modelCustomizationId": "f144c7c8-da93-4e06-ba93-d26e69eba509"
+ },
+ "instanceName": "vf_frankfurt_vfw_k8s_demo_final0..VfFrankfurtVfwK8sDemoFinal..vfw..module-3",
+ "instanceParams": [{
+ "k8s-rb-profile-name": "vfw-cnf-cds-base-profile",
+ "k8s-rb-profile-namespace": "vfirewall",
+ "sdnc_model_name": "vFW_CNF_CDS",
+ "sdnc_model_version": "7.0.0",
+ "vf_module_label": "vfw"
+ }
+ ]
+ }
+
+ ]
+ }
+ ]
+ },
+ "modelInfo": {
+ "modelVersion": "1.0",
+ "modelVersionId": "6f2c7614-571c-4482-aa2c-5eac0308aa16",
+ "modelInvariantId": "b9202a74-4c16-4245-83ad-1cd53c813214",
+ "modelName": "vfw_k8s_demo_CNF",
+ "modelType": "service"
+ }
+ }
+ }
+ ],
+ "aLaCarte": false
+ },
+ "project": {
+ "projectName": "etsiCsitProject"
+ },
+ "owningEntity": {
+ "owningEntityId": "f2e1071e-3d47-4a65-94d4-e473ec03326a",
+ "owningEntityName": "OE-Demonstration"
+ }
+ }
+}
diff --git a/tests/so/sanity-check/data/serviceBasicVfCnfnotification.json b/tests/so/sanity-check/data/serviceBasicVfCnfnotification.json
new file mode 100644
index 00000000..02485e18
--- /dev/null
+++ b/tests/so/sanity-check/data/serviceBasicVfCnfnotification.json
@@ -0,0 +1,294 @@
+{
+ "distributionID": "2d6c5aa8-b644-4f30-a632-5577801ef959",
+ "serviceName": "vfw_k8s_demo_CNF",
+ "serviceVersion": "1.0",
+ "serviceUUID": "6f2c7614-571c-4482-aa2c-5eac0308aa16",
+ "serviceDescription": "service",
+ "serviceInvariantUUID": "b9202a74-4c16-4245-83ad-1cd53c813214",
+ "resources": [
+ {
+ "resourceInstanceName": "VF_vfw_k8s_demo_CNF 0",
+ "resourceName": "VF_vfw_k8s_demo_CNF",
+ "resourceVersion": "1.0",
+ "resoucreType": "VF",
+ "resourceUUID": "daeb6a5c-3a8a-40b0-a575-8cca71dd0b7c",
+ "resourceInvariantUUID": "517403c8-fab8-4cfe-9bc5-d94f5e34b257",
+ "resourceCustomizationUUID": "8b8b67bd-01a4-42f7-b0fc-1d3a0f2765fd",
+ "category": "Generic",
+ "subcategory": "Abstract",
+ "artifacts": [{
+ "artifactName": "vf_vfw_k8s_demo_cnf0_modules.json",
+ "artifactType": "VF_MODULES_METADATA",
+ "artifactURL": "/unzipped_sdc_csar/vf_vfw_k8s_demo_cnf0_modules.json",
+ "artifactChecksum": "MDJkYjNmNjEzM2Y1ZDgzNzZiZWUxMjZkMzA3YzkwZDI\u003d",
+ "artifactDescription": "Auto-generated VF Modules information artifact",
+ "artifactTimeout": 120,
+ "artifactUUID": "86224a10-c17e-42c9-9809-f3c31ba1b781",
+ "artifactVersion": "1"
+ },
+{
+ "artifactName": "vf_vfw_k8s_demo_cnf1_modules.json",
+ "artifactType": "VF_MODULES_METADATA",
+ "artifactURL": "/unzipped_sdc_csar/vf_vfw_k8s_demo_cnf0_modules.json",
+ "artifactChecksum": "MDJkYjNmNjEzM2Y1ZDgzNzZiZWUxMjZkMzA3YzkwZDI\u003d",
+ "artifactDescription": "Auto-generated VF Modules information artifact",
+ "artifactTimeout": 120,
+ "artifactUUID": "3c50323b-5f8c-4b31-938f-8e996a2e0001",
+ "artifactVersion": "1"
+ },
+
+{
+ "artifactName": "base_template.env",
+ "artifactType": "HEAT_ENV",
+ "artifactURL": "/unzipped_sdc_csar/base_template.env",
+ "artifactChecksum": "MDJkYjNmNjEzM2Y1ZDgzNzZiZWUxMjZkMzA3YzkwZDI\u003d",
+ "artifactDescription": "Auto-generated VF Modules information artifact",
+ "artifactTimeout": 120,
+ "artifactUUID": "ede4c2de-133f-49e3-9daa-8c56b65b5c6b",
+ "artifactVersion": "1"
+ },
+{
+ "artifactName": "base_template_cloudtech_k8s_charts.env",
+ "artifactType": "HEAT_ENV",
+ "artifactURL": "/unzipped_sdc_csar/base_template_cloudtech_k8s_charts.env",
+ "artifactChecksum": "MDJkYjNmNjEzM2Y1ZDgzNzZiZWUxMjZkMzA3YzkwZDI\u003d",
+ "artifactDescription": "Auto-generated VF Modules information artifact",
+ "artifactTimeout": 120,
+ "artifactUUID": "6833f47d-e91b-4887-8b55-f68ef25bccf3",
+ "artifactVersion": "1"
+ },
+
+{
+ "artifactName": "base_template.env",
+ "artifactType": "HEAT_ENV",
+ "artifactURL": "/unzipped_sdc_csar/base_template.env",
+ "artifactChecksum": "MDJkYjNmNjEzM2Y1ZDgzNzZiZWUxMjZkMzA3YzkwZDI\u003d",
+ "artifactDescription": "Auto-generated VF Modules information artifact",
+ "artifactTimeout": 120,
+ "artifactUUID": "7f1dbc99-849e-4af8-bdcb-6c214f939428",
+ "artifactVersion": "1"
+ },
+{
+ "artifactName": "base_template_cloudtech_k8s_charts.env",
+ "artifactType": "HEAT_ENV",
+ "artifactURL": "/unzipped_sdc_csar/base_template_cloudtech_k8s_charts.env",
+ "artifactChecksum": "MDJkYjNmNjEzM2Y1ZDgzNzZiZWUxMjZkMzA3YzkwZDI\u003d",
+ "artifactDescription": "Auto-generated VF Modules information artifact",
+ "artifactTimeout": 120,
+ "artifactUUID": "71607418-af27-4712-8e0c-cfe992b95a38",
+ "artifactVersion": "1"
+ },
+{
+ "artifactName": "vfw.env",
+ "artifactType": "HEAT_ENV",
+ "artifactURL": "/unzipped_sdc_csar/vfw.env",
+ "artifactChecksum": "MDJkYjNmNjEzM2Y1ZDgzNzZiZWUxMjZkMzA3YzkwZDI\u003d",
+ "artifactDescription": "Auto-generated VF Modules information artifact",
+ "artifactTimeout": 120,
+ "artifactUUID": "406fe9df-aa4c-42c1-8f83-c7ac11169fd4",
+ "artifactVersion": "1"
+ },
+{
+ "artifactName": "vfw_cloudtech_k8s_charts.env",
+ "artifactType": "HEAT_ENV",
+ "artifactURL": "/unzipped_sdc_csar/vfw_cloudtech_k8s_charts.env",
+ "artifactChecksum": "MDJkYjNmNjEzM2Y1ZDgzNzZiZWUxMjZkMzA3YzkwZDI\u003d",
+ "artifactDescription": "Auto-generated VF Modules information artifact",
+ "artifactTimeout": 120,
+ "artifactUUID": "33f7aab2-3324-4523-b37a-625b0cf77dfe",
+ "artifactVersion": "1"
+ },
+{
+ "artifactName": "vpkg_cloudtech_k8s_charts.env",
+ "artifactType": "HEAT_ENV",
+ "artifactURL": "/unzipped_sdc_csar/vpkg_cloudtech_k8s_charts.env",
+ "artifactChecksum": "MDJkYjNmNjEzM2Y1ZDgzNzZiZWUxMjZkMzA3YzkwZDI\u003d",
+ "artifactDescription": "Auto-generated VF Modules information artifact",
+ "artifactTimeout": 120,
+ "artifactUUID": "8ab17b5a-3fbd-4142-a75f-c55ffd4c5af5",
+ "artifactVersion": "1"
+ },
+{
+ "artifactName": "vsn.env",
+ "artifactType": "HEAT_ENV",
+ "artifactURL": "/unzipped_sdc_csar/vsn.env",
+ "artifactChecksum": "MDJkYjNmNjEzM2Y1ZDgzNzZiZWUxMjZkMzA3YzkwZDI\u003d",
+ "artifactDescription": "Auto-generated VF Modules information artifact",
+ "artifactTimeout": 120,
+ "artifactUUID": "e17c1e60-f7da-4767-9a0e-02c8ff9c0f2e",
+ "artifactVersion": "1"
+ },
+{
+ "artifactName": "vsn_cloudtech_k8s_charts.env",
+ "artifactType": "HEAT_ENV",
+ "artifactURL": "/unzipped_sdc_csar/vsn_cloudtech_k8s_charts.env",
+ "artifactChecksum": "MDJkYjNmNjEzM2Y1ZDgzNzZiZWUxMjZkMzA3YzkwZDI\u003d",
+ "artifactDescription": "Auto-generated VF Modules information artifact",
+ "artifactTimeout": 120,
+ "artifactUUID": "989dbc01-2fa5-463b-abaa-cf73996ea12b",
+ "artifactVersion": "1"
+ },
+{
+ "artifactName": "base_template_cloudtech_k8s_charts.tgz",
+ "artifactType": "CLOUD_TECHNOLOGY_SPECIFIC_ARTIFACT",
+ "artifactURL": "/unzipped_sdc_csar/base_template_cloudtech_k8s_charts.env",
+ "artifactChecksum": "MDJkYjNmNjEzM2Y1ZDgzNzZiZWUxMjZkMzA3YzkwZDI\u003d",
+ "artifactDescription": "Auto-generated VF Modules information artifact",
+ "artifactTimeout": 120,
+ "artifactUUID": "406fe9df-aa4c-42c1-8f83-c7ac11169fd4",
+ "artifactVersion": "1"
+ },
+{
+ "artifactName": "vfw_cloudtech_k8s_charts.tgz",
+ "artifactType": "CLOUD_TECHNOLOGY_SPECIFIC_ARTIFACT",
+ "artifactURL": "/unzipped_sdc_csar/vfw_cloudtech_k8s_charts.env",
+ "artifactChecksum": "MDJkYjNmNjEzM2Y1ZDgzNzZiZWUxMjZkMzA3YzkwZDI\u003d",
+ "artifactDescription": "Auto-generated VF Modules information artifact",
+ "artifactTimeout": 120,
+ "artifactUUID": "6833f47d-e91b-4887-8b55-f68ef25bccf3",
+ "artifactVersion": "1"
+ },
+{
+ "artifactName": "vpkg_cloudtech_k8s_charts.tgz",
+ "artifactType": "CLOUD_TECHNOLOGY_SPECIFIC_ARTIFACT",
+ "artifactURL": "/unzipped_sdc_csar/vpkg_cloudtech_k8s_charts.env",
+ "artifactChecksum": "MDJkYjNmNjEzM2Y1ZDgzNzZiZWUxMjZkMzA3YzkwZDI\u003d",
+ "artifactDescription": "Auto-generated VF Modules information artifact",
+ "artifactTimeout": 120,
+ "artifactUUID": "406fe9df-aa4c-42c1-8f83-c7ac11169fd4",
+ "artifactVersion": "1"
+ },
+{
+ "artifactName": "vsn_cloudtech_k8s_charts.tgz",
+ "artifactType": "CLOUD_TECHNOLOGY_SPECIFIC_ARTIFACT",
+ "artifactURL": "/unzipped_sdc_csar/vsn_cloudtech_k8s_charts.tgz",
+ "artifactChecksum": "MDJkYjNmNjEzM2Y1ZDgzNzZiZWUxMjZkMzA3YzkwZDI\u003d",
+ "artifactDescription": "Auto-generated VF Modules information artifact",
+ "artifactTimeout": 120,
+ "artifactUUID": "8ab17b5a-3fbd-4142-a75f-c55ffd4c5af5",
+ "artifactVersion": "1"
+ }
+
+,
+{
+ "artifactName": "vsn_cloudtech_k8s_charts.tgz",
+ "artifactType": "CLOUD_TECHNOLOGY_SPECIFIC_ARTIFACT",
+ "artifactURL": "/unzipped_sdc_csar/vsn_cloudtech_k8s_charts.tgz",
+ "artifactChecksum": "MDJkYjNmNjEzM2Y1ZDgzNzZiZWUxMjZkMzA3YzkwZDI\u003d",
+ "artifactDescription": "Auto-generated VF Modules information artifact",
+ "artifactTimeout": 120,
+ "artifactUUID": "aaeee885-5821-4e08-8da6-0bb3b74f24e9",
+ "artifactVersion": "1"
+ },
+{
+ "artifactName": "vsn_cloudtech_k8s_charts.tgz",
+ "artifactType": "CLOUD_TECHNOLOGY_SPECIFIC_ARTIFACT",
+ "artifactURL": "/unzipped_sdc_csar/vsn_cloudtech_k8s_charts.tgz",
+ "artifactChecksum": "MDJkYjNmNjEzM2Y1ZDgzNzZiZWUxMjZkMzA3YzkwZDI\u003d",
+ "artifactDescription": "Auto-generated VF Modules information artifact",
+ "artifactTimeout": 120,
+ "artifactUUID": "b4510b34-e39c-4239-bacc-7dd2f3c2a418",
+ "artifactVersion": "1"
+ }
+
+,
+{
+ "artifactName": "base_template.yaml",
+ "artifactType": "HEAT",
+ "artifactURL": "/unzipped_sdc_csar/base_template.yaml",
+ "artifactChecksum": "MDJkYjNmNjEzM2Y1ZDgzNzZiZWUxMjZkMzA3YzkwZDI\u003d",
+ "artifactDescription": "Auto-generated VF Modules information artifact",
+ "artifactTimeout": 120,
+ "artifactUUID": "33f7aab2-3324-4523-b37a-625b0cf77dfe",
+ "artifactVersion": "1"
+ }
+
+,
+{
+ "artifactName": "vfw.yaml",
+ "artifactType": "HEAT",
+ "artifactURL": "/unzipped_sdc_csar/vfw.yaml",
+ "artifactChecksum": "MDJkYjNmNjEzM2Y1ZDgzNzZiZWUxMjZkMzA3YzkwZDI\u003d",
+ "artifactDescription": "Auto-generated VF Modules information artifact",
+ "artifactTimeout": 120,
+ "artifactUUID": "6833f47d-e91b-4887-8b55-f68ef25bccf3",
+ "artifactVersion": "1"
+ }
+
+,
+{
+ "artifactName": "vpkg.yaml",
+ "artifactType": "HEAT",
+ "artifactURL": "/unzipped_sdc_csar/vpkg.yaml",
+ "artifactChecksum": "MDJkYjNmNjEzM2Y1ZDgzNzZiZWUxMjZkMzA3YzkwZDI\u003d",
+ "artifactDescription": "Auto-generated VF Modules information artifact",
+ "artifactTimeout": 120,
+ "artifactUUID": "42b80d18-69ec-4233-8844-f0df6ebb6e3d",
+ "artifactVersion": "1"
+ }
+,
+{
+ "artifactName": "vsn.yaml",
+ "artifactType": "HEAT",
+ "artifactURL": "/unzipped_sdc_csar/vsn.yaml",
+ "artifactChecksum": "MDJkYjNmNjEzM2Y1ZDgzNzZiZWUxMjZkMzA3YzkwZDI\u003d",
+ "artifactDescription": "Auto-generated VF Modules information artifact",
+ "artifactTimeout": 120,
+ "artifactUUID": "406fe9df-aa4c-42c1-8f83-c7ac11169fd4",
+ "artifactVersion": "1"
+ }
+
+,
+{
+ "artifactName": "vendor-license-model.xml",
+ "artifactType": "VENDOR_LICENSE",
+ "artifactURL": "/unzipped_sdc_csar/vendor-license-model.xml",
+ "artifactChecksum": "MDJkYjNmNjEzM2Y1ZDgzNzZiZWUxMjZkMzA3YzkwZDI\u003d",
+ "artifactDescription": "Auto-generated VF Modules information artifact",
+ "artifactTimeout": 120,
+ "artifactUUID": "6e1dbc99-849e-4af8-bdcb-6c214f939491",
+ "artifactVersion": "1"
+ }
+
+,
+{
+ "artifactName": "vf-license-model.xml",
+ "artifactType": "VF_LICENSE",
+ "artifactURL": "/unzipped_sdc_csar/vf-license-model.xml",
+ "artifactChecksum": "MDJkYjNmNjEzM2Y1ZDgzNzZiZWUxMjZkMzA3YzkwZDI\u003d",
+ "artifactDescription": "Auto-generated VF Modules information artifact",
+ "artifactTimeout": 120,
+ "artifactUUID": "ede4c2de-133f-49e3-9daa-8c56b65b5c6b",
+ "artifactVersion": "1"
+ }
+
+]
+ }
+
+
+ ],
+ "serviceArtifacts": [
+ {
+ "artifactName": "service-VfwK8sDemoCnf-template.yml",
+ "artifactType": "TOSCA_TEMPLATE",
+ "artifactURL": "/unzipped_sdc_csar/service-VfwK8sDemoCnf-template.yml",
+ "artifactChecksum": "NTUzMDU5YzM3MTk4OGNiNjQ2OGRlMWY2YjU3MjE2YjM\u003d",
+ "artifactDescription": "TOSCA representation of the asset",
+ "artifactTimeout": 0,
+ "artifactUUID": "6f2c7614-571c-4482-aa2c-5eac0308aa16",
+ "artifactVersion": "1"
+ },
+ {
+ "artifactName": "service-VfwK8sDemoCnf-csar.csar",
+ "artifactType": "TOSCA_CSAR",
+ "artifactURL": "/unzipped_sdc_csar/service-VfwK8sDemoCnf-csar.csar",
+ "artifactChecksum": "ZTRhOGI0M2UxN2ZhYjQ0ODI5ZDZhZTExZTFkMGU3N2Y\u003d",
+ "artifactDescription": "TOSCA definition package of the asset",
+ "artifactTimeout": 0,
+ "artifactUUID": "6f2c7614-571c-4482-aa2c-5eac0308aa16",
+ "artifactVersion": "1"
+ }
+ ],
+ "workloadContext": "Production"
+}
+
diff --git a/tests/so/sanity-check/macroflow.robot b/tests/so/sanity-check/macroflow.robot
new file mode 100644
index 00000000..92224ea1
--- /dev/null
+++ b/tests/so/sanity-check/macroflow.robot
@@ -0,0 +1,25 @@
+*** Settings ***
+Library Collections
+Library RequestsLibrary
+Library OperatingSystem
+Library json
+
+*** Test Cases ***
+Distribute Service Template
+ Create Session sdc_controller_session http://${REPO_IP}:8085
+ ${data}= Get Binary File ${CURDIR}${/}data${/}serviceBasicVfCnfnotification.json
+ &{headers}= Create Dictionary Authorization=Basic bXNvX2FkbWluOnBhc3N3b3JkMSQ= resource-location=/distribution-test-zip/unzipped/ Content-Type=application/json Accept=application/json
+ ${resp}= Post Request sdc_controller_session /test/treatNotification/v1 data=${data} headers=${headers}
+ Log To Console Received status code: ${resp.status_code}
+ Run Keyword If '${resp.status_code}' == '200' log to console \nexecuted with expected result
+ Should Be Equal As Strings '${resp.status_code}' '200'
+
+
+Macroflow
+ Create Session api_handler_session http://${REPO_IP}:8080
+ ${data}= Get Binary File ${CURDIR}${/}data${/}macroflow.json
+ &{headers}= Create Dictionary Authorization=Basic SW5mcmFQb3J0YWxDbGllbnQ6cGFzc3dvcmQxJA== Content-Type=application/json Accept=application/json
+ ${service_instantiation_request}= Post Request api_handler_session /onap/so/infra/serviceInstantiation/v7/serviceInstances data=${data} headers=${headers}
+ Log To Console Received status code: ${service_instantiation_request.status_code}
+ Run Keyword If '${service_instantiation_request.status_code}' == '202' log to console \nexecuted with expected result
+ Should Be Equal As Strings '${service_instantiation_request.status_code}' '202'