Bug 2132: Remove tags
[osm/tests.git] / robot-systest / testsuite / basic_12-ns_primitives.robot
index 7dcc719..154ed6c 100644 (file)
@@ -12,6 +12,8 @@
 #   limitations under the License.
 
 *** Settings ***
+Documentation   [BASIC-12] NS Primitives
+
 Library   OperatingSystem
 Library   String
 Library   Collections
@@ -22,82 +24,92 @@ Resource   %{ROBOT_DEVOPS_FOLDER}/lib/nsd_lib.robot
 Resource   %{ROBOT_DEVOPS_FOLDER}/lib/ns_lib.robot
 Resource   %{ROBOT_DEVOPS_FOLDER}/lib/packages_lib.robot
 
-Variables   %{ROBOT_DEVOPS_FOLDER}/resources/basic_12-ns_primitives_data.py
+Force Tags   basic_12   cluster_ee_config   daily   regression
 
-Suite Teardown   Run Keyword And Ignore Error   Test Cleanup
+Suite Teardown   Run Keyword And Ignore Error   Suite Cleanup
 
 
 *** Variables ***
+# NS and VNF descriptor package folder and ids
+${vnfd_pkg1}   nscharm_policy_vnf
+${vnfd_pkg2}   nscharm_user_vnf
+${vnfd_name1}   nscharm-policy-vnf
+${vnfd_name2}   nscharm-user-vnf
+${nsd_pkg}   nscharm_ns
+${new_nsd_pkg}   new_nscharm_ns
+${nsd_name}   nscharm-ns
+${nsd_file}   nscharm_nsd.yaml
+
+# NS instance name and configuration
+${ns_name}   test_nscharm
 ${ns_config}   {vld: [ {name: mgmtnet, vim-network-name: %{VIM_MGMT_NET}} ] }
+${ns_timeout}   15min
+
+${old_juju_password}   a5611fc6452349cc6e45705d34c501d4
 ${publickey}   ${EMPTY}
+${success_return_code}   0
+
 
 *** Test Cases ***
 Change Juju Password
+    [Documentation]   NS package needs to be updated with the Juju credentials for your OSM installation
 
-    [Documentation]  NS package needs to be updated with the Juju credentials for your OSM installation
-
-    [Tags]   nsprimitives   charm   sanity   regression
-
-    ${nsd_yaml}=   Get File  %{PACKAGES_FOLDER}${nsd_pkg}/${nsd_file}
-    ${changed_nsd_yaml}=   Replace String  ${nsd_yaml}  ${old_juju_password}  %{JUJU_PASSWORD}
-    Create File  %{PACKAGES_FOLDER}${nsd_pkg}/${nsd_file}  ${changed_nsd_yaml}
-
-Create NS Package
-
-    [Tags]   nsprimitives   charm   sanity   regression
-
-    ${pkg}=  Package Build  '%{PACKAGES_FOLDER}${nsd_pkg}'
-    Log   ${pkg}
-    Set Suite Variable  ${ns_pkg}  ${pkg}
-
+    ${rc}   ${stdout}=   Run and Return RC and Output   cp -r '%{PACKAGES_FOLDER}/${nsd_pkg}' '%{PACKAGES_FOLDER}/${new_nsd_pkg}'
+    Should Be Equal As Integers   ${rc}   ${success_return_code}
+    ${nsd_yaml}=   Get File   %{PACKAGES_FOLDER}/${new_nsd_pkg}/${nsd_file}
+    ${changed_nsd_yaml}=   Replace String   ${nsd_yaml}   ${old_juju_password}   %{JUJU_PASSWORD}
+    Create File   %{PACKAGES_FOLDER}/${new_nsd_pkg}/${nsd_file}   ${changed_nsd_yaml}
 
 Upload Vnfds
 
-    [Tags]   nsprimitives   charm   sanity   regression
-
-    Create VNFD   '%{PACKAGES_FOLDER}${vnfd_pkg1}'
-    Create VNFD   '%{PACKAGES_FOLDER}${vnfd_pkg2}'
+    Create VNFD   '%{PACKAGES_FOLDER}/${vnfd_pkg1}'
+    Create VNFD   '%{PACKAGES_FOLDER}/${vnfd_pkg2}'
 
 Upload Nsd
 
-    [Tags]   nsprimitives   charm   sanity   regression
-
-    Create NSD  '${ns_pkg}'
+    Create NSD   %{PACKAGES_FOLDER}/${new_nsd_pkg}/
 
 Instantiate NS
 
-    [Tags]   nsprimitives   charm   sanity   regression
-
-    ${id}=  Create Network Service  ${nsd_name}  %{VIM_TARGET}  ${ns_name}  ${ns_config}  ${publickey}  ns_launch_max_wait_time=40min
-    Set Suite Variable  ${ns_id}  ${id}
+    ${id}=   Create Network Service   ${nsd_name}   %{VIM_TARGET}   ${ns_name}   ${ns_config}   ${publickey}   ns_launch_max_wait_time=${ns_timeout}
+    Set Suite Variable   ${ns_id}   ${id}
 
 # TODO: Check Initial Config Primitives Status
 
 Delete NS 
-
-    [Tags]   nsprimitives   charm   sanity   regression   cleanup
+    [Tags]   cleanup
 
     Delete NS   ${ns_name}
 
 Delete NS Descriptor
-
-    [Tags]   nsprimitives   charm   sanity   regression   cleanup
+    [Tags]   cleanup
 
     Delete NSD   ${nsd_name}
+    Delete Temporary Descriptor Folder   '%{PACKAGES_FOLDER}/${new_nsd_pkg}'
 
 Delete VNF Descriptors
-
-    [Tags]   nsprimitives   charm   sanity   regression   cleanup
+    [Tags]   cleanup
 
     Delete VNFD   ${vnfd_name1}
     Delete VNFD   ${vnfd_name2}
 
 
 *** Keywords ***
-Test Cleanup
-    [Documentation]  Test Suit Cleanup: Deleting Descriptor and instance
+Suite Cleanup
+    [Documentation]   Test Suit Cleanup: Deleting Descriptor and instance
+
+    Run Keyword If Any Tests Failed   Delete NS   ${ns_name}
+    Run Keyword If Any Tests Failed   Delete NSD   ${nsd_name}
+    Run Keyword If Any Tests Failed   Delete VNFD   ${vnfd_name1}
+    Run Keyword If Any Tests Failed   Delete VNFD   ${vnfd_name2}
+    Delete Temporary Descriptor Folder   '%{PACKAGES_FOLDER}/${new_nsd_pkg}'
+
+
+Delete Temporary Descriptor Folder
+    [Documentation]   Removes the temporary package folder created for the test
+    [Arguments]   ${folder_name}
+
+    ${rc}   ${stdout}=   Run and Return RC and Output   rm -rf '${folder_name}'
+    log   ${stdout}
+
 
-    Run Keyword If Test Failed  Delete NS   ${ns_name}
-    Run Keyword If Test Failed  Delete NSD   ${nsd_name}
-    Run Keyword If Test Failed  Delete VNFD   ${vnfd_name1}
-    Run Keyword If Test Failed  Delete VNFD   ${vnfd_name2}