Add client cert to support mTLS
[it/test.git] / ric_robot_suite / robot / testsuites / ricdeployment.robot
index b50320b..36a745f 100644 (file)
 *** Settings ***
 Documentation   Tests for the existence and functionality of RIC components
 
-Library  KubernetesEntity  ${NAMESPACE}
+Resource       ../resources/global_properties.robot
+Resource       ../resources/ric/ric_utils.robot
+
+Library  KubernetesEntity  ${GLOBAL_RICPLT_NAMESPACE}
 Library  Collections
 Library  String
 
-# Resource        ../resources/appmgr/appmgr_interface.robot
-# Resource         ../resources/e2mgr/e2mgr_interface.robot
-
-*** Variables ***
-${NAMESPACE}   %{RICPLT_NAMESPACE}
-${PFX}         %{RICPLT_RELEASE_NAME}
-
 *** Test Cases ***
 Deployments
   [Tags]  etetests  k8stests  ci_tests
-  @{Components} =  Split String  %{RICPLT_COMPONENTS}
-  :FOR  ${Component}  IN  @{Components}
-  \  Log  Retrieving Deployment for ${Component}
-  #\  ${deploy} =  Deployment   ${PFX}-${Component}
-  #   new helm deployment naming 6/2019
-  \  ${deploy} =  Deployment   deployment-${PFX}-${Component}
-  \  ${status} =  Most Recent Availability Condition  @{deploy.status.conditions}
-  \  Should Be Equal As Strings  ${status}  True  ignore_case=True  msg=${Component} is not available
-
-*** Keywords ***
-Most Recent Availability Condition
-  # this makes the probably-unsafe assumption that the conditions are ordered
-  # temporally.
-  [Arguments]  @{Conditions}
-  ${status} =  Set Variable  'False'
-  :FOR  ${Condition}  IN  @{Conditions}
-  \  ${status} =  Set Variable If  '${Condition.type}' == 'Available'  ${Condition.status}  ${status}
-  [Return]  ${status}
+  FOR  ${component}  IN  @{GLOBAL_RICPLT_COMPONENTS}
+     ${controllerName} =  Get From Dictionary              ${GLOBAL_RICPLT_COMPONENTS}  ${Component}
+     ${cType}  ${name} =  Split String  ${controllerName}  |
+     ${ctrl} =            Run Keyword   ${cType}           ${name}
+     Should Be Equal      ${ctrl.status.replicas}          ${ctrl.status.ready_replicas}
+     # this doesn't seem to exist for statefulsets
+     ${status} =          Run Keyword If       '${cType}' == 'deployment'
+     ...                  ${status} =          Most Recent Availability Condition  @{deploy.status.conditions}
+     ...  ELSE
+     ...                  Set Variable         'True'
+     Should Be Equal As Strings  ${status}  True  ignore_case=True  msg=${Component} is not available
+  END
+  
+  
\ No newline at end of file