Commit 9f9d954c authored by Yann Garcia's avatar Yann Garcia
Browse files

TTF T027: Review MEC 010-2/MEX/LCM - Step2

parent 0b7b85fa
Loading
Loading
Loading
Loading
+408 −197

File changed.

Preview size limit exceeded, changes collapsed.

+10 −0
Original line number Diff line number Diff line
@@ -140,6 +140,16 @@ module AtsMec_ApplicationPackageLifecycleAndOperationGrantingAPI_TestControl {
            execute(TC_MEC_MEC010p2_MEX_LCM_007_OK());
            execute(TC_MEC_MEC010p2_MEX_LCM_007_BR());
            execute(TC_MEC_MEC010p2_MEX_LCM_007_NF());
            execute(TC_MEC_MEC010p2_MEX_LCM_008_OK());
            execute(TC_MEC_MEC010p2_MEX_LCM_009_OK());
            execute(TC_MEC_MEC010p2_MEX_LCM_009_NF());
            execute(TC_MEC_MEC010p2_MEX_LCM_010_OK());
            execute(TC_MEC_MEC010p2_MEX_LCM_010_BR());
            execute(TC_MEC_MEC010p2_MEX_LCM_011_OK());
            execute(TC_MEC_MEC010p2_MEX_LCM_012_OK());
            execute(TC_MEC_MEC010p2_MEX_LCM_012_NF());
            execute(TC_MEC_MEC010p2_MEX_LCM_013_OK());
            execute(TC_MEC_MEC010p2_MEX_LCM_013_NF());
          }
        }
      }
+75 −0
Original line number Diff line number Diff line
@@ -432,4 +432,79 @@ module ApplicationPackageLifecycleAndOperationGrantingAPI_Functions {
      f_delete_app_instance(p_app_pkg_info_id, p_app_instance_info_id);
  } // End of function f_terminate_app_instance

  function f_create_app_instance_subscription(
                                              out AppInstSubscriptionInfo p_app_inst_subscription_info
                                              ) runs on HttpComponent {
    // Local variables
    var Headers v_headers;
    var HttpMessage v_response;

    f_init_default_headers_list(-, -, v_headers);
    httpPort.send(
                  m_http_request(
                                 m_http_request_post(
                                                     PICS_ROOT_API & PX_MEX_LCM_SUBS,
                                                     v_headers,
                                                     m_http_message_body_json(
                                                                              m_body_json_app_inst_subscription_request(
                                                                                                                        m_app_inst_subscription_request(
                                                                                                                                                        PX_APP_INST_SUBSCRIPTION_REQUEST, // Wrong subscription request
                                                                                                                                                        PX_CALLBACK_URI
                    ))))));

    // Test Body
    tc_ac.start;
    alt {
      [] httpPort.receive(
                          mw_http_response(
                                           mw_http_response_ok(
                                                               mw_http_message_body_json(
                                                                                         mw_body_json_app_inst_subscription_info( 
                                                                                                                                 mw_app_inst_subscription_info(
                                                                                                                                                               -,
                                                                                                                                                               PX_APP_INST_SUBSCRIPTION_REQUEST,
                                                                                                                                                               PX_CALLBACK_URI
                          )))))) -> value v_response {
        tc_ac.stop;

        p_app_inst_subscription_info := v_response.response.body.json_body.appInstSubscriptionInfo;
        log("f_create_app_pkg_subscription: IUT responds to the AppInstSubscriptionInfo: ", p_app_inst_subscription_info);
      }
      [] tc_ac.timeout {
        log("f_create_app_pkg_subscription: Expected message not received ***");
      }
    } // End of 'alt' statement

  } // End of function f_create_app_instance_subscription

  function f_delete_app_instance_subscription(
                                              in Json.String  p_id
                                              ) runs on HttpComponent {
    // Local variables
    var Headers v_headers;

    f_init_default_headers_list(-, -, v_headers);
    httpPort.send(
                  m_http_request(
                                 m_http_request_delete(
                                                       PICS_ROOT_API & PX_MEX_LCM_SUBS & oct2char(unichar2oct(p_id)),
                                                       v_headers
                    )));

    // Test Body
    tc_ac.start;
    alt {
      [] httpPort.receive(
                          mw_http_response(
                                           mw_http_response_ok(
                          ))) {
        tc_ac.stop;
      }
      [] tc_ac.timeout {
        log("f_create_app_pkg_subscription: Expected message not received ***");
      }
    } // End of 'alt' statement

  } // End of function f_delete_app_instance_subscription

} // End of ApplicationPackageLifecycleAndOperationGrantingAPI_Functions
+21 −14
Original line number Diff line number Diff line
@@ -18,7 +18,9 @@ module ApplicationPackageLifecycleAndOperationGrantingAPI_Pixits {
  
  modulepar Json.String PX_APP_LCM_OP_OCC_ID := "5abe4782-2c70-4e47-9a4e-0ee3a1a0fd1c"

  modulepar Json.AnyURI PX_APP_LCM_OP_OCC_ID_URI := "";
  modulepar Json.String PX_APP_NON_EXISTANT_LCM_OP_OCC_ID := "5abe4782-2c70-4e47-9a4e-0ee3a1a0fd1c"

  modulepar Json.AnyURI PX_APP_LCM_OP_OCC_ID_URI := "/app_lcm/v1/app_lcm_op_occs/5abe4782-2c70-4e47-9a4e-0ee3a1a0fd1c";

  modulepar Json.AnyURI PX_APP_INSTANCE_ID_URI := "";

@@ -44,31 +46,36 @@ module ApplicationPackageLifecycleAndOperationGrantingAPI_Pixits {
  
  modulepar Json.String PX_TRAFFIC_FILTER_PROTOCOL := "";

  modulepar Json.String PX_APP_PKG_NAME := "APP_PKG_NAME"
  modulepar Json.String PX_APP_PKG_NAME := "APP_PKG_NAME";

  modulepar Json.String PX_APP_PKG_VERSION := "APP_PKG_VERSION";

  modulepar Json.String PX_APP_PKG_VERSION := "APP_PKG_VERSION"
  modulepar Json.String PX_CHECKSUM := "CHECKSUM";

  modulepar Json.String PX_CHECKSUM := "CHECKSUM"
  modulepar Json.String PX_APP_PKG_PATH := "APP_PKG_PATH";
  
  modulepar Json.String PX_APP_PKG_PATH := "APP_PKG_PATH"
  modulepar OperationalState PX_OPERATIONAL_STATE := STARTED;
  
  modulepar OperationalState PX_OPERATIONAL_STATE := STARTED 
  modulepar UsageState PX_USAGE_STATE := NOT_IN_USE;
  
  modulepar UsageState PX_USAGE_STATE := NOT_IN_USE
  modulepar Json.String PX_APP_PKG_ID := "5abe4782-2c70-4e47-9a4e-0ee3a1a0fd1f";
  
  modulepar Json.String PX_APP_PKG_ID := "5abe4782-2c70-4e47-9a4e-0ee3a1a0fd1f"
  modulepar Json.String PX_ON_BOARDED_APP_PKG_ID := "5abe4782-2c70-4e47-9a4e-0ee3a1a0fd1f";
  
  modulepar Json.String PX_ON_BOARDED_APP_PKG_ID := "5abe4782-2c70-4e47-9a4e-0ee3a1a0fd1f"
  modulepar Json.String PX_NON_EXISTENT_APP_PKG_ID := "NON_EXISTENT_APP_PKG_ID";
  
  modulepar Json.String PX_NON_EXISTENT_APP_PKG_ID := "NON_EXISTENT_APP_PKG_ID"
  modulepar Json.String PX_NON_EXISTENT_ON_BOARDED_APP_PKG_ID := "NON_ON_BOARDED_EXISTENT_APP_PKG_ID";
  
  modulepar Json.String PX_NON_EXISTENT_ON_BOARDED_APP_PKG_ID := "NON_ON_BOARDED_EXISTENT_APP_PKG_ID"
  modulepar Json.AnyURI PX_CALLBACK_URI := "http://127.0.0.1/callback";

  modulepar Json.AnyURI PX_CALLBACK_URI := "http://127.0.0.1/callback"
  modulepar Json.String PX_APP_INST_SUBSCRIPTION_REQUEST := "AppInstSubscriptionRequest";
                                                            // AppLcmOpOccSubscriptionRequest
                                                            // AppInstIdCreationSubscriptionRequest
                                                            // AppInstIdDeletionSubscriptionRequest
  
  modulepar Json.String PX_SUBSCRIPTION_ID := "e0deee2b-6e50-4f33-ab09-8bf0585025d3"
  modulepar Json.String PX_SUBSCRIPTION_ID := "e0deee2b-6e50-4f33-ab09-8bf0585025d3";

  modulepar Json.String PX_NON_EXISTENT_SUBSCRIPTION_ID := "NON_EXISTENT_SUBSCRIPTION_ID"
  modulepar Json.String PX_NON_EXISTENT_SUBSCRIPTION_ID := "NON_EXISTENT_SUBSCRIPTION_ID";
  
  modulepar Json.AnyURI PX_APP_PKG_HREF := "";

+144 −0
Original line number Diff line number Diff line
@@ -815,6 +815,150 @@ module ApplicationPackageLifecycleAndOperationGrantingAPI_Templates {
      gracefulStopTimeout := p_graceful_stop_timeout
    } // End of template mw_operate_app_request

    template (omit) AppLcmOpOcc m_app_lcm_op_occ(
                                                 in Json.String p_id,
                                                 in OperationState p_operationState,
                                                 in template (value) ApplicationPackageLifecycleAndOperationGrantingAPI_TypesAndValues.TimeStamp p_stateEnteredTime,
                                                 in template (value) ApplicationPackageLifecycleAndOperationGrantingAPI_TypesAndValues.TimeStamp p_startTime,
                                                 in OperationType p_lcmOperation,
                                                 in template (value) AppLcmOpOcc_Link p_links,
                                                 in template (omit) OperationParams p_operationParams := omit,
                                                 in template (omit) Json.Bool p_isCancelPending := omit,
                                                 in template (omit) CancelMode p_cancelMode := omit
                                                 ) := {
      id               := p_id,
      operationState   := p_operationState,
      stateEnteredTime := p_stateEnteredTime,
      startTime        := p_startTime,
      lcmOperation     := p_lcmOperation,
      operationParams  := p_operationParams,
      isCancelPending  := p_isCancelPending,
      cancelMode       := p_cancelMode,
      links            := p_links
    } // End of template m_app_lcm_op_occ

    template (present) AppLcmOpOcc mw_app_lcm_op_occ(
                                                     template (present) Json.String p_id := ?,
                                                     template (present) OperationState p_operationState := ?,
                                                     template (present) ApplicationPackageLifecycleAndOperationGrantingAPI_TypesAndValues.TimeStamp p_stateEnteredTime := ?,
                                                     template (present) ApplicationPackageLifecycleAndOperationGrantingAPI_TypesAndValues.TimeStamp p_startTime := ?,
                                                     template (present) OperationType p_lcmOperation := ?,
                                                     template (present) AppLcmOpOcc_Link p_links := ?,
                                                     template OperationParams p_operationParams := *,
                                                     template Json.Bool p_isCancelPending := *,
                                                     template CancelMode p_cancelMode := *
                                                     ) := {
      id               := p_id,
      operationState   := p_operationState,
      stateEnteredTime := p_stateEnteredTime,
      startTime        := p_startTime,
      lcmOperation     := p_lcmOperation,
      operationParams  := p_operationParams,
      isCancelPending  := p_isCancelPending,
      cancelMode       := p_cancelMode,
      links            := p_links
    } // End of template mw_app_lcm_op_occ

    template (value) AppLcmOpOcc_Link m_app_lcm_op_occ_link(
                                                            in Json.AnyURI p_href,
                                                            in Json.AnyURI  p_app_instance
                                                            ) := {
      self_       := { href := p_href },
      appInstance := { href := p_app_instance }
    } // End of template m_app_lcm_op_occ_link

    template (present) AppLcmOpOcc_Link mw_app_lcm_op_occ_link(
                                                               template (present) Json.AnyURI p_href := ?,
                                                               template (present) Json.AnyURI p_app_instance := ?
                                                               ) := {
      self_       := { href := p_href },
      appInstance := { href := p_app_instance }
    } // End of template mw_app_lcm_op_occ_link

    template (omit) AppInstSubscriptionRequest m_app_inst_subscription_request(
                                                                               in Json.String p_subscriptionType,
                                                                               in Json.AnyURI p_callbackUri,
                                                                               in template (omit) AppInstanceState p_appInstanceState := omit,
                                                                               in template (omit) AppInstanceSubscriptionFilter p_appInstanceSubscriptionFilter := omit
                                                                               ) := {
      subscriptionType              := p_subscriptionType,
      callbackUri                   := p_callbackUri,
      appInstanceState              := p_appInstanceState,
      appInstanceSubscriptionFilter :=  p_appInstanceSubscriptionFilter
    } // End of template m_app_inst_subscription_request

    template (present) AppInstSubscriptionRequest mw_app_inst_subscription_request(
                                                                                   template (present) Json.String p_subscriptionType := ?,
                                                                                   template (present) Json.AnyURI p_callbackUri := ?,
                                                                                   template AppInstanceState p_appInstanceState := *,
                                                                                   template AppInstanceSubscriptionFilter p_appInstanceSubscriptionFilter := *
                                                                                   ) := {
      subscriptionType              := p_subscriptionType,
      callbackUri                   := p_callbackUri,
      appInstanceState              := p_appInstanceState,
      appInstanceSubscriptionFilter :=  p_appInstanceSubscriptionFilter
    } // End of template mw_app_inst_subscription_request

    template (omit) AppInstSubscriptionInfo m_app_inst_subscription_info(
                                                                         in Json.String p_id,
                                                                         in Json.String p_subscriptionType,
                                                                         in Json.AnyURI p_callbackUri,
                                                                         in template (value) AppInstSubscriptionInfo_Link p_links,
                                                                         in template (omit) AppInstanceState p_appInstanceState := omit,
                                                                         in template (omit) AppInstanceSubscriptionFilter p_appInstanceSubscriptionFilter := omit
                                                                         ) := {
      id                            := p_id,
      subscriptionType              := p_subscriptionType,
      appInstanceState              := p_appInstanceState,
      appInstanceSubscriptionFilter := p_appInstanceSubscriptionFilter,
      callbackUri                   := p_callbackUri,
      links                         := p_links
    } // End of template m_app_inst_subscription_info

    template (present) AppInstSubscriptionInfo mw_app_inst_subscription_info(
                                                                             template (present) Json.String p_id := ?,
                                                                             template (present) Json.String p_subscriptionType := ?,
                                                                             template (present) Json.AnyURI p_callbackUri := ?,
                                                                             template (present) AppInstSubscriptionInfo_Link p_links := ?,
                                                                             template AppInstanceState p_appInstanceState := *,
                                                                             template AppInstanceSubscriptionFilter p_appInstanceSubscriptionFilter := *
                                                                             ) := {
      id                            := p_id,
      subscriptionType              := p_subscriptionType,
      appInstanceState              := p_appInstanceState,
      appInstanceSubscriptionFilter := p_appInstanceSubscriptionFilter,
      callbackUri                   := p_callbackUri,
      links                         := p_links
    } // End of template mw_app_inst_subscription_info

    template (value) AppInstanceSubscriptionLinkList m_app_instance_subscription_link_list(
                                                                                           in template (value) AppInstanceSubscriptionLinkList_Link p_links
                                                                                           ) := {
      links := p_links
    } // End of template m_app_instance_subscription_link_list

    template (present) AppInstanceSubscriptionLinkList mw_app_instance_subscription_link_list(
                                                                                              template (present) AppInstanceSubscriptionLinkList_Link p_links := ?
                                                                                              ) := {
      links := p_links
    } // End of template mw_app_instance_subscription_link_list

    template (omit) AppInstanceSubscriptionLinkList_Link m_app_instance_subscription_link_list_link(
                                                                                                     in Json.AnyURI p_href,
                                                                                                     in template (omit) AppInstanceSubscriptionLinkList_Link_Subscriptions p_subscriptions := omit
                                                                                                     ) := {
      self_         := { href := p_href },
      subscriptions := p_subscriptions
    } // End of template m_app_instance_subscription_link_list_link

    template (present) AppInstanceSubscriptionLinkList_Link mw_app_instance_subscription_link_list_link(
                                                                                                        template (present) Json.AnyURI p_href := ?,
                                                                                                        template AppInstanceSubscriptionLinkList_Link_Subscriptions p_subscriptions := *
                                                                                                        ) := {
      self_         := { href := p_href },
      subscriptions := p_subscriptions
    } // End of template mw_app_instance_subscription_link_list_link

  } // End of group mex_lifcyclemgt
  
} // End of module ApplicationPackageLifecycleAndOperationGrantingAPI_Templates
Loading