blob: 91bbe6e5e037627f1d893469c1906deee9056c8c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
|
*** Settings ***
Library Collections
Library RequestsLibrary
Library OperatingSystem
Library json
Library ArchiveLibrary
*** Variables ***
${NFVO_NS_LCM_BASE_URL}= /so/so-etsi-nfvo-ns-lcm/v1/api/nslcm/v1
${BASIC_AUTH}= Basic c28tZXRzaS1uZnZvLW5zLWxjbTpwYXNzd29yZDEk
*** Test Cases ***
Invoke Create Network Service
Create Session etsi_nfvo_ns_lcm_session http://${REPO_IP}:9095
${data}= Get Binary File ${CURDIR}${/}data${/}createNetworkServiceRequest.json
&{headers}= Create Dictionary Authorization=${BASIC_AUTH} Content-Type=application/json Accept=application/json HTTP_GLOBALCUSTOMERID=DemoCustomer
${create_network_service_request}= POST On Session etsi_nfvo_ns_lcm_session ${NFVO_NS_LCM_BASE_URL}/ns_instances data=${data} headers=${headers}
log to console ${create_network_service_request.content}
${create_network_service_json_response}= Evaluate json.loads(r"""${create_network_service_request.content}""", strict=False) json
${request_Id}= Set Variable ${create_network_service_json_response}[id]
SET GLOBAL VARIABLE ${request_Id}
Should Be Equal As Strings '${create_network_service_request.status_code}' '201'
Invoke Instantiate Network Service
Run Keyword If "${request_Id}"!="${EMPTY}" Log to Console Network Service ID :${request_Id}
... ELSE Fail \nInvalid Network Service ID :${request_Id} received
Create Session etsi_nfvo_ns_lcm_session http://${REPO_IP}:9095
${data}= Get Binary File ${CURDIR}${/}data${/}instantiateNetworkServiceRequest.json
&{headers}= Create Dictionary Authorization=${BASIC_AUTH} Content-Type=application/json Accept=application/json
${instantiate_network_service_request}= POST On Session etsi_nfvo_ns_lcm_session ${NFVO_NS_LCM_BASE_URL}/ns_instances/${request_Id}/instantiate data=${data} headers=${headers}
Run Keyword If '${instantiate_network_service_request.status_code}' == '202' log to console \nexecuted with expected result
... ELSE Fail \nInstantiate Network Service Request Received Response: ${instantiate_network_service_request.status_code}
log to console \n${instantiate_network_service_request.content}
Wait Until Keyword Succeeds 3 min 5 secs Get NS LCM OP OCCs
Invoke Terminate Network Service
Run Keyword If "${actual_request_state}"=="COMPLETED" Log to Console NS LCM OP OCCs State: ${actual_request_state}
... ELSE Fail \nTerminate Network Service Failed to Start. Instantiate Network Service Request State: ${actual_request_state}
Create Session etsi_nfvo_ns_lcm_session http://${REPO_IP}:9095
&{headers}= Create Dictionary Authorization=${BASIC_AUTH} Content-Type=application/json Accept=application/json
${terminate_network_service_request}= POST On Session etsi_nfvo_ns_lcm_session ${NFVO_NS_LCM_BASE_URL}/ns_instances/${request_Id}/terminate headers=${headers}
Run Keyword If '${terminate_network_service_request.status_code}' == '202' log to console \nexecuted with expected result
... ELSE Fail \nTerminate Network Service Request Received Response: ${terminate_network_service_request.status_code}
log to console \n${terminate_network_service_request.content}
Wait Until Keyword Succeeds 3 min 5 secs Get NS LCM OP OCCs
Invoke Delete Network Service
Run Keyword If "${actual_request_state}"=="COMPLETED" Log to Console NS LCM OP OCCs State: ${actual_request_state}
... ELSE Fail \nDelete Network Service Failed to Start. Invalid Previous Request State Received: ${actual_request_state}
Create Session etsi_nfvo_ns_lcm_session http://${REPO_IP}:9095
&{headers}= Create Dictionary Authorization=${BASIC_AUTH} Content-Type=application/json Accept=application/json
${delete_network_service_request}= DELETE On Session etsi_nfvo_ns_lcm_session ${NFVO_NS_LCM_BASE_URL}/ns_instances/${request_Id} headers=${headers}
log to console \n${delete_network_service_request.content}
Should Be Equal As Strings '${delete_network_service_request.status_code}' '204'
*** Keywords ***
Get NS LCM OP OCCs
${ns_lcm_status_request}= GET On Session etsi_nfvo_ns_lcm_session ${NFVO_NS_LCM_BASE_URL}/ns_lcm_op_occs/${request_Id}
log to console \n${ns_lcm_status_request.content}
${ns_lcm_request_json_response}= Evaluate json.loads(r"""${ns_lcm_status_request.content}""", strict=False) json
${actual_request_state}= SET VARIABLE ${ns_lcm_request_json_response}[operationState]
SET GLOBAL VARIABLE ${actual_request_state}
Should Be Equal As Strings ${ns_lcm_status_request.status_code} 200
Should Be Equal As Strings ${actual_request_state} COMPLETED
|