blob: a4ef5163259abb350593a2856741cbaaad1dc341 [file] [log] [blame]
Suchitra.Vemuri455a2ef2016-12-09 15:46:27 -08001*** Settings ***
2Documentation Test suite for Instance creation for multiple subscribers with different "s_tags"
3Suite Setup Read InputFile
4Test Template Verify Instance Functionality
5Library Collections
6Library String
7Library OperatingSystem
8Library XML
9Library RequestsLibrary
10Library ../Framework/utils/utils.py
11Library ../Framework/restApi.py
12
13*** Variables ***
14${USER} admin
15${PASSWORD} admin
16${PATHFILE} ${CURDIR}/data/Subscriber.json
17${PATHFILE2} ${CURDIR}/data/VoltTenant.json
18
19*** Test Cases *** TYPE LISTINDEX
20Test Create Instance-1
21 SUBSCRIBER_CREATE 0
22
23Test Create Subscriber-2
24 SUBSCRIBER_CREATE 1
25
26Test Create Subscriber-3
27 SUBSCRIBER_CREATE 2
28
29Test Create Tenant-1
30 TENANT_CREATE 0
31
32Test Create Tenant-2
33 TENANT_CREATE 1
34
35Test Create Tenant-3
36 TENANT_CREATE 2
37
38Test Instance creation validation-1
39 INSTANCE_VALIDATE 0
40
41Test Instance creation validation-2
42 INSTANCE_VALIDATE 1
43
44Test Instance creation validation-3
45 INSTANCE_VALIDATE 2
46
47*** Keywords ***
48Read InputFile
49 ${subscriberList} = utils.jsonToList ${PATHFILE} SubscriberInfo
50 Set Suite Variable ${slist} ${subscriberList}
51 ${voltList}= utils.jsonToList ${PATHFILE2} voltSubscriberInfo
52 Set Suite Variable ${vlist} ${voltList}
53
54Verify Instance functionality
55 [Arguments] ${type} ${listIndex}
56 Run Keyword If "${type}" == "SUBSCRIBER_CREATE" Test Post Subscriber Create ${listIndex}
57 Run Keyword If "${type}" == "TENANT_CREATE" Test Post volt Tenant Create ${listIndex}
58 Run Keyword If "${type}" == "INSTANCE_VALIDATE" Test Instance Validation ${listIndex}
59
60Test Post Subscriber Create
61 [Arguments] ${listIndex}
62 ${subscriberList} = Get Variable Value ${slist}
63 ${subscriberDict}= utils.listToDict ${subscriberList} ${listIndex}
64 ${api_result}= restApi.ApiPost TENANT_SUBSCRIBER ${subscriberDict}
65 Should Be True ${api_result}
66
67Test Post volt Tenant Create
68 [Arguments] ${listIndex}
69 ${voltTenantList} = Get Variable Value ${vlist}
70 ${voltTenantDict}= utils.listToDict ${voltTenantList} ${listIndex}
71 ${voltDict}= Get From Dictionary ${voltTenantDict} voltTenant
72 ${account_num}= Get From Dictionary ${voltTenantDict} account_num
73 ${get_result}= restApi.ApiGet TENANT_SUBSCRIBER
74 ${subscriberDict}= utils.getDictFromListofDict ${get_result} account_num ${account_num}
75 ${subscriberID}= utils.getFieldValueFromDict ${subscriberDict} id
76 ${updatedVoltDict}= utils.setFieldValueInDict ${voltDict} subscriber ${subscriberID}
77 ${api_result}= restApi.ApiPost TENANT_VOLT ${updatedVoltDict}
78 Should Be True ${api_result}
79 # Verifying Get operation after POST
80 ${getVolt_result}= restApi.ApiGet TENANT_VOLT
81 ${getJsonDict}= utils.getDictFromListOfDict ${getVolt_result} subscriber ${subscriberID}
82 ${test_result}= utils.compare_dict ${voltDict} ${getJsonDict}
83 Should Be True ${test_result}
84
85Test Instance Validation
86 [Arguments] ${listIndex}
87 ${voltTenantList}= Get Variable Value ${vlist}
88 ${voltTenantDict}= utils.listToDict ${voltTenantList} ${listIndex}
89 ${voltDict}= Get From Dictionary ${voltTenantDict} voltTenant
90 ${input_sTag}= Get From Dictionary ${voltDict} s_tag
91 ${get_result}= restApi.ApiGet TENANT_VOLT
92 ${tenantDict}= utils.getDictFromListofDict ${get_result} s_tag ${input_sTag}
93 Log ${tenantDict}
94 ${instance_id_fromvolt}= utils.getFieldValueFromDict ${tenantDict} instance_id
95 ${instance_name}= utils.getFieldValueFromDict ${tenantDict} instance_name
96 ${instance_id_name}= Catenate SEPARATOR=- ${instance_name} ${instance_id_fromvolt}
97 ${get_instanceresult}= restApi.ApiGet CORE_INSTANCES
98 ${instanceDict}= utils.getDictFromListofDict ${get_instanceresult} instance_name ${instance_id_name}
99 ${instance_id_fromCore}= utils.getFieldValueFromDict ${instanceDict} id
100 Should Be Equal As Strings ${instance_id_fromvolt} ${instance_id_fromCore}