[VFc] - fix CSIT failure for lcm component
[integration/csit.git] / tests / vfc / nfvo-lcm / test.robot
index 83040ad..ed4b6ce 100644 (file)
@@ -5,28 +5,51 @@ Library     RequestsLibrary
 Library     OperatingSystem
 Library     json
 Library     HttpLibrary.HTTP
+Library     ONAPLibrary.Utilities
 
 *** Variables ***
 @{return_ok_list}=   200  201  202  204
 ${queryswagger_url}    /api/nslcm/v1/swagger.json
-${create_ns_url}       /api/nslcm/v1/ns
-${delete_ns_url}       /api/nslcm/v1/ns
-${get_ns_url}          /api/nslcm/v1/ns
+${ns_url}          /api/nslcm/v1/ns
 ${get_subscriptions_url}          /api/nslcm/v1/subscriptions
 ${healthcheck_url}     /api/nslcm/v1/health_check
+${get_job_url}     /api/nslcm/v1/jobs
+${vnfs_url}     /api/nslcm/v1/ns/vnfs
+${terminate_vnfs_url}     /api/nslcm/v1/ns/terminatevnf
+${vls_url}     /api/nslcm/v1/ns/vls
+${sfcs_url}     /api/nslcm/v1/ns/sfcs
+${pnfs_url}     /api/nslcm/v1/pnfs
+
+${ns_instances_url}    /api/nslcm/v1/ns_instances
 
 #json files
 ${create_ns_json}    ${SCRIPTS}/../tests/vfc/nfvo-lcm/jsoninput/create_ns.json
+${heal_ns_json}    ${SCRIPTS}/../tests/vfc/nfvo-lcm/jsoninput/heal_ns.json
+${scale_ns_json}    ${SCRIPTS}/../tests/vfc/nfvo-lcm/jsoninput/scale_ns.json
+${update_ns_json}    ${SCRIPTS}/../tests/vfc/nfvo-lcm/jsoninput/update_ns.json
+${terminate_ns_json}    ${SCRIPTS}/../tests/vfc/nfvo-lcm/jsoninput/terminate_ns.json
+${create_vnf_json}    ${SCRIPTS}/../tests/vfc/nfvo-lcm/jsoninput/create_vnf.json
+${terminate_vnf_json}    ${SCRIPTS}/../tests/vfc/nfvo-lcm/jsoninput/terminate_vnf.json
+${create_vl_json}    ${SCRIPTS}/../tests/vfc/nfvo-lcm/jsoninput/create_vl.json
+${create_subscriptions_json}    ${SCRIPTS}/../tests/vfc/nfvo-lcm/jsoninput/create_subscription.json
+
+${create_ns_instance_json}    ${SCRIPTS}/../tests/vfc/nfvo-lcm/jsoninput/create_ns_instance.json
+${terminate_ns_instance_json}    ${SCRIPTS}/../tests/vfc/nfvo-lcm/jsoninput/terminate_ns_instance.json
+${update_ns_instance_json}    ${SCRIPTS}/../tests/vfc/nfvo-lcm/jsoninput/update_ns_instance.json
 
 #global variables
 ${nsInstId}
+${jobInstId}
+${vnfInstId}
+${vlInstId}
+${nsInstanceId}
 
 *** Test Cases ***
 NslcmSwaggerTest
     [Documentation]    query swagger info of nslcm
     ${headers}    Create Dictionary    Content-Type=application/json    Accept=application/json
     Create Session    web_session    http://${NSLCM_IP}:8403    headers=${headers}
-    ${resp}=  Get Request    web_session    ${queryswagger_url}
+    ${resp}=   GET On Session    web_session    ${queryswagger_url}
     ${responese_code}=     Convert To String      ${resp.status_code}
     List Should Contain Value    ${return_ok_list}   ${responese_code}
     ${response_json}    json.loads    ${resp.content}
@@ -36,8 +59,8 @@ NslcmSwaggerTest
 NslcmSwaggerByMSBTest
     [Documentation]    query swagger info of nslcm by MSB
     ${headers}    Create Dictionary    Content-Type=application/json    Accept=application/json
-    Create Session    web_session    http://${MSB_IAG_IP}:80    headers=${headers}
-    ${resp}=  Get Request    web_session    ${queryswagger_url}
+    Create Session    web_session    http://${NSLCM_IP}:8403    headers=${headers}
+    ${resp}=   GET On Session    web_session    ${queryswagger_url}
     ${responese_code}=     Convert To String      ${resp.status_code}
     List Should Contain Value    ${return_ok_list}   ${responese_code}
     ${response_json}    json.loads    ${resp.content}
@@ -49,28 +72,140 @@ CreateNSTest
     ${json_value}=     json_from_file      ${create_ns_json}
     ${json_string}=     string_from_json   ${json_value}
     ${headers}    Create Dictionary    Content-Type=application/json    Accept=application/json
-    Create Session    web_session    http://${MSB_IAG_IP}:80    headers=${headers}
+    Create Session    web_session    http://${NSLCM_IP}:8403    headers=${headers}
     Set Request Body    ${json_string}
-    ${resp}=    Post Request    web_session     ${create_ns_url}    ${json_string}
+    ${resp}=    Post Request    web_session     ${ns_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}
     ${nsInstId}=    Convert To String      ${response_json['nsInstanceId']}
     Set Global Variable     ${nsInstId}
 
-DeleteNS Test
+CreateVnfTest
+    [Documentation]    Create vnf function test
+    ${json_value}=     json_from_file      ${create_vnf_json}
+    Set To Dictionary    ${json_value}    nsInstanceId=${nsInstId}
+    ${json_string}=     string_from_json   ${json_value}
+    ${headers}    Create Dictionary    Content-Type=application/json    Accept=application/json
+    Create Session    web_session    http://${NSLCM_IP}:8403    headers=${headers}
+    Set Request Body    ${json_string}
+    ${resp}=    Post Request    web_session     ${vnfs_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}
+    ${vnfInstId}=    Convert To String      ${response_json['vnfInstId']}
+    Set Global Variable     ${vnfInstId}
+
+QueryVnfTest
+    [Documentation]    Query vnf function test
+    ${headers}    Create Dictionary    Content-Type=application/json    Accept=application/json
+    Create Session    web_session    http://${NSLCM_IP}:8403    headers=${headers}
+    ${resp}=   GET On Session    web_session    ${vnfs_url}/${vnfInstId}
+    ${responese_code}=     Convert To String      ${resp.status_code}
+    List Should Contain Value    ${return_ok_list}   ${responese_code}
+
+TerminateVnfTest
+    [Documentation]    Terminate vnf function test
+    ${json_value}=     json_from_file      ${terminate_vnf_json}
+    ${json_string}=     string_from_json   ${json_value}
+    ${headers}    Create Dictionary    Content-Type=application/json    Accept=application/json
+    Create Session    web_session    http://${NSLCM_IP}:8403    headers=${headers}
+    Set Request Body    ${json_string}
+    ${resp}=    Post Request    web_session     ${terminate_vnfs_url}/${vnfInstId}    ${json_string}
+    ${responese_code}=     Convert To String      ${resp.status_code}
+    List Should Contain Value    ${return_ok_list}   ${responese_code}
+
+CreateVlTest
+    [Documentation]    Create vl function test
+    ${json_value}=     json_from_file      ${create_vl_json}
+    Set To Dictionary    ${json_value}    nsInstanceId=${nsInstId}
+    ${json_string}=     string_from_json   ${json_value}
+    ${headers}    Create Dictionary    Content-Type=application/json    Accept=application/json
+    Create Session    web_session    http://${NSLCM_IP}:8403    headers=${headers}
+    Set Request Body    ${json_string}
+    ${resp}=    Post Request    web_session     ${vls_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}
+    ${vlInstId}=    Convert To String      ${response_json['vlId']}
+    Set Global Variable     ${vlInstId}
+
+DeleteVlTest
+    [Documentation]    Delete vl function test
+    ${headers}    Create Dictionary    Content-Type=application/json    Accept=application/json
+    Create Session    web_session    http://${NSLCM_IP}:8403    headers=${headers}
+    ${resp}=    Delete Request    web_session     ${vls_url}/${vlInstId}
+    ${responese_code}=     Convert To String      ${resp.status_code}
+    List Should Contain Value    ${return_ok_list}   ${responese_code}
+
+ScaleNSTest
+    [Documentation]    Scale Ns function test
+    ${json_value}=     json_from_file      ${scale_ns_json}
+    ${json_string}=     string_from_json   ${json_value}
+    ${headers}    Create Dictionary    Content-Type=application/json    Accept=application/json
+    Create Session    web_session    http://${NSLCM_IP}:8403    headers=${headers}
+    Set Request Body    ${json_string}
+    ${resp}=    Post Request    web_session     ${ns_url}/${nsInstId}/scale    ${json_string}
+    ${responese_code}=     Convert To String      ${resp.status_code}
+    List Should Contain Value    ${return_ok_list}   ${responese_code}
+
+HealNSTest
+    [Documentation]    Heal Ns function test
+    ${json_value}=     json_from_file      ${heal_ns_json}
+    ${json_string}=     string_from_json   ${json_value}
+    ${headers}    Create Dictionary    Content-Type=application/json    Accept=application/json
+    Create Session    web_session    http://${NSLCM_IP}:8403    headers=${headers}
+    Set Request Body    ${json_string}
+    ${resp}=    Post Request    web_session     ${ns_url}/${nsInstId}/heal    ${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}
+    ${jobInstId}=    Convert To String      ${response_json['jobId']}
+    Set Global Variable     ${jobInstId}
+
+GetJobTest
+    [Documentation]    Query Ns Job function test
+    ${headers}    Create Dictionary    Content-Type=application/json    Accept=application/json
+    Create Session    web_session    http://${NSLCM_IP}:8403    headers=${headers}
+    ${resp}=   GET On Session    web_session    ${get_job_url}/${jobInstId}
+    ${responese_code}=     Convert To String      ${resp.status_code}
+    List Should Contain Value    ${return_ok_list}   ${responese_code}
+
+UpdateNSTest
+    [Documentation]    Scale Ns function test
+    ${json_value}=     json_from_file      ${update_ns_json}
+    ${json_string}=     string_from_json   ${json_value}
+    ${headers}    Create Dictionary    Content-Type=application/json    Accept=application/json
+    Create Session    web_session    http://${NSLCM_IP}:8403    headers=${headers}
+    Set Request Body    ${json_string}
+    ${resp}=    Post Request    web_session     ${ns_url}/${nsInstId}/update    ${json_string}
+    ${responese_code}=     Convert To String      ${resp.status_code}
+    List Should Contain Value    ${return_ok_list}   ${responese_code}
+
+TerminateNSTest
+    [Documentation]    Terminate Ns function test
+    ${json_value}=     json_from_file      ${terminate_ns_json}
+    ${json_string}=     string_from_json   ${json_value}
+    ${headers}    Create Dictionary    Content-Type=application/json    Accept=application/json
+    Create Session    web_session    http://${NSLCM_IP}:8403    headers=${headers}
+    Set Request Body    ${json_string}
+    ${resp}=    Post Request    web_session     ${ns_url}/${nsInstId}/terminate    ${json_string}
+    ${responese_code}=     Convert To String      ${resp.status_code}
+    List Should Contain Value    ${return_ok_list}   ${responese_code}
+
+DeleteNSTest
     [Documentation]    Delete NS function test
     ${headers}    Create Dictionary    Content-Type=application/json    Accept=application/json
-    Create Session    web_session    http://${MSB_IAG_IP}:80    headers=${headers}
-    ${resp}=    Delete Request    web_session     ${delete_ns_url}/${nsInstId}
+    Create Session    web_session    http://${NSLCM_IP}:8403    headers=${headers}
+    ${resp}=    Delete Request    web_session     ${ns_url}/${nsInstId}
     ${responese_code}=     Convert To String      ${resp.status_code}
     List Should Contain Value    ${return_ok_list}   ${responese_code}
 
 LcmHealthCheckTest
     [Documentation]    check health for nslcm by MSB
     ${headers}    Create Dictionary    Content-Type=application/json    Accept=application/json
-    Create Session    web_session    http://${MSB_IAG_IP}:80    headers=${headers}
-    ${resp}=  Get Request    web_session    ${healthcheck_url}
+    Create Session    web_session    http://${NSLCM_IP}:8403    headers=${headers}
+    ${resp}=   GET On Session    web_session    ${healthcheck_url}
     ${responese_code}=     Convert To String      ${resp.status_code}
     List Should Contain Value    ${return_ok_list}   ${responese_code}
     ${response_json}    json.loads    ${resp.content}
@@ -80,15 +215,79 @@ LcmHealthCheckTest
 LcmGetNsTest
     [Documentation]    get ns instances for nslcm by MSB
     ${headers}    Create Dictionary    Content-Type=application/json    Accept=application/json
-    Create Session    web_session    http://${MSB_IAG_IP}:80    headers=${headers}
-    ${resp}=  Get Request    web_session    ${get_ns_url}
+    Create Session    web_session    http://${NSLCM_IP}:8403    headers=${headers}
+    ${resp}=   GET On Session    web_session    ${ns_url}
+    ${responese_code}=     Convert To String      ${resp.status_code}
+    List Should Contain Value    ${return_ok_list}   ${responese_code}
+
+QueryAllPnfsTest
+    [Documentation]    Query all pnfs function test
+    ${headers}    Create Dictionary    Content-Type=application/json    Accept=application/json
+    Create Session    web_session    http://${NSLCM_IP}:8403    headers=${headers}
+    ${resp}=   GET On Session    web_session    ${pnfs_url}
+    ${responese_code}=     Convert To String      ${resp.status_code}
+    List Should Contain Value    ${return_ok_list}   ${responese_code}
+
+CreateNSInstanceTest
+    [Documentation]    Create NS Instance function test
+    ${json_value}=     json_from_file      ${create_ns_instance_json}
+    ${json_string}=     string_from_json   ${json_value}
+    ${headers}    Create Dictionary    Content-Type=application/json    Accept=application/json    globalcustomerid=global-customer-id-test1    servicetype=service-type-test1
+    Create Session    web_session    http://${NSLCM_IP}:8403    headers=${headers}
+    Set Request Body    ${json_string}
+    ${resp}=    Post Request    web_session     ${ns_instances_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}
+    ${nsInstanceId}=    Convert To String      ${response_json['nsInstanceId']}
+    Set Global Variable     ${nsInstanceId}
+
+QueryNSInstancesTest
+    [Documentation]    Query Ns Instances function test
+    ${headers}    Create Dictionary    Content-Type=application/json    Accept=application/json
+    Create Session    web_session    http://${NSLCM_IP}:8403    headers=${headers}
+    ${resp}=   GET On Session    web_session    ${ns_instances_url}
+    ${responese_code}=     Convert To String      ${resp.status_code}
+    List Should Contain Value    ${return_ok_list}   ${responese_code}
+
+UpdateNSInstanceTest
+    [Documentation]    Scale Ns Instance function test
+    ${json_value}=     json_from_file      ${update_ns_instance_json}
+    ${json_string}=     string_from_json   ${json_value}
+    Log    ${json_string}
+    ${headers}    Create Dictionary    Content-Type=application/json    Accept=application/json
+    Create Session    web_session    http://${NSLCM_IP}:8403    headers=${headers}
+    Set Request Body    ${json_string}
+    ${resp}=    Post Request    web_session     ${ns_instances_url}/${nsInstId}/update    ${json_string}
+    ${responese_code}=     Convert To String      ${resp.status_code}
+    List Should Contain Value    ${return_ok_list}   ${responese_code}
+
+TerminateNSInstanceTest
+    [Documentation]    Terminate Ns Instance function test
+    ${json_value}=     json_from_file      ${terminate_ns_instance_json}
+    ${json_string}=     string_from_json   ${json_value}
+    ${headers}    Create Dictionary    Content-Type=application/json    Accept=application/json
+    Create Session    web_session    http://${NSLCM_IP}:8403    headers=${headers}
+    Set Request Body    ${json_string}
+    ${resp}=    Post Request    web_session     ${ns_instances_url}/${nsInstanceId}/terminate    ${json_string}
+    ${responese_code}=     Convert To String      ${resp.status_code}
+    List Should Contain Value    ${return_ok_list}   ${responese_code}
+
+LcmCreateSubscriptionsTest
+    [Documentation]    Postdeal Ns function test
+    ${json_value}=     json_from_file      ${create_subscriptions_json}
+    ${json_string}=     string_from_json   ${json_value}
+    ${headers}    Create Dictionary    Content-Type=application/json    Accept=application/json
+    Create Session    web_session    http://${NSLCM_IP}:8403    headers=${headers}
+    Set Request Body    ${json_string}
+    ${resp}=    Post Request    web_session     ${get_subscriptions_url}    ${json_string}
     ${responese_code}=     Convert To String      ${resp.status_code}
     List Should Contain Value    ${return_ok_list}   ${responese_code}
 
 LcmGetSubscriptionsTest
     [Documentation]    get subscriptions for nslcm by MSB
     ${headers}    Create Dictionary    Content-Type=application/json    Accept=application/json
-    Create Session    web_session    http://${MSB_IAG_IP}:80    headers=${headers}
-    ${resp}=  Get Request    web_session    ${get_subscriptions_url}
+    Create Session    web_session    http://${NSLCM_IP}:8403    headers=${headers}
+    ${resp}=   GET On Session    web_session    ${get_subscriptions_url}
     ${responese_code}=     Convert To String      ${resp.status_code}
-    List Should Contain Value    ${return_ok_list}   ${responese_code}
+    List Should Contain Value    ${return_ok_list}   ${responese_code}
\ No newline at end of file