Commit 14bc6d3d authored by Yann Garcia's avatar Yann Garcia
Browse files

Bug fixed un MEC 013 Subscription/notification

parent ad8158b5
Loading
Loading
Loading
Loading
+77 −24
Original line number Diff line number Diff line
@@ -90,10 +90,29 @@ int json_codec_mec013::decode (const OCTETSTRING& p_data, LibHttp__JsonMessageBo
    int idx_begin = it->second.find(":");
    int idx_end = it->second.rfind("}") - 1; // Remove the last '}'
    str = it->second.substr(idx_begin + 1, idx_end - idx_begin);
    // Replace '5G NR' ConnectionType enumerated by FiveG_NR
    if (str.find("5G NR") != std::string::npos) {
      idx_begin = 0;
      std::string search("5G NR");
      std::string replace("FiveG_NR");
      //loggers::get_instance().log("xml_codec::patch_encode_agent_derivations: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
      while ((idx_begin = str.find(search, idx_begin)) != std::string::npos) {
        str.replace(idx_begin, search.length(), replace);
        idx_begin += replace.length();
      } // End of 'while' statement
    }
    TTCN_Buffer decoding_buffer(OCTETSTRING(str.length(), (const unsigned char*)str.c_str()));
    LocationAPI__TypesAndValues::AccessPointList access_point_list;
    access_point_list.decode(LocationAPI__TypesAndValues::AccessPointList_descr_, decoding_buffer, TTCN_EncDec::CT_JSON);
    msg.accessPointList() = access_point_list;
  } else if (it->second.find("\"notificationSubscriptionList\"") != std::string::npos) {
    int idx_begin = it->second.find(":");
    int idx_end = it->second.rfind("}") - 1; // Remove the last '}'
    str = it->second.substr(idx_begin + 1, idx_end - idx_begin);
    TTCN_Buffer decoding_buffer(OCTETSTRING(str.length(), (const unsigned char*)str.c_str()));
    LocationAPI__TypesAndValues::NotificationSubscriptionList notification_subscription_list;
    notification_subscription_list.decode(LocationAPI__TypesAndValues::NotificationSubscriptionList_descr_, decoding_buffer, TTCN_EncDec::CT_JSON);
    msg.notificationSubscriptionList() = notification_subscription_list;
  } else if (it->second.find("\"userLocationEventSubscription\"") != std::string::npos) {
    int idx_begin = it->second.find(":");
    int idx_end = it->second.rfind("}") - 1; // Remove the last '}'
@@ -102,14 +121,14 @@ int json_codec_mec013::decode (const OCTETSTRING& p_data, LibHttp__JsonMessageBo
    LocationAPI__TypesAndValues::UserLocationEventSubscription user_location_event_subscription;
    user_location_event_subscription.decode(LocationAPI__TypesAndValues::UserLocationEventSubscription_descr_, decoding_buffer, TTCN_EncDec::CT_JSON);
    msg.userLocationEventSubscription() = user_location_event_subscription;
  } else if (it->second.find("\"notificationSubscriptionList\"") != std::string::npos) {
  } else if (it->second.find("\"userLocationEventNotification\"") != std::string::npos) {
    int idx_begin = it->second.find(":");
    int idx_end = it->second.rfind("}") - 1; // Remove the last '}'
    str = it->second.substr(idx_begin + 1, idx_end - idx_begin);
    TTCN_Buffer decoding_buffer(OCTETSTRING(str.length(), (const unsigned char*)str.c_str()));
    LocationAPI__TypesAndValues::NotificationSubscriptionList notification_subscription_list;
    notification_subscription_list.decode(LocationAPI__TypesAndValues::NotificationSubscriptionList_descr_, decoding_buffer, TTCN_EncDec::CT_JSON);
    msg.notificationSubscriptionList() = notification_subscription_list;
    LocationAPI__TypesAndValues::UserLocationEventNotification user_location_event_notification;
    user_location_event_notification.decode(LocationAPI__TypesAndValues::UserLocationEventNotification_descr_, decoding_buffer, TTCN_EncDec::CT_JSON);
    msg.userLocationEventNotification() = user_location_event_notification;
  } else if (it->second.find("\"userLocationPeriodicSubscription\"") != std::string::npos) {
    int idx_begin = it->second.find(":");
    int idx_end = it->second.rfind("}") - 1; // Remove the last '}'
@@ -118,6 +137,30 @@ int json_codec_mec013::decode (const OCTETSTRING& p_data, LibHttp__JsonMessageBo
    LocationAPI__TypesAndValues::UserLocationPeriodicSubscription user_location_periodic_subscription;
    user_location_periodic_subscription.decode(LocationAPI__TypesAndValues::UserLocationPeriodicSubscription_descr_, decoding_buffer, TTCN_EncDec::CT_JSON);
    msg.userLocationPeriodicSubscription() = user_location_periodic_subscription;
  } else if (it->second.find("\"userLocationPeriodicNotification\"") != std::string::npos) {
    int idx_begin = it->second.find(":");
    int idx_end = it->second.rfind("}") - 1; // Remove the last '}'
    str = it->second.substr(idx_begin + 1, idx_end - idx_begin);
    TTCN_Buffer decoding_buffer(OCTETSTRING(str.length(), (const unsigned char*)str.c_str()));
    LocationAPI__TypesAndValues::UserLocationPeriodicNotification user_location_periodic_notification;
    user_location_periodic_notification.decode(LocationAPI__TypesAndValues::UserLocationPeriodicNotification_descr_, decoding_buffer, TTCN_EncDec::CT_JSON);
    msg.userLocationPeriodicNotification() = user_location_periodic_notification;
  } else if (it->second.find("\"zoneStatusSubscription\"") != std::string::npos) {
    int idx_begin = it->second.find(":");
    int idx_end = it->second.rfind("}") - 1; // Remove the last '}'
    str = it->second.substr(idx_begin + 1, idx_end - idx_begin);
    TTCN_Buffer decoding_buffer(OCTETSTRING(str.length(), (const unsigned char*)str.c_str()));
    LocationAPI__TypesAndValues::ZoneStatusSubscription zone_status_subscription;
    zone_status_subscription.decode(LocationAPI__TypesAndValues::ZoneStatusSubscription_descr_, decoding_buffer, TTCN_EncDec::CT_JSON);
    msg.zoneStatusSubscription() = zone_status_subscription;
  } else if (it->second.find("\"zoneStatusNotification\"") != std::string::npos) {
    int idx_begin = it->second.find(":");
    int idx_end = it->second.rfind("}") - 1; // Remove the last '}'
    str = it->second.substr(idx_begin + 1, idx_end - idx_begin);
    TTCN_Buffer decoding_buffer(OCTETSTRING(str.length(), (const unsigned char*)str.c_str()));
    LocationAPI__TypesAndValues::ZoneStatusNotification zone_status_notification;
    zone_status_notification.decode(LocationAPI__TypesAndValues::ZoneStatusNotification_descr_, decoding_buffer, TTCN_EncDec::CT_JSON);
    msg.zoneStatusNotification() = zone_status_notification;
  } else if (it->second.find("\"zoneLocationEventSubscription\"") != std::string::npos) {
    int idx_begin = it->second.find(":");
    int idx_end = it->second.rfind("}") - 1; // Remove the last '}'
@@ -126,42 +169,52 @@ int json_codec_mec013::decode (const OCTETSTRING& p_data, LibHttp__JsonMessageBo
    LocationAPI__TypesAndValues::ZoneLocationEventSubscription zone_location_event_subscription;
    zone_location_event_subscription.decode(LocationAPI__TypesAndValues::ZoneLocationEventSubscription_descr_, decoding_buffer, TTCN_EncDec::CT_JSON);
    msg.zoneLocationEventSubscription() = zone_location_event_subscription;
  } else if (it->second.find("\"userLocationPeriodicSubscription\"") != std::string::npos) {
  } else if (it->second.find("\"zoneLocationEventNotification\"") != std::string::npos) {
    int idx_begin = it->second.find(":");
    int idx_end = it->second.rfind("}") - 1; // Remove the last '}'
    str = it->second.substr(idx_begin + 1, idx_end - idx_begin);
    TTCN_Buffer decoding_buffer(OCTETSTRING(str.length(), (const unsigned char*)str.c_str()));
    LocationAPI__TypesAndValues::UserLocationPeriodicSubscription periodic_tracking_subscription;
    periodic_tracking_subscription.decode(LocationAPI__TypesAndValues::UserLocationPeriodicSubscription_descr_, decoding_buffer, TTCN_EncDec::CT_JSON);
    msg.userLocationPeriodicSubscription() = periodic_tracking_subscription;
  } else if (it->second.find("\"accessPointId\"") != std::string::npos) {
    LocationAPI__TypesAndValues::UserInfo user_info;
    user_info.decode(LocationAPI__TypesAndValues::UserInfo_descr_, decoding_buffer, TTCN_EncDec::CT_JSON);
    msg.userInfo() = user_info;
  } else if (it->second.find("\"terminalDistance\"") != std::string::npos) {
    LocationAPI__TypesAndValues::ZoneLocationEventNotification zone_location_event_notification;
    zone_location_event_notification.decode(LocationAPI__TypesAndValues::ZoneLocationEventNotification_descr_, decoding_buffer, TTCN_EncDec::CT_JSON);
    msg.zoneLocationEventNotification() = zone_location_event_notification;
  } else if (it->second.find("\"userAreaSubscription\"") != std::string::npos) {
    int idx_begin = it->second.find(":");
    int idx_end = it->second.rfind("}") - 1; // Remove the last '}'
    str = it->second.substr(idx_begin + 1, idx_end - idx_begin);
    TTCN_Buffer decoding_buffer(OCTETSTRING(str.length(), (const unsigned char*)str.c_str()));
    LocationAPI__TypesAndValues::TerminalDistance terminal_distance;
    terminal_distance.decode(LocationAPI__TypesAndValues::TerminalDistance_descr_, decoding_buffer, TTCN_EncDec::CT_JSON);
    msg.terminalDistance() = terminal_distance;
  } else if (it->second.find("\"enteringLeavingCriteria\"") != std::string::npos) {
    LocationAPI__TypesAndValues::UserAreaSubscription user_area_subscription;
    user_area_subscription.decode(LocationAPI__TypesAndValues::UserAreaSubscription_descr_, decoding_buffer, TTCN_EncDec::CT_JSON);
    msg.userAreaSubscription() = user_area_subscription;
  } else if (it->second.find("\"userAreaNotification\"") != std::string::npos) {
    int idx_begin = it->second.find(":");
    int idx_end = it->second.rfind("}") - 1; // Remove the last '}'
    str = it->second.substr(idx_begin + 1, idx_end - idx_begin);
    TTCN_Buffer decoding_buffer(OCTETSTRING(str.length(), (const unsigned char*)str.c_str()));
    LocationAPI__TypesAndValues::UserAreaNotification user_area_notification;
    user_area_notification.decode(LocationAPI__TypesAndValues::UserAreaNotification_descr_, decoding_buffer, TTCN_EncDec::CT_JSON);
    msg.userAreaNotification() = user_area_notification;
  } else if (it->second.find("\"accessPointId\"") != std::string::npos) {
    if (it->second.find("\"address\"") != std::string::npos) {
      LocationAPI__TypesAndValues::UserInfo user_info;
      user_info.decode(LocationAPI__TypesAndValues::UserInfo_descr_, decoding_buffer, TTCN_EncDec::CT_JSON);
      msg.userInfo() = user_info;
    } else {
      int idx_begin = it->second.find(":");
      int idx_end = it->second.rfind("}") - 1; // Remove the last '}'
      str = it->second.substr(idx_begin + 1, idx_end - idx_begin);
      TTCN_Buffer decoding_buffer(OCTETSTRING(str.length(), (const unsigned char*)str.c_str()));
    LocationAPI__TypesAndValues::UserAreaSubscription notif;
    notif.decode(LocationAPI__TypesAndValues::UserAreaSubscription_descr_, decoding_buffer, TTCN_EncDec::CT_JSON);
    msg.userAreaSubscription() = notif;
  } else if (it->second.find("\"userDistanceSubscription\"") != std::string::npos) {
      LocationAPI__TypesAndValues::AccessPointInfo access_point_info;
      access_point_info.decode(LocationAPI__TypesAndValues::AccessPointInfo_descr_, decoding_buffer, TTCN_EncDec::CT_JSON);
      msg.accessPointInfo() = access_point_info;
    }
  } else if (it->second.find("\"terminalDistance\"") != std::string::npos) {
    int idx_begin = it->second.find(":");
    int idx_end = it->second.rfind("}") - 1; // Remove the last '}'
    str = it->second.substr(idx_begin + 1, idx_end - idx_begin);
    TTCN_Buffer decoding_buffer(OCTETSTRING(str.length(), (const unsigned char*)str.c_str()));
    LocationAPI__TypesAndValues::UserDistanceSubscription notif;
    notif.decode(LocationAPI__TypesAndValues::UserDistanceSubscription_descr_, decoding_buffer, TTCN_EncDec::CT_JSON);
    msg.userDistanceSubscription() = notif;
    LocationAPI__TypesAndValues::TerminalDistance terminal_distance;
    terminal_distance.decode(LocationAPI__TypesAndValues::TerminalDistance_descr_, decoding_buffer, TTCN_EncDec::CT_JSON);
    msg.terminalDistance() = terminal_distance;
  } else if (it->second.find("\"detail\"") != std::string::npos) {
    LibMec__TypesAndValues::ProblemDetails problem_details;
    problem_details.decode(LibMec__TypesAndValues::ProblemDetails_descr_, decoding_buffer, TTCN_EncDec::CT_JSON);
+36 −71
Original line number Diff line number Diff line
@@ -22,9 +22,13 @@ LibMec_Pics.PICS_MEC_PLAT := true
LocationAPI_Pics.PICS_LOCATION_API_SUPPORTED   := true
LocationAPI_Pixits.PX_ZONE_ID                  := "zone03"
LocationAPI_Pixits.PX_ACCESS_POINT_ID          := "4g-macro-cell-6"
LocationAPI_Pixits.PX_AP_COORD_LAT             := 43.737087
LocationAPI_Pixits.PX_AP_COORD_LONG            := 7.421007
LocationAPI_Pixits.PX_CONNECTION_TYPE          := LTE
LocationAPI_Pixits.PX_USER                     := "4005C0A640001"
LocationAPI_Pixits.PX_IP_ADDRESS               := "10.1.0.1"
LocationAPI_Pixits.PX_IP_ADDRESS_1             := "10.100.0.1"
LocationAPI_Pixits.PX_ZONE_ID_1                := "zone01"
LocationAPI_Pixits.PX_CLIENT_ID                := "0123"
LocationAPI_Pixits.PX_SUBSCRIPTION_ID          := "1"
LocationAPI_Pixits.PX_CALLBACK_REF_URL         := "http://yanngarcia.ddns.net/location/v3/notif/1"
@@ -50,7 +54,8 @@ LogEventTypes:= Yes
[TESTPORT_PARAMETERS]
# In this section you can specify parameters that are passed to Test Ports.
system.httpPort.params := "HTTP(codecs=json:json_codec_mec013)/TCP(debug=1,server=mec-platform.etsi.org,port=443,use_ssl=1,trusted_ca_list=/home/yann/var/ssl/archive/yanngarcia.ddns.net/fullchain1.pem,privkey=/home/yann/var/ssl/archive/yanngarcia.ddns.net/privkey1.pem,certificate=/home/yann/var/ssl/archive/yanngarcia.ddns.net/fullchain1.pem)"
system.httpPort_notif.params := "HTTP(codecs=json:json_codec_mec013)/TCP(debug=1,server_mode=1,local_port=443,use_ssl=1,mutual_auth=1,mutual_tls=1,trusted_ca_list=/home/yann/var/ssl/archive/yanngarcia.ddns.net/fullchain1.pem,privkey=/home/yann/var/ssl/archive/yanngarcia.ddns.net/privkey1.pem,certificate=/home/yann/var/ssl/archive/yanngarcia.ddns.net/fullchain1.pem)"
system.httpPort_notif.params := "HTTP(codecs=json:json_codec_mec013)/TCP(debug=1,server_mode=1,use_ssl=0)"
#system.httpPort_notif.params := "HTTP(codecs=json:json_codec_mec013)/TCP(debug=1,server_mode=1,local_port=443,use_ssl=1,mutual_auth=1,mutual_tls=1,trusted_ca_list=/home/yann/var/ssl/archive/yanngarcia.ddns.net/fullchain1.pem,privkey=/home/yann/var/ssl/archive/yanngarcia.ddns.net/privkey1.pem,certificate=/home/yann/var/ssl/archive/yanngarcia.ddns.net/fullchain1.pem)"

[DEFINE]
# In this section you can create macro definitions,
@@ -77,6 +82,35 @@ system.httpPort_notif.params := "HTTP(codecs=json:json_codec_mec013)/TCP(debug=1
# In this section you can specify what parts of your test suite you want to execute.
#AtsMec_TestControl.control

# Check that the IUT responds with the list of radio nodes currently associated with the MEC host and the location of each radio node when queried by a MEC Application
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_RLOCLOOK_001_OK
# Check that the IUT responds with an error when a request for an URI that cannot be mapped to a valid resource URI is sent by a MEC Application
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_RLOCLOOK_001_NF
# Check that the IUT responds with the radio nodes when queried by a MEC Application
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_RLOCLOOK_002_OK
# Check that the IUT responds with an error when the radio nodes does not exist
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_RLOCLOOK_002_NF
# Check that the IUT responds with a list of UE area subscriptions when queried by a MEC Application - No filter
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UEAREALOOK_001_OK_01
# Check that the IUT responds with a list of UE area subscriptions when queried by a MEC Application - Event filter
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UEAREALOOK_001_OK_02
# Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application - Invalid filter
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UEAREALOOK_001_BR
# Check that the IUT acknowledges the change of UE area subscription request when commanded by a MEC Application
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UEAREALOOK_002_OK
# Check that the IUT responds with an error when a request for an URI that cannot be mapped to a valid resource URI is sent by a MEC Application
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UEAREALOOK_002_NF
# Check that the IUT acknowledges the creation of UE area subscription request when commanded by a MEC Application
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UEAREASUB_001_OK_01
# Check that the IUT acknowledges the creation of UE area subscription request when commanded by a MEC Application
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UEAREASUB_001_OK_02
# Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application - Neither callbackReference nor websockNotifConfig provided
AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UEAREASUB_001_BR





# Check that the IUT responds with the information pertaining to one or more UEs in a particular location when queried by a MEC Application - No Filter
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UEINFLOOK_001_OK_01
# Check that the IUT responds with the information pertaining to one or more UEs in a particular location when queried by a MEC Application - Filter with one address
@@ -88,15 +122,7 @@ system.httpPort_notif.params := "HTTP(codecs=json:json_codec_mec013)/TCP(debug=1
# Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UEINFLOOK_001_BR
# Check that the IUT responds with an error when a request for an unknown URI is sent by a MEC Application
AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UEINFLOOK_001_NF








#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UEINFLOOK_001_NF
# Check that the IUT responds with a list for the location of User Equipments when queried by a MEC Application
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UELOCLOOK_001_OK
# Check that the IUT responds with the subscription when queried by a MEC Application - UE location Event
@@ -118,67 +144,6 @@ AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UEINFLOOK_001_NF
# Check that the IUT responds with an error when the non existing subscription is queried by a MEC Application
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UELOCLOOK_003_NF







# Check that the IUT acknowledges the subscription by a MEC Application to notifications user location event
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UELOCSUB_001_OK
# Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application - Neither callbackReference nor websockNotifConfig provided
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UELOCSUB_001_BR_01
# Check that the IUT acknowledges the cancellation of UE location change notifications when commanded by a MEC Application
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UELOCSUB_002_OK
# Check that the IUT responds with an error when a request for an URI that cannot be mapped to a valid resource URI is sent by a MEC Application
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UELOCSUB_002_NF
# Check that the IUT acknowledges the subscription by a MEC Application to notifications user location periodic
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UELOCSUB_001_OK_02
# Check that the IUT acknowledges the UE location change subscription request when commanded by a MEC Application and notifies it when the UE changes location
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UETRACKSUB_001_BR
# Check that the IUT acknowledges the cancellation of UE location change notifications when commanded by a MEC Application
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UETRACKSUB_002_OK
# Check that the IUT responds with an error when a request for an URI that cannot be mapped to a valid resource URI is sent by a MEC Application
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UETRACKSUB_002_NF
# Check that the IUT responds with the information pertaining to one or more UEs in a particular location when queried by a MEC Application
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UEINFLOOK_001_OK
# Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UEINFLOOK_001_BR
# Check that the IUT responds with an error when a request for an unknown URI is sent by a MEC Application
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UEINFLOOK_001_NF
# Check that the IUT responds with a list zones when queried by a MEC Application
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UEINFSUB_001_OK
# Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UEINFSUB_001_BR
# Check that the IUT acknowledges the cancellation of UE information change notifications  when commanded by a MEC Application
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UEINFSUB_002_OK
# Check that the IUT acknowledges the cancellation of UE information change notifications  when commanded by a MEC Application
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UEINFSUB_002_NF
# heck that the IUT responds with the list of radio nodes currently associated with the MEC host and the location of each radio node when queried by a MEC Application
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_RLOCLOOK_001_OK
# Check that the IUT responds with an error when a request for an URI that cannot be mapped to a valid resource URI is sent by a MEC Application
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_RLOCLOOK_001_NF
# Check that the IUT acknowledges the UE area change subscription request when commanded by a MEC Application and notifies it when the UE enters the specified circle
#AtsMec_LocationAPI_TestCases.TP_MEC_MEC013_SRV_UEAREASUB_001_OK
# Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UEAREASUB_001_BR
# Check that the IUT acknowledges the cancellation of UE area change notifications when commanded by a MEC Application
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UEAREASUB_002_OK
# Check that the IUT responds with an error when a request for an URI that cannot be mapped to a valid resource URI is sent by a MEC Application
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UEAREASUB_002_NF
# Check that the IUT responds with the distance to a UE when queried by a MEC Application
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UEDISTLOOK_001_OK
# Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UEDISTLOOK_001_BR
# Check that the IUT acknowledges the UE distance subscription request when commanded by a MEC Application and notifies it when (all) the requested UE(s) is (are) within the specified distance
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UEDISTSUB_001_OK
# Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UEDISTSUB_001_BR
# Check that the IUT acknowledges the cancellation of UE distance notifications when commanded by a MEC Application
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UEDISTSUB_002_OK
# Check that the IUT responds with an error when a request for an URI that cannot be mapped to a valid resource URI is sent by a MEC Application
#AtsMec_LocationAPI_TestCases.TC_MEC_MEC013_SRV_UEDISTSUB_002_NF

[GROUPS]
# In this section you can specify groups of hosts. These groups can be used inside the
# [COMPONENTS] section to restrict the creation of certain PTCs to a given set of hosts.
+16 −1
Original line number Diff line number Diff line
@@ -60,7 +60,22 @@
			"type_traits": "cpp",
			"tuple": "cpp",
			"typeinfo": "cpp",
			"utility": "cpp"
			"utility": "cpp",
			"atomic": "cpp",
			"codecvt": "cpp",
			"compare": "cpp",
			"concepts": "cpp",
			"set": "cpp",
			"algorithm": "cpp",
			"iterator": "cpp",
			"numeric": "cpp",
			"random": "cpp",
			"mutex": "cpp",
			"numbers": "cpp",
			"semaphore": "cpp",
			"stop_token": "cpp",
			"thread": "cpp",
			"cinttypes": "cpp"
		}
	}
}
 No newline at end of file
+125 −99

File changed.

Preview size limit exceeded, changes collapsed.

+16 −13

File changed.

Preview size limit exceeded, changes collapsed.

Loading