Add vnf pkg subscription csit case 63/86463/5
authorfujinhua <fu.jinhua@zte.com.cn>
Sun, 28 Apr 2019 02:32:40 +0000 (10:32 +0800)
committerfujinhua <fu.jinhua@zte.com.cn>
Sun, 28 Apr 2019 05:41:27 +0000 (13:41 +0800)
Change-Id: I92bbf147728e3b0a318f3dd66f74204d4c8c5050
Issue-ID: INT-1015
Signed-off-by: fujinhua <fu.jinhua@zte.com.cn>
plans/vfc-nfvo-catalog/sanity-check/setup.sh
tests/vfc/nfvo-catalog/jsons/vnf_subscription.json [new file with mode: 0644]
tests/vfc/nfvo-catalog/test.robot

index e622173..07e2b6a 100644 (file)
@@ -64,8 +64,11 @@ for i in {1..10}; do
     sleep $i
 done
 
+docker cp vfc-catalog:/service/vfc/nfvo/catalog/catalog/pub/config/config.py ./
+cat config.py
+
 docker cp vfc-catalog:/service/vfc/nfvo/catalog/logs/runtime_catalog.log ./
 cat runtime_catalog.log
 
 # Pass any variables required by Robot test suites in ROBOT_VARIABLES
-ROBOT_VARIABLES="-v MSB_IP:${MSB_IP} -v CATALOG_IP:${CATALOG_IP} -v MSB_DISCOVERY_IP:${DISCOVERY_IP}"
+ROBOT_VARIABLES="-v MSB_IP:${MSB_IP} -v CATALOG_IP:${CATALOG_IP} -v MSB_DISCOVERY_IP:${DISCOVERY_IP} -v SCRIPTS:${SCRIPTS}"
diff --git a/tests/vfc/nfvo-catalog/jsons/vnf_subscription.json b/tests/vfc/nfvo-catalog/jsons/vnf_subscription.json
new file mode 100644 (file)
index 0000000..e48a92f
--- /dev/null
@@ -0,0 +1,41 @@
+{
+    "filters": {
+        "notificationTypes": [
+            "VnfPackageOnboardingNotification"
+        ],
+        "vnfProductsFromProviders": {
+            "vnfProvider": "string",
+            "vnfProducts": {
+                "vnfProductName": "string",
+                "versions": {
+                    "vnfSoftwareVersion": "string",
+                    "vnfdVersions": [
+                        "string"
+                    ]
+                }
+            }
+        },
+        "vnfdId": [
+            "3fa85f64-5717-4562-b3fc-2c963f66afa6"
+        ],
+        "vnfPkgId": [
+            "3fa85f64-5717-4562-b3fc-2c963f66afa6"
+        ],
+        "operationalState": [
+            "ENABLED"
+        ],
+        "usageState": [
+            "IN_USE"
+        ]
+    },
+    "callbackUri": "http://127.0.0.1:8806/api/catalog/v1/callback_sample",
+    "authentication": {
+        "authType": [
+            "BASIC"
+        ],
+        "paramsBasic": {
+            "userName": "string",
+            "password": "string"
+        }
+    }
+}
index b83bee4..4fb24c8 100644 (file)
@@ -1,8 +1,10 @@
 *** settings ***
+Resource    ../../common.robot
 Library     Collections
 Library     RequestsLibrary
 Library     OperatingSystem
 Library     json
+Library     HttpLibrary.HTTP
 
 *** Variables ***
 @{return_ok_list}=         200  201  202
@@ -10,6 +12,10 @@ ${queryswagger_url}        /api/catalog/v1/swagger.json
 ${queryVNFPackage_url}     /api/catalog/v1/vnfpackages
 ${queryNSPackages_url}     /api/catalog/v1/nspackages
 ${healthcheck_url}         /api/catalog/v1/health_check
+${create_subs_url}         /api/vnfpkgm/v1/subscriptions
+
+#json files
+${vnf_subscription_json}    ${SCRIPTS}/../tests/vfc/nfvo-catalog/jsons/vnf_subscription.json
 
 *** Test Cases ***
 GetVNFPackages
@@ -29,3 +35,17 @@ CatalogHealthCheckTest
     ${response_json}    json.loads    ${resp.content}
     ${health_status}=    Convert To String      ${response_json['status']}
     Should Be Equal    ${health_status}    active
+
+CreateVnfSubscriptionTest
+    [Documentation]    Create Vnf Subscription function test
+    ${json_value}=     json_from_file      ${vnf_subscription_json}
+    ${json_string}=     string_from_json   ${json_value}
+    ${headers}    Create Dictionary    Content-Type=application/json    Accept=application/json
+    Create Session    web_session    http://${CATALOG_IP}:8806    headers=${headers}
+    Set Request Body    ${json_string}
+    ${resp}=    Post Request    web_session     ${create_subs_url}    ${json_string}
+    ${responese_code}=     Convert To String      ${resp.status_code}
+    List Should Contain Value    ${return_ok_list}   ${responese_code}
+    ${response_json}    json.loads    ${resp.content}
+    ${callback_uri}=    Convert To String      ${response_json['callbackUri']}
+    Should Be Equal    ${callback_uri}    http://127.0.0.1:8806/api/catalog/v1/callback_sample