Updated robot configs to 1.1 55/8455/5
authorAhmed Alabulrahman <ahmed.alabdulrahman@amdocs.com>
Wed, 23 Aug 2017 17:33:10 +0000 (13:33 -0400)
committerAhmed Alabulrahman <ahmed.alabdulrahman@amdocs.com>
Thu, 24 Aug 2017 15:36:28 +0000 (11:36 -0400)
Changed robot configs to 1.1 and updated necessary variables

Issue-ID: OOM-169

Change-Id: Ie747105b291b88d1d6d54f6e717dceb6310bf438
Signed-off-by: Ahmed Alabulrahman <ahmed.alabdulrahman@amdocs.com>
kubernetes/config/docker/init/src/config/robot/eteshare/config/integration_robot_properties.py
kubernetes/config/docker/init/src/config/robot/eteshare/config/vm_properties.py
kubernetes/config/docker/init/src/config/robot/robot/resources/asdc_interface.robot
kubernetes/config/docker/init/src/config/robot/robot/resources/policy_interface.robot
kubernetes/config/docker/init/src/config/robot/robot/resources/sdngc_interface.robot

index 6b5c336..d0e0919 100755 (executable)
@@ -3,65 +3,73 @@ GLOBAL_AAF_SERVER = "http://10.0.12.1:8101"
 GLOBAL_AAF_USERNAME = "dgl@openecomp.org"
 GLOBAL_AAF_PASSWORD = "ecomp_admin"
 # aai info - everything is from the private oam network (also called ecomp private network)
-GLOBAL_AAI_SERVER_URL = "https://aai-service.onap-aai:8443"
+GLOBAL_AAI_SERVER_PROTOCOL = "https"
+GLOBAL_AAI_SERVER_PORT = "8443"
 GLOBAL_AAI_USERNAME = "AAI"
 GLOBAL_AAI_PASSWORD = "AAI"
 # appc info - everything is from the private oam network (also called ecomp private network)
-GLOBAL_APPC_SERVER = "http://sdnhost.onap-appc:8282"
+GLOBAL_APPC_SERVER_PROTOCOL = "http"
+GLOBAL_APPC_SERVER_PORT = "8282"
+GLOBAL_APPC_SERVER = "http://10.0.2.1:"
 GLOBAL_APPC_USERNAME = "admin"
 GLOBAL_APPC_PASSWORD = "Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U"
 # sdc info - everything is from the private oam network (also called ecomp private network)
-GLOBAL_ASDC_FE_SERVER = "http://sdc-fe.onap-sdc"
-GLOBAL_ASDC_BE_SERVER = "http://sdc-be.onap-sdc"
+GLOBAL_ASDC_SERVER_PROTOCOL = "http"
 GLOBAL_ASDC_FE_PORT = "8181"
 GLOBAL_ASDC_BE_PORT = "8080"
 GLOBAL_ASDC_BE_USERNAME = "beep"
 GLOBAL_ASDC_BE_PASSWORD = "boop"
 # dcae info - everything is from the private oam network (also called ecomp private network)
-GLOBAL_DCAE_SERVER = "http://dcae-controller.onap-dcae:9998"
+GLOBAL_DCAE_SERVER_PROTOCOL = "http"
+GLOBAL_DCAE_SERVER_PORT = "9998"
 GLOBAL_DCAE_USERNAME = "console"
 GLOBAL_DCAE_PASSWORD = "ZjJkYjllMjljMTI2M2Iz"
 # message router info - everything is from the private oam network (also called ecomp private network)
-GLOBAL_MR_SERVER = "http://dmaap.onap-message-router:3904"
+GLOBAL_MR_SERVER_PROTOCOL = "http"
+GLOBAL_MR_SERVER_PORT = "3904"
 # mso info - everything is from the private oam network (also called ecomp private network)
-GLOBAL_MSO_SERVER = "http://mso.onap-mso:8080"
+GLOBAL_MSO_SERVER_PROTOCOL = "http"
+GLOBAL_MSO_SERVER_PORT = "8080"
 GLOBAL_MSO_USERNAME = "InfraPortalClient"
 GLOBAL_MSO_PASSWORD = "password1$"
 # openstack info - info to select right info in environment
-GLOBAL_OPENSTACK_KEYSTONE_SERVER = "http://OPENSTACK_KEYSTONE_IP_HERE:5000"
+GLOBAL_OPENSTACK_TENANT_NAME = ""
 # packet generate vnf info - everything is from the private oam network (also called ecomp private network)
 GLOBAL_PACKET_GENERATOR_PORT = "8183"
 GLOBAL_PACKET_GENERATOR_USERNAME = "admin"
 GLOBAL_PACKET_GENERATOR_PASSWORD = "admin"
 GLOBAL_PGN_PORT = "2831"
 # policy info - everything is from the private oam network (also called ecomp private network)
-GLOBAL_POLICY_SERVER_URL = "http://pypdp.onap-policy:8480"
-GLOBAL_POLICY_AUTH = "dGVzdHJlc3Q6M2MwbXBVI2gwMUBOMWMz"
+GLOBAL_POLICY_SERVER_PROTOCOL = "http"
+GLOBAL_POLICY_SERVER_PORT = "8081"
+GLOBAL_POLICY_HEALTHCHECK_PORT = "6969"
+GLOBAL_POLICY_AUTH = "dGVzdHBkcDphbHBoYTEyMw=="
 GLOBAL_POLICY_CLIENTAUTH = "cHl0aG9uOnRlc3Q="
-GLOBAL_POLICY_HEALTHCHECK_URL = "http://drools.onap-policy:6969"
 GLOBAL_POLICY_USERNAME = "healthcheck"
 GLOBAL_POLICY_PASSWORD = "zb!XztG34"
 # portal info - everything is from the private oam network (also called ecomp private network)
-GLOBAL_PORTAL_SERVER = "http://portalapps.onap-portal:8989"
+GLOBAL_PORTAL_SERVER_PROTOCOL = "http"
+GLOBAL_PORTAL_SERVER_PORT = "8989"
 GLOBAL_PORTAL_USERNAME = "demo"
 GLOBAL_PORTAL_PASSWORD = "Kp8bJ4SXszM0WXlhak3eHlcse"
 # sdngc info - everything is from the private oam network (also called ecomp private network)
-GLOBAL_SDNGC_SERVER = "http://sdnhost.onap-sdnc"
-GLOBAL_SDNGC_PORTAL = "http://sdnc-portal.onap-sdnc"
+GLOBAL_SDNGC_SERVER_PROTOCOL = "http"
 GLOBAL_SDNGC_REST_PORT = "8282"
 GLOBAL_SDNGC_ADMIN_PORT = "8843"
 GLOBAL_SDNGC_USERNAME = "admin"
 GLOBAL_SDNGC_PASSWORD = "Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U"
 # vid info - everything is from the private oam network (also called ecomp private network)
+GLOBAL_VID_SERVER_PROTOCOL = "http"
+GLOBAL_VID_SERVER_PORT = "8080"
 GLOBAL_VID_USERNAME = "demo"
 GLOBAL_VID_PASSWORD = "Kp8bJ4SXszM0WX"
 GLOBAL_VID_HEALTH_USERNAME = "Default"
 GLOBAL_VID_HEALTH_PASSWORD = "AppPassword!1"
-GLOBAL_VID_SERVER = "http://vid-server.onap-vid:8080"
 #global selenium info
 GLOBAL_PROXY_WARNING_TITLE=""
 GLOBAL_PROXY_WARNING_CONTINUE_XPATH=""
 # settings for vm to attach vvg too
-GLOBAL_VVGSERVER_IMAGE = "UBUNTU_14_IMAGE_NAME_HERE"
-GLOBAL_VVGSERVER_FLAVOR = "OPENSTACK_FLAVOUR_NAME_HERE"
+GLOBAL_VVGSERVER_IMAGE = "Ubuntu 14.04 LTS (Trusty Tahr) (PVHVM)"
+GLOBAL_VVGSERVER_FLAVOR = "4 GB General Purpose v1"
 # dns info
+GLOBAL_DNS_TRAFFIC_DURATION = "600"
\ No newline at end of file
index 88f1020..77d1f96 100755 (executable)
@@ -1,17 +1,31 @@
 # File generated from /opt/config
 #
-GLOBAL_VM_PROPERTIES = {
- "artifacts_version" : "1.0.0",
- "cloud_env" : "openstack",
- "dns_ip_addr" : "10.43.0.10",
- "docker_version" : "1.0-STAGING-latest",
- "gerrit_branch" : "release-1.0.0",
- "network" : "onap_oam",
- "nexus_docker_repo" : "nexus3.onap.org:10001",
- "nexus_password" : "docker",
- "nexus_repo" : "https://nexus.onap.org/content/sites/raw",
- "nexus_username" : "docker",
- "openstack_password" : "dev",
- "openstack_username" : "dev",
- "region" : "RegionOne"
- }
+GLOBAL_INJECTED_AAI1_IP_ADDR = "aai-service.onap-aai"
+#GLOBAL_INJECTED_AAI2_IP_ADDR = "10.0.1.2"
+GLOBAL_INJECTED_APPC_IP_ADDR = "10.0.2.1"
+GLOBAL_INJECTED_ARTIFACTS_VERSION = "1.1.0-SNAPSHOT"
+GLOBAL_INJECTED_CLOUD_ENV = "openstack"
+GLOBAL_INJECTED_DCAE_IP_ADDR = "dcae-controller.onap-dcae"
+GLOBAL_INJECTED_DNS_IP_ADDR = "10.0.100.1"
+GLOBAL_INJECTED_DOCKER_VERSION = "1.1-STAGING-latest"
+GLOBAL_INJECTED_GERRIT_BRANCH = "master"
+GLOBAL_INJECTED_KEYSTONE = "http://10.100.100.10:5000"
+GLOBAL_INJECTED_MR_IP_ADDR = "dmaap.onap-message-router"
+GLOBAL_INJECTED_MSO_IP_ADDR = "mso.onap-mso"
+GLOBAL_INJECTED_NETWORK = "oam_ecomp_1b5B"
+GLOBAL_INJECTED_NEXUS_DOCKER_REPO = "nexus3.onap.org:10001"
+GLOBAL_INJECTED_NEXUS_PASSWORD = "docker"
+GLOBAL_INJECTED_NEXUS_REPO = "https://nexus.onap.org/content/sites/raw"
+GLOBAL_INJECTED_NEXUS_USERNAME = "docker"
+GLOBAL_INJECTED_OPENSTACK_PASSWORD = "dev"
+GLOBAL_INJECTED_OPENSTACK_USERNAME = "dev"
+GLOBAL_INJECTED_POLICY_IP_ADDR = "pypdp.onap-policy"
+GLOBAL_INJECTED_POLICY_HEALTHCHECK_IP_ADDR = "drools.onap-policy"
+GLOBAL_INJECTED_PORTAL_IP_ADDR = "portalapps.onap-portal"
+GLOBAL_INJECTED_REGION = "RegionOne"
+GLOBAL_INJECTED_SDC_FE_IP_ADDR = "sdc-fe.onap-sdc"
+GLOBAL_INJECTED_SDC_BE_IP_ADDR = "sdc-be.onap-sdc"
+GLOBAL_INJECTED_SDNC_IP_ADDR = "sdnhost.onap-sdnc"
+GLOBAL_INJECTED_SDNC_PORTAL_IP_ADDR = "sdnc-portal.onap-sdnc"
+GLOBAL_INJECTED_VID_IP_ADDR = "vid-server.onap-vid"
+
index 36a1881..72407de 100644 (file)
@@ -22,7 +22,7 @@ ${ASDC_VENDOR_ENTITLEMENT_POOL_PATH}    /entitlement-pools
 ${ASDC_VENDOR_FEATURE_GROUP_PATH}    /feature-groups
 ${ASDC_VENDOR_LICENSE_AGREEMENT_PATH}    /license-agreements
 ${ASDC_VENDOR_ACTIONS_PATH}    /actions
-${ASDC_VENDOR_SOFTWARE_UPLOAD_PATH}    /upload
+${ASDC_VENDOR_SOFTWARE_UPLOAD_PATH}    /orchestration-template-candidate
 ${ASDC_CATALOG_RESOURCES_PATH}    /sdc2/rest/v1/catalog/resources
 ${ASDC_CATALOG_SERVICES_PATH}    /sdc2/rest/v1/catalog/services
 ${ASDC_CATALOG_INACTIVE_RESOURCES_PATH}    /sdc2/rest/v1/inactiveComponents/resource
@@ -44,6 +44,9 @@ ${ASDC_CATALOG_RESOURCE_TEMPLATE}    robot/assets/templates/asdc/catalog_resourc
 ${ASDC_USER_REMARKS_TEMPLATE}    robot/assets/templates/asdc/user_remarks.template
 ${ASDC_CATALOG_SERVICE_TEMPLATE}    robot/assets/templates/asdc/catalog_service.template
 ${ASDC_RESOURCE_INSTANCE_TEMPLATE}    robot/assets/templates/asdc/resource_instance.template
+${ASDC_FE_ENDPOINT}     ${GLOBAL_ASDC_SERVER_PROTOCOL}://${GLOBAL_INJECTED_SDC_FE_IP_ADDR}:${GLOBAL_ASDC_FE_PORT}
+${ASDC_BE_ENDPOINT}     ${GLOBAL_ASDC_SERVER_PROTOCOL}://${GLOBAL_INJECTED_SDC_BE_IP_ADDR}:${GLOBAL_ASDC_BE_PORT}
+
 *** Keywords ***
 Distribute Model From ASDC
     [Documentation]    goes end to end creating all the asdc objects based ona  model and distributing it to the systems. it then returns the service name, vf name and vf module name
@@ -77,13 +80,14 @@ Setup ASDC Catalog Resource
     ${license_agreement_id}=    Add ASDC License Agreement    ${license_model_id}    ${feature_group_id}
     Checkin ASDC License Model    ${license_model_id}
     Submit ASDC License Model    ${license_model_id}
-    ${license_model_resp}=    Get ASDC License Model    ${license_model_id}
+    ${license_model_resp}=    Get ASDC License Model    ${license_model_id}   1.0
     ${software_product_id}=    Add ASDC Software Product    ${license_agreement_id}    ${feature_group_id}    ${license_model_resp['vendorName']}    ${license_model_id}
     Upload ASDC Heat Package    ${software_product_id}    ${model_zip_path}
+    Validate ASDC Software Product    ${software_product_id}
     Checkin ASDC Software Product    ${software_product_id}
     Submit ASDC Software Product    ${software_product_id}
     Package ASDC Software Product    ${software_product_id}
-    ${software_product_resp}=    Get ASDC Software Product    ${software_product_id}
+    ${software_product_resp}=    Get ASDC Software Product    ${software_product_id}   1.0
     ${catalog_resource_id}=    Add ASDC Catalog Resource     ${license_agreement_id}    ${software_product_resp['name']}    ${license_model_resp['vendorName']}    ${software_product_id}
     Checkin ASDC Catalog Resource    ${catalog_resource_id}
     Request Certify ASDC Catalog Resource    ${catalog_resource_id}
@@ -102,57 +106,68 @@ Add ASDC License Model
     [Return]    ${resp.json()['value']}
 Get ASDC License Model
     [Documentation]    gets an asdc license model by its id
-    [Arguments]    ${id}
-    ${resp}=    Run ASDC Get Request    ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${id}
+    [Arguments]    ${id}   ${version_id}=0.1
+    ${resp}=    Run ASDC Get Request    ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${id}/versions/${version_id}
+    [Return]    ${resp.json()}
+Get ASDC License Models
+    [Documentation]    gets an asdc license model by its id
+    ${resp}=    Run ASDC Get Request    ${ASDC_VENDOR_LICENSE_MODEL_PATH}
     [Return]    ${resp.json()}
 Checkin ASDC License Model
     [Documentation]    checksin an asdc license model by its id
-    [Arguments]    ${id}
+    [Arguments]    ${id}   ${version_id}=0.1
     ${map}=    Create Dictionary    action=Checkin
     ${data}=   Fill JSON Template File    ${ASDC_ACTION_TEMPLATE}    ${map}
-    ${resp}=    Run ASDC Put Request    ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${id}${ASDC_VENDOR_ACTIONS_PATH}    ${data}
+    ${resp}=    Run ASDC Put Request    ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${id}/versions/${version_id}${ASDC_VENDOR_ACTIONS_PATH}    ${data}
     Should Be Equal As Strings         ${resp.status_code}     200
     [Return]    ${resp.json()}
 Submit ASDC License Model
     [Documentation]    submits an asdc license model by its id
-    [Arguments]    ${id}
+    [Arguments]    ${id}   ${version_id}=0.1
     ${map}=    Create Dictionary    action=Submit
     ${data}=   Fill JSON Template File    ${ASDC_ACTION_TEMPLATE}    ${map}
-    ${resp}=    Run ASDC Put Request    ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${id}${ASDC_VENDOR_ACTIONS_PATH}    ${data}
+    ${resp}=    Run ASDC Put Request    ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${id}/versions/${version_id}${ASDC_VENDOR_ACTIONS_PATH}    ${data}
     Should Be Equal As Strings         ${resp.status_code}     200
     [Return]    ${resp.json()}
 Checkin ASDC Software Product
     [Documentation]    checksin an asdc Software Product by its id
-    [Arguments]    ${id}
+    [Arguments]    ${id}   ${version_id}=0.1
     ${map}=    Create Dictionary    action=Checkin
     ${data}=   Fill JSON Template File    ${ASDC_ACTION_TEMPLATE}    ${map}
-    ${resp}=    Run ASDC Put Request    ${ASDC_VENDOR_SOFTWARE_PRODUCT_PATH}/${id}${ASDC_VENDOR_ACTIONS_PATH}    ${data}
+    ${resp}=    Run ASDC Put Request    ${ASDC_VENDOR_SOFTWARE_PRODUCT_PATH}/${id}/versions/${version_id}${ASDC_VENDOR_ACTIONS_PATH}    ${data}
+    Should Be Equal As Strings         ${resp.status_code}     200
+    [Return]    ${resp.json()}
+Validate ASDC Software Product
+    [Documentation]    checksin an asdc Software Product by its id
+    [Arguments]    ${id}   ${version_id}=0.1
+    ${data}=   Catenate
+    ${resp}=    Run ASDC Put Request    ${ASDC_VENDOR_SOFTWARE_PRODUCT_PATH}/${id}/versions/${version_id}/orchestration-template-candidate/process    ${data}
     Should Be Equal As Strings         ${resp.status_code}     200
     [Return]    ${resp.json()}
 Submit ASDC Software Product
     [Documentation]    submits an asdc Software Product by its id
-    [Arguments]    ${id}
+    [Arguments]    ${id}   ${version_id}=0.1
     ${map}=    Create Dictionary    action=Submit
     ${data}=   Fill JSON Template File    ${ASDC_ACTION_TEMPLATE}    ${map}
-    ${resp}=    Run ASDC Put Request    ${ASDC_VENDOR_SOFTWARE_PRODUCT_PATH}/${id}${ASDC_VENDOR_ACTIONS_PATH}    ${data}
+    ${resp}=    Run ASDC Put Request    ${ASDC_VENDOR_SOFTWARE_PRODUCT_PATH}/${id}/versions/${version_id}${ASDC_VENDOR_ACTIONS_PATH}    ${data}
     Should Be Equal As Strings         ${resp.status_code}     200
     [Return]    ${resp.json()}
 Package ASDC Software Product
     [Documentation]    creates_package on an asdc Software Product by its id
-    [Arguments]    ${id}
+    [Arguments]    ${id}   ${version_id}=0.1
     ${map}=    Create Dictionary    action=Create_Package
     ${data}=   Fill JSON Template File    ${ASDC_ACTION_TEMPLATE}    ${map}
-    ${resp}=    Run ASDC Put Request    ${ASDC_VENDOR_SOFTWARE_PRODUCT_PATH}/${id}${ASDC_VENDOR_ACTIONS_PATH}    ${data}
+    ${resp}=    Run ASDC Put Request    ${ASDC_VENDOR_SOFTWARE_PRODUCT_PATH}/${id}/versions/${version_id}${ASDC_VENDOR_ACTIONS_PATH}    ${data}
     Should Be Equal As Strings         ${resp.status_code}     200
     [Return]    ${resp.json()}
 Add ASDC Entitlement Pool
     [Documentation]    Creates an asdc Entitlement Pool and returns its id
-    [Arguments]    ${license_model_id}
+    [Arguments]    ${license_model_id}   ${version_id}=0.1
     ${uuid}=    Generate UUID
     ${shortened_uuid}=     Evaluate    str("${uuid}")[:23]
     ${map}=    Create Dictionary    entitlement_pool_name=${shortened_uuid}
     ${data}=   Fill JSON Template File    ${ASDC_ENTITLEMENT_POOL_TEMPLATE}    ${map}
-    ${resp}=    Run ASDC Post Request    ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${license_model_id}${ASDC_VENDOR_ENTITLEMENT_POOL_PATH}     ${data}
+    ${resp}=    Run ASDC Post Request    ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${license_model_id}/versions/${version_id}${ASDC_VENDOR_ENTITLEMENT_POOL_PATH}     ${data}
     Should Be Equal As Strings         ${resp.status_code}     200
     [Return]    ${resp.json()['value']}
 Get ASDC Entitlement Pool
@@ -162,27 +177,27 @@ Get ASDC Entitlement Pool
     [Return]    ${resp.json()}
 Add ASDC License Group
     [Documentation]    Creates an asdc license group and returns its id
-    [Arguments]    ${license_model_id}
+    [Arguments]    ${license_model_id}   ${version_id}=0.1
     ${uuid}=    Generate UUID
     ${shortened_uuid}=     Evaluate    str("${uuid}")[:23]
     ${map}=    Create Dictionary    key_group_name=${shortened_uuid}
     ${data}=   Fill JSON Template File    ${ASDC_KEY_GROUP_TEMPLATE}    ${map}
-    ${resp}=    Run ASDC Post Request    ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${license_model_id}${ASDC_VENDOR_KEY_GROUP_PATH}     ${data}
+    ${resp}=    Run ASDC Post Request    ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${license_model_id}/versions/${version_id}${ASDC_VENDOR_KEY_GROUP_PATH}     ${data}
     Should Be Equal As Strings         ${resp.status_code}     200
     [Return]    ${resp.json()['value']}
 Get ASDC License Group
     [Documentation]    gets an asdc license group by its id
-    [Arguments]    ${license_model_id}    ${group_id}
-    ${resp}=    Run ASDC Get Request    ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${license_model_id}${ASDC_VENDOR_KEY_GROUP_PATH}/${group_id}
+    [Arguments]    ${license_model_id}    ${group_id}      ${version_id}
+    ${resp}=    Run ASDC Get Request    ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${license_model_id}/versions/${version_id}${ASDC_VENDOR_KEY_GROUP_PATH}/${group_id}
     [Return]    ${resp.json()}
 Add ASDC Feature Group
     [Documentation]    Creates an asdc Feature Group and returns its id
-    [Arguments]    ${license_model_id}    ${key_group_id}    ${entitlement_pool_id}
+    [Arguments]    ${license_model_id}    ${key_group_id}    ${entitlement_pool_id}      ${version_id}=0.1
     ${uuid}=    Generate UUID
     ${shortened_uuid}=     Evaluate    str("${uuid}")[:23]
-    ${map}=    Create Dictionary    feature_group_name=${shortened_uuid}    key_group_id=${key_group_id}    entitlement_pool_id=${entitlement_pool_id}
+    ${map}=    Create Dictionary    feature_group_name=${shortened_uuid}    key_group_id=${key_group_id}    entitlement_pool_id=${entitlement_pool_id}   manufacturer_reference_number=mrn${shortened_uuid}
     ${data}=   Fill JSON Template File    ${ASDC_FEATURE_GROUP_TEMPLATE}    ${map}
-    ${resp}=    Run ASDC Post Request    ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${license_model_id}${ASDC_VENDOR_FEATURE_GROUP_PATH}     ${data}
+    ${resp}=    Run ASDC Post Request    ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${license_model_id}/versions/${version_id}${ASDC_VENDOR_FEATURE_GROUP_PATH}     ${data}
     Should Be Equal As Strings         ${resp.status_code}     200
     [Return]    ${resp.json()['value']}
 Get ASDC Feature Group
@@ -192,12 +207,12 @@ Get ASDC Feature Group
     [Return]    ${resp.json()}
 Add ASDC License Agreement
     [Documentation]    Creates an asdc License Agreement and returns its id
-    [Arguments]    ${license_model_id}    ${feature_group_id}
+    [Arguments]    ${license_model_id}    ${feature_group_id}      ${version_id}=0.1
     ${uuid}=    Generate UUID
     ${shortened_uuid}=     Evaluate    str("${uuid}")[:23]
     ${map}=    Create Dictionary    license_agreement_name=${shortened_uuid}    feature_group_id=${feature_group_id}
     ${data}=   Fill JSON Template File    ${ASDC_LICENSE_AGREEMENT_TEMPLATE}    ${map}
-    ${resp}=    Run ASDC Post Request    ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${license_model_id}${ASDC_VENDOR_LICENSE_AGREEMENT_PATH}     ${data}
+    ${resp}=    Run ASDC Post Request    ${ASDC_VENDOR_LICENSE_MODEL_PATH}/${license_model_id}/versions/${version_id}${ASDC_VENDOR_LICENSE_AGREEMENT_PATH}     ${data}
     Should Be Equal As Strings         ${resp.status_code}     200
     [Return]    ${resp.json()['value']}
 Get ASDC License Agreement
@@ -217,8 +232,8 @@ Add ASDC Software Product
     [Return]    ${resp.json()['vspId']}
 Get ASDC Software Product
     [Documentation]    gets an asdc Software Product by its id
-    [Arguments]    ${software_product_id}
-    ${resp}=    Run ASDC Get Request    ${ASDC_VENDOR_SOFTWARE_PRODUCT_PATH}/${software_product_id}
+    [Arguments]    ${software_product_id}   ${version_id}=0.1
+    ${resp}=    Run ASDC Get Request    ${ASDC_VENDOR_SOFTWARE_PRODUCT_PATH}/${software_product_id}/versions/${version_id}
     [Return]    ${resp.json()}
 Add ASDC Catalog Resource
     [Documentation]    Creates an asdc Catalog Resource and returns its id
@@ -276,10 +291,10 @@ Certify ASDC Catalog Resource
     [Return]    ${resp.json()['uniqueId']}
 Upload ASDC Heat Package
     [Documentation]    Creates an asdc Software Product and returns its id
-    [Arguments]    ${software_product_id}    ${file_path}
+    [Arguments]    ${software_product_id}    ${file_path}   ${version_id}=0.1
     ${file}=    Get Binary File     ${file_path}
     ${files}=     Create Dictionary     upload=${file}
-    ${resp}=    Run ASDC Post Files Request    ${ASDC_VENDOR_SOFTWARE_PRODUCT_PATH}/${software_product_id}${ASDC_VENDOR_SOFTWARE_UPLOAD_PATH}     ${files}    ${ASDC_DESIGNER_USER_ID}
+    ${resp}=    Run ASDC Post Files Request    ${ASDC_VENDOR_SOFTWARE_PRODUCT_PATH}/${software_product_id}/versions/${version_id}${ASDC_VENDOR_SOFTWARE_UPLOAD_PATH}     ${files}    ${ASDC_DESIGNER_USER_ID}
        Should Be Equal As Strings      ${resp.status_code}     200
 Add ASDC Catalog Service
     [Documentation]    Creates an asdc Catalog Service and returns its id
@@ -385,7 +400,7 @@ Get Catalog Service Distribution Details
     [Return]    ${resp.json()}
 Run ASDC Health Check
     [Documentation]    Runs a ASDC health check
-    ${session}=    Create Session      asdc    ${GLOBAL_ASDC_FE_SERVER}:${GLOBAL_ASDC_FE_PORT}
+    ${session}=    Create Session      asdc    ${ASDC_FE_ENDPOINT}
     ${uuid}=    Generate UUID
     ${headers}=  Create Dictionary     Accept=application/json    Content-Type=application/json    X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid}    X-FromAppId=${GLOBAL_APPLICATION_ID}
     ${resp}=   Get Request     asdc    ${ASDC_HEALTH_CHECK_PATH}     headers=${headers}
@@ -398,8 +413,8 @@ Run ASDC Get Request
     [Documentation]    Runs an ASDC get request
     [Arguments]    ${data_path}    ${user}=${ASDC_DESIGNER_USER_ID}
     ${auth}=  Create List  ${GLOBAL_ASDC_BE_USERNAME}    ${GLOBAL_ASDC_BE_PASSWORD}
-    Log    Creating session ${GLOBAL_ASDC_BE_SERVER}
-    ${session}=    Create Session      asdc    ${GLOBAL_ASDC_BE_SERVER}:${GLOBAL_ASDC_BE_PORT}    auth=${auth}
+    Log    Creating session ${ASDC_BE_ENDPOINT}
+    ${session}=    Create Session      asdc    ${ASDC_BE_ENDPOINT}    auth=${auth}
     ${uuid}=    Generate UUID
     ${headers}=  Create Dictionary     Accept=application/json    Content-Type=application/json    USER_ID=${user}    X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid}    X-FromAppId=${GLOBAL_APPLICATION_ID}
     ${resp}=   Get Request     asdc    ${data_path}     headers=${headers}
@@ -409,8 +424,8 @@ Run ASDC Put Request
     [Documentation]    Runs an ASDC put request
     [Arguments]    ${data_path}    ${data}    ${user}=${ASDC_DESIGNER_USER_ID}
     ${auth}=  Create List  ${GLOBAL_ASDC_BE_USERNAME}    ${GLOBAL_ASDC_BE_PASSWORD}
-    Log    Creating session ${GLOBAL_ASDC_BE_SERVER}
-    ${session}=    Create Session      asdc    ${GLOBAL_ASDC_BE_SERVER}:${GLOBAL_ASDC_BE_PORT}    auth=${auth}
+    Log    Creating session ${ASDC_BE_ENDPOINT}
+    ${session}=    Create Session      asdc    ${ASDC_BE_ENDPOINT}    auth=${auth}
     ${uuid}=    Generate UUID
     ${headers}=  Create Dictionary     Accept=application/json    Content-Type=application/json    USER_ID=${user}    X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid}    X-FromAppId=${GLOBAL_APPLICATION_ID}
     ${resp}=   Put Request     asdc    ${data_path}     data=${data}    headers=${headers}
@@ -420,8 +435,8 @@ Run ASDC Post Files Request
     [Documentation]    Runs an ASDC post request
     [Arguments]    ${data_path}    ${files}    ${user}=${ASDC_DESIGNER_USER_ID}
     ${auth}=  Create List  ${GLOBAL_ASDC_BE_USERNAME}    ${GLOBAL_ASDC_BE_PASSWORD}
-    Log    Creating session ${GLOBAL_ASDC_BE_SERVER}
-    ${session}=    Create Session      asdc    ${GLOBAL_ASDC_BE_SERVER}:${GLOBAL_ASDC_BE_PORT}    auth=${auth}
+    Log    Creating session ${ASDC_BE_ENDPOINT}
+    ${session}=    Create Session      asdc    ${ASDC_BE_ENDPOINT}    auth=${auth}
     ${uuid}=    Generate UUID
     ${headers}=  Create Dictionary     Accept=application/json    Content-Type=multipart/form-data    USER_ID=${user}    X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid}    X-FromAppId=${GLOBAL_APPLICATION_ID}
     ${resp}=   Post Request    asdc    ${data_path}     files=${files}    headers=${headers}
@@ -431,8 +446,8 @@ Run ASDC Post Request
     [Documentation]    Runs an ASDC post request
     [Arguments]    ${data_path}    ${data}    ${user}=${ASDC_DESIGNER_USER_ID}
     ${auth}=  Create List  ${GLOBAL_ASDC_BE_USERNAME}    ${GLOBAL_ASDC_BE_PASSWORD}
-    Log    Creating session ${GLOBAL_ASDC_BE_SERVER}
-    ${session}=    Create Session      asdc    ${GLOBAL_ASDC_BE_SERVER}:${GLOBAL_ASDC_BE_PORT}    auth=${auth}
+    Log    Creating session ${ASDC_BE_ENDPOINT}
+    ${session}=    Create Session      asdc    ${ASDC_BE_ENDPOINT}    auth=${auth}
     ${uuid}=    Generate UUID
     ${headers}=  Create Dictionary     Accept=application/json    Content-Type=application/json    USER_ID=${user}    X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid}    X-FromAppId=${GLOBAL_APPLICATION_ID}
     ${resp}=   Post Request    asdc    ${data_path}     data=${data}    headers=${headers}
@@ -442,8 +457,8 @@ Run ASDC Delete Request
     [Documentation]    Runs an ASDC delete request
     [Arguments]    ${data_path}    ${user}=${ASDC_DESIGNER_USER_ID}
     ${auth}=  Create List  ${GLOBAL_ASDC_BE_USERNAME}    ${GLOBAL_ASDC_BE_PASSWORD}
-    Log    Creating session ${GLOBAL_ASDC_BE_SERVER}
-    ${session}=    Create Session      asdc    ${GLOBAL_ASDC_BE_SERVER}:${GLOBAL_ASDC_BE_PORT}    auth=${auth}
+    Log    Creating session ${ASDC_BE_ENDPOINT}
+    ${session}=    Create Session      asdc    ${ASDC_BE_ENDPOINT}    auth=${auth}
     ${uuid}=    Generate UUID
     ${headers}=  Create Dictionary     Accept=application/json    Content-Type=application/json    USER_ID=${user}    X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid}    X-FromAppId=${GLOBAL_APPLICATION_ID}
     ${resp}=   Delete Request  asdc    ${data_path}        headers=${headers}
@@ -454,11 +469,11 @@ Open ASDC GUI
     [Arguments]    ${PATH}
     ## Setup Browever now being managed by the test case
     ##Setup Browser
-    Go To    ${GLOBAL_ASDC_FE_SERVER}${PATH}
+    Go To    ${ASDC_FE_ENDPOINT}${PATH}
     Maximize Browser Window
     Set Selenium Speed    ${GLOBAL_SELENIUM_DELAY}
     Set Browser Implicit Wait    ${GLOBAL_SELENIUM_BROWSER_IMPLICIT_WAIT}
-    Log    Logging in to ${GLOBAL_ASDC_FE_SERVER}${PATH}
+    Log    Logging in to ${ASDC_FE_ENDPOINT}${PATH}
     Title Should Be    ASDC
     Wait Until Page Contains Element    xpath=//div/a[text()='SDC']    ${GLOBAL_SELENIUM_BROWSER_WAIT_TIMEOUT}
-    Log    Logged in to ${GLOBAL_PORTAL_SERVER}${PATH}
+    Log    Logged in to ${ASDC_FE_ENDPOINT}${PATH}
index 3bd51f5..4798c91 100644 (file)
@@ -9,14 +9,16 @@ Resource          global_properties.robot
 
 *** Variables ***
 ${POLICY_HEALTH_CHECK_PATH}        /healthcheck
+${POLICY_ENDPOINT}     ${GLOBAL_POLICY_SERVER_PROTOCOL}://${GLOBAL_INJECTED_POLICY_IP_ADDR}:${GLOBAL_POLICY_SERVER_PORT}
+${POLICY_HEALTHCHECK_ENDPOINT}     ${GLOBAL_POLICY_SERVER_PROTOCOL}://${GLOBAL_INJECTED_POLICY_HEALTHCHECK_IP_ADDR}:${GLOBAL_POLICY_HEALTHCHECK_PORT}
 
 *** Keywords ***
 
 Run Policy Health Check
      [Documentation]    Runs Policy Health check
      ${auth}=    Create List    ${GLOBAL_POLICY_USERNAME}    ${GLOBAL_POLICY_PASSWORD}    
-     Log    Creating session ${GLOBAL_POLICY_SERVER_URL}
-     ${session}=    Create Session     policy  ${GLOBAL_POLICY_HEALTHCHECK_URL}   auth=${auth}
+     Log    Creating session ${POLICY_ENDPOINT}
+     ${session}=    Create Session     policy  ${POLICY_HEALTHCHECK_ENDPOINT}   auth=${auth}
      ${headers}=  Create Dictionary     Accept=application/json    Content-Type=application/json
      ${resp}=  Get Request     policy  ${POLICY_HEALTH_CHECK_PATH}     headers=${headers}
      Log    Received response from policy ${resp.text}
@@ -30,8 +32,8 @@ Run Policy Health Check
 Run Policy Put Request
      [Documentation]    Runs Policy Put request
      [Arguments]    ${data_path}  ${data}
-     Log    Creating session ${GLOBAL_POLICY_SERVER_URL}
-     ${session}=    Create Session     policy  ${GLOBAL_POLICY_SERVER_URL}
+     Log    Creating session ${POLICY_ENDPOINT}
+     ${session}=    Create Session     policy  ${POLICY_ENDPOINT}
      ${headers}=  Create Dictionary     Accept=application/json    Content-Type=application/json    Authorization=Basic ${GLOBAL_POLICY_AUTH}   ClientAuth=${GLOBAL_POLICY_CLIENTAUTH}    Environment=TEST
      ${resp}=  Put Request     policy  ${data_path}     data=${data}    headers=${headers}
      Log    Received response from policy ${resp.text}
@@ -40,8 +42,8 @@ Run Policy Put Request
 Run Policy Delete Request
      [Documentation]    Runs Policy Delete request
      [Arguments]    ${data_path}  ${data}
-     Log    Creating session ${GLOBAL_POLICY_SERVER_URL}
-     ${session}=    Create Session     policy  ${GLOBAL_POLICY_SERVER_URL}
+     Log    Creating session ${POLICY_ENDPOINT}
+     ${session}=    Create Session     policy  ${POLICY_ENDPOINT}
      ${headers}=    Create Dictionary     Accept=application/json    Content-Type=application/json    Authorization=Basic ${GLOBAL_POLICY_AUTH}   ClientAuth=${GLOBAL_POLICY_CLIENTAUTH}    Environment=TEST
      ${resp}=  Delete Request  policy  ${data_path}    data=${data}    headers=${headers}
      Log    Received response from policy ${resp.text}
@@ -50,9 +52,9 @@ Run Policy Delete Request
 Run Policy Get Configs Request
     [Documentation]    Runs Policy Get Configs request
     [Arguments]    ${data_path}  ${data}
-    Log    Creating session ${GLOBAL_POLICY_SERVER_URL}
-    ${session}=    Create Session      policy  ${GLOBAL_POLICY_SERVER_URL}
+    Log    Creating session ${POLICY_ENDPOINT}
+    ${session}=    Create Session      policy  ${POLICY_ENDPOINT}
     ${headers}=    Create Dictionary     Accept=application/json    Content-Type=application/json    Authorization=Basic ${GLOBAL_POLICY_AUTH}   ClientAuth=${GLOBAL_POLICY_CLIENTAUTH}    
     ${resp}=   Post Request    policy  ${data_path}    data=${data}    headers=${headers}
     Log    Received response from policy ${resp.text}
-    [Return]    ${resp}
\ No newline at end of file
+    [Return]    ${resp}
index 0d4f10e..a2693b8 100644 (file)
@@ -1,7 +1,7 @@
 *** Settings ***
 Documentation     The main interface for interacting with SDN-GC. It handles low level stuff like managing the http request library and SDN-GC required fields
 Library              RequestsLibrary
-Library                  UUID
+Library                  UUID      
 Library    OperatingSystem
 Library            ExtendedSelenium2Library
 Library         Collections
@@ -19,8 +19,8 @@ ${PRELOAD_VNF_CONFIG_PATH}  /config/VNF-API:preload-vnfs/vnf-preload-list
 ${PRELOAD_VNF_TOPOLOGY_OPERATION_BODY}  robot/assets/templates/sdnc/
 ${SDNGC_INDEX_PATH}    /restconf
 ${SDNCGC_HEALTHCHECK_OPERATION_PATH}  /operations/SLI-API:healthcheck
-${SDNGC_REST_ENDPOINT}    ${GLOBAL_SDNGC_SERVER}:${GLOBAL_SDNGC_REST_PORT}
-${SDNGC_ADMIN_ENDPOINT}    ${GLOBAL_SDNGC_PORTAL}:${GLOBAL_SDNGC_ADMIN_PORT}
+${SDNGC_REST_ENDPOINT}    ${GLOBAL_SDNGC_SERVER_PROTOCOL}://${GLOBAL_INJECTED_SDNC_IP_ADDR}:${GLOBAL_SDNGC_REST_PORT}
+${SDNGC_ADMIN_ENDPOINT}    ${GLOBAL_SDNGC_SERVER_PROTOCOL}://${GLOBAL_INJECTED_SDNC_PORTAL_IP_ADDR}:${GLOBAL_SDNGC_ADMIN_PORT}
 ${SDNGC_ADMIN_SIGNUP_URL}    ${SDNGC_ADMIN_ENDPOINT}/signup
 ${SDNGC_ADMIN_LOGIN_URL}    ${SDNGC_ADMIN_ENDPOINT}/login
 ${SDNGC_ADMIN_VNF_PROFILE_URL}    ${SDNGC_ADMIN_ENDPOINT}/mobility/getVnfProfile
@@ -30,7 +30,7 @@ Run SDNGC Health Check
     [Documentation]    Runs an SDNGC healthcheck
        ${resp}=    Run SDNGC Post Request     ${SDNGC_INDEX PATH}${SDNCGC_HEALTHCHECK_OPERATION_PATH}     ${None}
     Should Be Equal As Strings         ${resp.status_code}     200
-    Should Be Equal As Strings         ${resp.json()['output']['response-code']}       200
+    Should Be Equal As Strings         ${resp.json()['output']['response-code']}       200   
 
 Run SDNGC Get Request
     [Documentation]    Runs an SDNGC get request
@@ -43,7 +43,7 @@ Run SDNGC Get Request
     ${resp}=   Get Request     sdngc   ${data_path}     headers=${headers}
     Log    Received response from sdngc ${resp.text}
     [Return]    ${resp}
-
+    
 Run SDNGC Put Request
     [Documentation]    Runs an SDNGC put request
     [Arguments]    ${data_path}    ${data}
@@ -66,8 +66,8 @@ Run SDNGC Post Request
     ${headers}=  Create Dictionary     Accept=application/json    Content-Type=application/json    X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid}    X-FromAppId=${GLOBAL_APPLICATION_ID}
     ${resp}=   Post Request    sdngc   ${data_path}     data=${data}    headers=${headers}
     Log    Received response from sdngc ${resp.text}
-    [Return]    ${resp}
-
+    [Return]    ${resp} 
+  
 Run SDNGC Delete Request
     [Documentation]    Runs an SDNGC delete request
     [Arguments]    ${data_path}
@@ -92,37 +92,37 @@ Preload Vnf
     \       ${filename}=    Get From Dictionary    ${dict}    template
     \       ${base_vf_module_type}=   Set Variable If    '${dict['isBase']}' == 'true'     ${vf_module_type}    ${base_vf_module_type}
     \       ${closedloop_vf_module}=   Set Variable If    '${dict['isBase']}' == 'false'     ${vf_module}    ${closedloop_vf_module}
-    \       ${vf_name}=     Update Module Name    ${dict}    ${vf_module_name}
-    \       Preload Vnf Profile    ${vf_module_type}
+    \       ${vf_name}=     Update Module Name    ${dict}    ${vf_module_name}  
+    \       Preload Vnf Profile    ${vf_module_type}     
     \       Preload One Vnf Topology    ${service_type_uuid}    ${generic_vnf_name}    ${generic_vnf_type}     ${vf_name}    ${vf_module_type}    ${service}    ${filename}   ${uuid}
-    [Return]    ${base_vf_module_type}   ${closedloop_vf_module}
+    [Return]    ${base_vf_module_type}   ${closedloop_vf_module}    
 
 
 Update Module Name
     [Arguments]    ${dict}    ${vf_module_name}
     Return From Keyword If    'prefix' not in ${dict}    ${vf_module_name}
     Return From Keyword If    '${dict['prefix']}' == ''    ${vf_module_name}
-    ${name}=    Replace String   ${vf_module_name}   Vfmodule_    ${dict['prefix']}
-    [Return]    ${name}
+    ${name}=    Replace String   ${vf_module_name}   Vfmodule_    ${dict['prefix']} 
+    [Return]    ${name}           
 
 Get From Mapping
-    [Documentation]    Retrieve the appropriate prelad template entry for the passed vf_module
+    [Documentation]    Retrieve the appropriate prelad template entry for the passed vf_module    
     [Arguments]    ${templates}    ${vf_module}
     ${vf_module_name}=    Get From DIctionary    ${vf_module}    name
-    :for    ${template}   in   @{templates}
-    \    Return From Keyword If    '${template['name_pattern']}' in '${vf_module_name}'     ${template}
+    :for    ${template}   in   @{templates} 
+    \    Return From Keyword If    '${template['name_pattern']}' in '${vf_module_name}'     ${template}    
     [Return]    None
-
-
+    
+            
 Preload One Vnf Topology
     [Arguments]    ${service_type_uuid}    ${generic_vnf_name}    ${generic_vnf_type}       ${vf_module_name}    ${vf_module_type}    ${service}    ${filename}   ${uuid}
     Return From Keyword If    '${filename}' == ''
     ${data_template}=    OperatingSystem.Get File    ${PRELOAD_VNF_TOPOLOGY_OPERATION_BODY}/${filename}
     ${parameters}=    Get Template Parameters    ${filename}   ${uuid}
     Set To Dictionary   ${parameters}   generic_vnf_name=${generic_vnf_name}     generic_vnf_type=${generic_vnf_type}  service_type=${service_type_uuid}    vf_module_name=${vf_module_name}    vf_module_type=${vf_module_type}    uuid=${uuid}
-    ${data}=   Fill JSON Template    ${data_template}    ${parameters}
+    ${data}=   Fill JSON Template    ${data_template}    ${parameters}        
        ${put_resp}=    Run SDNGC Post Request     ${SDNGC_INDEX_PATH}${PRELOAD_VNF_TOPOLOGY_OPERATION_PATH}     ${data}
-    Should Be Equal As Strings         ${put_resp.json()['output']['response-code']}   200
+    Should Be Equal As Strings         ${put_resp.json()['output']['response-code']}   200   
     ${get_resp}=  Run SDNGC Get Request  ${SDNGC_INDEX_PATH}${PRELOAD_VNF_CONFIG_PATH}/${vf_module_name}/${vf_module_type}
     Should Be Equal As Strings         ${get_resp.status_code}         200
 
@@ -133,7 +133,9 @@ Get Template Parameters
     ${hostid}=    Get Substring    ${uuid}    -4
     ${ecompnet}=    Evaluate    ${GLOBAL_BUILD_NUMBER}%255
     # Initialize the value map with the properties generated from the Robot VM /opt/config folder
-    ${valuemap}=   Copy Dictionary   ${GLOBAL_VM_PROPERTIES}
+    ${valuemap}=   Create Dictionary
+    Set To Dictionary   ${valuemap}   artifacts_version=${GLOBAL_INJECTED_ARTIFACTS_VERSION}
+    Set To Dictionary   ${valuemap}   network=${GLOBAL_INJECTED_NETWORK} 
     # update the value map with unique values.
     Set To Dictionary   ${valuemap}   uuid=${uuid}   hostid=${hostid}    ecompnet=${ecompnet}
     ${parameters}=    Create Dictionary
@@ -143,15 +145,15 @@ Get Template Parameters
     ${template}=    Get From Dictionary    ${suite_templates}    ${template}
     Resolve Values Into Dictionary   ${valuemap}   ${template}    ${parameters}
     [Return]    ${parameters}
-
-Resolve Values Into Dictionary
+   
+Resolve Values Into Dictionary    
     [Arguments]   ${valuemap}    ${from}    ${to}
     ${keys}=    Get Dictionary Keys    ${from}
     :for   ${key}   in  @{keys}
     \    ${value}=    Get From Dictionary    ${from}   ${key}
     \    ${value}=    Template String    ${value}    ${valuemap}
     \    Set To Dictionary    ${to}    ${key}    ${value}
-
+     
 Preload Vnf Profile
     [Arguments]    ${vnf_name}
     Login To SDNGC Admin GUI
@@ -161,25 +163,25 @@ Preload Vnf Profile
     Input Text    xpath=//input[@id='nf_availability_zone_count']    999
     Input Text    xpath=//input[@id='nf_equipment_role']    robot-ete-test
     Click Button    xpath=//button[contains(.,'Submit')]
-    Page Should Contain  VNF Profile
+    Page Should Contain  VNF Profile 
     Input Text    xpath=//div[@id='vnf_profile_filter']//input    ${vnf_name}
-    Page Should Contain  ${vnf_name}
+    Page Should Contain  ${vnf_name}  
 
 Delete Vnf Profile
     [Arguments]    ${vnf_name}
     Login To SDNGC Admin GUI
     Go To    ${SDNGC_ADMIN_VNF_PROFILE_URL}
-    Page Should Contain  VNF Profile
+    Page Should Contain  VNF Profile 
     Input Text    xpath=//div[@id='vnf_profile_filter']//input    ${vnf_name}
     Page Should Contain  ${vnf_name}
-    Click Button    xpath=//button[contains(@onclick, '${vnf_name}')]
+    Click Button    xpath=//button[contains(@onclick, '${vnf_name}')]    
     Page Should Contain    Are you sure you want to delete VNF_PROFILE
     Click Button    xpath=//button[contains(text(), 'Yes')]
     Page Should Not Contain  ${vnf_name}
-
+        
 Login To SDNGC Admin GUI
     [Documentation]   Login To SDNGC Admin GUI
-    ## Setup Browser is now being managed by the test case
+    ## Setup Browser is now being managed by the test case 
     ## Setup Browser
     Go To    ${SDNGC_ADMIN_SIGNUP_URL}
     Maximize Browser Window
@@ -188,7 +190,7 @@ Login To SDNGC Admin GUI
     Log    Logging in to ${SDNGC_ADMIN_LOGIN_URL}
     Handle Proxy Warning
     Title Should Be    AdminPortal
-    ${uuid}=    Generate UUID
+    ${uuid}=    Generate UUID  
     ${shortened_uuid}=     Evaluate    str("${uuid}")[:12]
     ${email}=        Catenate    ${shortened_uuid}@robotete.com
     Input Text    xpath=//input[@id='nf_email']    ${email}