diff --git a/TODO.md b/TODO.md
index a1c5c6eb354ec9e4fa4330108e36c7559dd0ca7c..57f0e1ce10edd74758304240efcadb5881cf34ca 100644
--- a/TODO.md
+++ b/TODO.md
@@ -39,18 +39,29 @@ This file provides the list of the TODOs related to the STF 569.
### UEINFLOOK
+Draft ETSI GS MEC 013 V2.0.3 (2018-10)
+
+https://forge.etsi.org/gitlab/mec/gs032p2-test-purposes/blob/remove-401s/Test%20Purposes/SRV/UEINFLOOK/PlatUeInformationLookup.tplan2
+
+- TC_MEC_SRV_UEINFLOOK_001_OK To be tested
+
+- TC_MEC_SRV_UEINFLOOK_001_BR To be tested
+
+- TC_MEC_SRV_UEINFLOOK_001_NF To be tested
+
### UEINFSUB
### UELOC
+
Draft ETSI GS MEC 013 V2.0.3 (2018-10)
https://forge.etsi.org/gitlab/mec/MEC-tests/blob/master/Test%20Purposes/SRV/UELOC/PlatUeLocationLookup.tplan2
-- TC_MEC_SRV_UELOC_001_OK Done
+- TC_MEC_SRV_UELOC_001_OK Done
-- TC_MEC_SRV_UELOC_001_BR To be tested
+- TC_MEC_SRV_UELOC_001_BR To be tested
-- TC_MEC_SRV_UELOC_001_NF To be tested
+- TC_MEC_SRV_UELOC_001_NF To be tested
### UELOCSUB
@@ -58,13 +69,13 @@ Draft ETSI GS MEC 013 V2.0.3 (2018-10)
https://forge.etsi.org/gitlab/mec/gs032p2-test-purposes/blob/remove-401s/Test%20Purposes/SRV/UELOCSUB/PlatUeLocationSubscription.tplan2
-- TC_MEC_SRV_UELOCSUB_001_OK Done
+- TC_MEC_SRV_UELOCSUB_001_OK Done
-- TC_MEC_SRV_UELOCSUB_001_BR Done
+- TC_MEC_SRV_UELOCSUB_001_BR Done
-- TC_MEC_SRV_UELOCSUB_002_OK Done
+- TC_MEC_SRV_UELOCSUB_002_OK Done
-- TC_MEC_SRV_UELOCSUB_002_NF Done
+- TC_MEC_SRV_UELOCSUB_002_NF Done
### UETAG
@@ -72,19 +83,19 @@ ETSI GS MEC 014 V1.1.1 (2018-02)
https://forge.etsi.org/gitlab/mec/gs032p2-test-purposes/blob/master/Test%20Purposes/SRV/UETAG/PlatUeIdentity.tplan2
-- TC_MEC_SRV_UETAG_001_OK To be tested
+- TC_MEC_SRV_UETAG_001_OK To be tested
-- TC_MEC_SRV_UETAG_001_BR To be tested
+- TC_MEC_SRV_UETAG_001_BR To be tested
-- TC_MEC_SRV_UETAG_001_NF To be tested
+- TC_MEC_SRV_UETAG_001_NF To be tested
-- TC_MEC_SRV_UETAG_002_OK To be tested
+- TC_MEC_SRV_UETAG_002_OK To be tested
-- TC_MEC_SRV_UETAG_002_BR To be tested
+- TC_MEC_SRV_UETAG_002_BR To be tested
-- TC_MEC_SRV_UETAG_002_NF Done
+- TC_MEC_SRV_UETAG_002_NF Done
-- TC_MEC_SRV_UETAG_002_PF Done
+- TC_MEC_SRV_UETAG_002_PF Done
### UETRACKSUB
@@ -92,11 +103,11 @@ Draft ETSI GS MEC 013 V2.0.3 (2018-10)
https://forge.etsi.org/gitlab/mec/gs032p2-test-purposes/blob/remove-401s/Test%20Purposes/SRV/UETRACKSUB/PlatUeTrackingSubscription.tplan2
-- TC_MEC_SRV_UETRACKSUB_001_OK To be tested
+- TC_MEC_SRV_UETRACKSUB_001_OK To be tested
-- TC_MEC_SRV_UETRACKSUB_001_BR To be tested
+- TC_MEC_SRV_UETRACKSUB_001_BR To be tested
-- TC_MEC_SRV_UETRACKSUB_002_OK To be tested
+- TC_MEC_SRV_UETRACKSUB_002_OK To be tested
-- TC_MEC_SRV_UETRACKSUB_002_NF To be tested
+- TC_MEC_SRV_UETRACKSUB_002_NF To be tested
diff --git a/ttcn/AtsMec/AtsMec_LocationAPI_TestCases.ttcn b/ttcn/AtsMec/AtsMec_LocationAPI_TestCases.ttcn
index 1368df4c513de479a9949c8777fcd7aa14873e9e..cb1af2cd7a1f17ac7ee658f566a6c95553a57867 100644
--- a/ttcn/AtsMec/AtsMec_LocationAPI_TestCases.ttcn
+++ b/ttcn/AtsMec/AtsMec_LocationAPI_TestCases.ttcn
@@ -665,4 +665,167 @@ module AtsMec_LocationAPI_TestCases {
} // End of group ueTrackSub
+ group ueInfLook {
+
+ /**
+ * @desc Check that the IUT responds with the information pertaining to one or more UEs in a particular location when queried by a MEC Application
+ * @see https://forge.etsi.org/gitlab/mec/gs032p2-test-purposes/blob/remove-401s/Test%20Purposes/SRV/UEINFLOOK/PlatUeInformationLookup.tplan2
+ */
+ testcase TC_MEC_SRV_UEINFLOOK_001_OK() runs on HttpComponent system HttpTestAdapter {
+ // Local variables
+ var HeaderLines v_headers;
+
+ // Test control
+ if (not(PICS_MEC_PLAT) or not(PICS_SERVICES) or not(PICS_LOCATION_API_SUPPORTED)) {
+ log("*** " & testcasename() & ": PICS_MEC_PLATand PICS_SERVICES and PICS_LOCATION_API_SUPPORTED required for executing the TC ***");
+ setverdict(inconc);
+ stop;
+ }
+
+ // Test component configuration
+ f_cf_01_http_up();
+
+ // Test adapter configuration
+
+ // Preamble
+ f_init_default_headers_list(-, -, v_headers);
+ httpPort.send(
+ m_http_request(
+ m_http_request_get(
+ "/" & PICS_ROOT_API & PX_ME_APP_Q_USERS_LIST_URI,
+ v_headers
+ )
+ )
+ );
+ f_selfOrClientSyncAndVerdict(c_prDone, e_success);
+
+ // Test Body
+ tc_ac.start;
+ alt {
+ [] httpPort.receive(
+ mw_http_response(
+ mw_http_response_ok(
+ mw_http_message_body_json(
+ mw_body_json_user_list(
+ mw_user_list(-, ?)
+ ))))) {
+ log("*** " & testcasename() & ": PASS: IUT successfully responds with a UserList ***");
+ f_selfOrClientSyncAndVerdict(c_tbDone, e_success);
+ }
+ [] tc_ac.timeout {
+ log("*** " & testcasename() & ": INCONC: Expected message not received ***");
+ f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout);
+ }
+ } // End of 'alt' statement
+
+ // Postamble
+ f_cf_01_http_down();
+ } // End of testcase TC_MEC_SRV_UEINFLOOK_001_OK
+
+ /**
+ * @desc Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application
+ * @see https://forge.etsi.org/gitlab/mec/gs032p2-test-purposes/blob/remove-401s/Test%20Purposes/SRV/UEINFLOOK/PlatUeInformationLookup.tplan2
+ */
+ testcase TC_MEC_SRV_UEINFLOOK_001_BR() runs on HttpComponent system HttpTestAdapter {
+ // Local variables
+ var HeaderLines v_headers;
+
+ // Test control
+ if (not(PICS_MEC_PLAT) or not(PICS_SERVICES) or not(PICS_LOCATION_API_SUPPORTED)) {
+ log("*** " & testcasename() & ": PICS_MEC_PLAT and PICS_SERVICES and PICS_LOCATION_API_SUPPORTED required for executing the TC ***");
+ setverdict(inconc);
+ stop;
+ }
+
+ // Test component configuration
+ f_cf_01_http_up();
+
+ // Test adapter configuration
+
+ // Preamble
+ f_init_default_headers_list(-, -, v_headers);
+ httpPort.send(
+ m_http_request(
+ m_http_request_get(
+ "/" & PICS_ROOT_API & PX_ME_APP_Q_USERS_LIST_URI & "/invalid/" & oct2char(unichar2oct(PX_USER, "UTF-8")),
+ v_headers
+ )
+ )
+ );
+ f_selfOrClientSyncAndVerdict(c_prDone, e_success);
+
+ // Test Body
+ tc_ac.start;
+ alt {
+ [] httpPort.receive(
+ mw_http_response(
+ mw_http_response_400_bad_request
+ )) {
+ log("*** " & testcasename() & ": PASS: IUT successfully responds 400 Bad Request ***");
+ f_selfOrClientSyncAndVerdict(c_tbDone, e_success);
+ }
+ [] tc_ac.timeout {
+ log("*** " & testcasename() & ": INCONC: Expected message not received ***");
+ f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout);
+ }
+ } // End of 'alt' statement
+
+ // Postamble
+ f_cf_01_http_down();
+ } // End of testcase TC_MEC_SRV_UEINFLOOK_001_BR
+
+ /**
+ * @desc Check that the IUT responds with an error when a request for an unknown URI is sent by a MEC Application
+ * @see https://forge.etsi.org/gitlab/mec/gs032p2-test-purposes/blob/remove-401s/Test%20Purposes/SRV/UEINFLOOK/PlatUeInformationLookup.tplan2
+ */
+ testcase TC_MEC_SRV_UEINFLOOK_001_NF() runs on HttpComponent system HttpTestAdapter {
+ // Local variables
+ var HeaderLines v_headers;
+
+ // Test control
+ if (not(PICS_MEC_PLAT) or not(PICS_SERVICES) or not(PICS_LOCATION_API_SUPPORTED)) {
+ log("*** " & testcasename() & ": PICS_MEC_PLAT and PICS_SERVICES and PICS_LOCATION_API_SUPPORTED required for executing the TC ***");
+ setverdict(inconc);
+ stop;
+ }
+
+ // Test component configuration
+ f_cf_01_http_up();
+
+ // Test adapter configuration
+
+ // Preamble
+ f_init_default_headers_list(-, -, v_headers);
+ httpPort.send(
+ m_http_request(
+ m_http_request_get(
+ "/" & PICS_ROOT_API & PX_ME_APP_Q_USERS_LIST_URI & "/" & oct2char(unichar2oct(PX_USER_UNKNOWN, "UTF-8")),
+ v_headers
+ )
+ )
+ );
+ f_selfOrClientSyncAndVerdict(c_prDone, e_success);
+
+ // Test Body
+ tc_ac.start;
+ alt {
+ [] httpPort.receive(
+ mw_http_response(
+ mw_http_response_404_not_found
+ )) {
+ log("*** " & testcasename() & ": PASS: IUT successfully responds 404 Not Found ***");
+ f_selfOrClientSyncAndVerdict(c_tbDone, e_success);
+ }
+ [] tc_ac.timeout {
+ log("*** " & testcasename() & ": INCONC: Expected message not received ***");
+ f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout);
+ }
+ } // End of 'alt' statement
+
+ // Postamble
+ f_cf_01_http_down();
+ } // End of testcase TC_MEC_SRV_UEINFLOOK_001_NF
+
+ } // End of group ueInfLook
+
} // End of module AtsMec_LocationAPI_TestCases
diff --git a/ttcn/AtsMec/AtsMec_TestControl.ttcn b/ttcn/AtsMec/AtsMec_TestControl.ttcn
index d4689ef1c802b055dc626a33effe23a45b3945aa..3822a14b45783ddbde1528beec6c26ccea833a11 100644
--- a/ttcn/AtsMec/AtsMec_TestControl.ttcn
+++ b/ttcn/AtsMec/AtsMec_TestControl.ttcn
@@ -15,7 +15,6 @@ module AtsMec_TestControl {
// AtsMec
import from AtsMec_LocationAPI_TestCases all;
import from AtsMec_UEidentityAPI_TestCases all;
- import from AtsMec_UEinformation_TestCases all;
import from AtsMec_RadioNodeLocationAPI_TestCases all;
import from AtsMec_RnisAPI_TestCases all;
import from AtsMec_BwManagementAPI_TestCases all;
@@ -45,7 +44,9 @@ module AtsMec_TestControl {
execute(TC_MEC_SRV_UETRACKSUB_002_OK());
execute(TC_MEC_SRV_UETRACKSUB_002_NF());
- execute(TC_MEC_PLAT_INFLOOK_001_OK());
+ execute(TC_MEC_SRV_UEINFLOOK_001_OK());
+ execute(TC_MEC_SRV_UEINFLOOK_001_BR());
+ execute(TC_MEC_SRV_UEINFLOOK_001_NF());
execute(TC_MEC_PLAT_RLOC_001_OK());
}
diff --git a/ttcn/AtsMec/AtsMec_UEinformation_TestCases.ttcn b/ttcn/AtsMec/AtsMec_UEinformation_TestCases.ttcn
index 3e16539b91d51a13a89f46038767d4046152f905..b542b197f085552739c1597ba99abbe6f4d3709d 100644
--- a/ttcn/AtsMec/AtsMec_UEinformation_TestCases.ttcn
+++ b/ttcn/AtsMec/AtsMec_UEinformation_TestCases.ttcn
@@ -38,10 +38,9 @@ module AtsMec_UEinformation_TestCases {
/**
* @desc Check that the IUT responds with the information pertaining to one or more UEs in a particular location when queried by a MEC Application
- * @see https://forge.etsi.org/gitlab/mec/MEC-tests/blob/master/Test%20Purposes/Plat/Mp1/UeInformation/PlatUeInformation.tplan2
- * @see https://forge.etsi.org/gitlab/mec/gs013-location-api/blob/master/LocationAPI.yaml#/definitions/UserList
+ * @see https://forge.etsi.org/gitlab/mec/gs032p2-test-purposes/blob/remove-401s/Test%20Purposes/SRV/UEINFLOOK/PlatUeInformationLookup.tplan2
*/
- testcase TC_MEC_PLAT_INFLOOK_001_OK() runs on HttpComponent system HttpTestAdapter {
+ testcase TC_MEC_SRV_UEINFLOOK_001_OK() runs on HttpComponent system HttpTestAdapter {
// Local variables
var HeaderLines v_headers;
var HttpMessage v_response;
@@ -91,7 +90,7 @@ module AtsMec_UEinformation_TestCases {
// Postamble
f_cf_01_http_down();
- } // End of testcase TC_MEC_PLAT_INFLOOK_001_OK
+ } // End of testcase TC_MEC_SRV_UEINFLOOK_001_OK
} // End of group me_app_role
diff --git a/ttcn/LibMec/LocationAPI/ttcn/LocationAPI_Pixits.ttcn b/ttcn/LibMec/LocationAPI/ttcn/LocationAPI_Pixits.ttcn
index 1bc32304471492d5d314f37b7775a8ff498e962c..d5c8ac30cfb9c5896607aca47247b8d2c298cd71 100644
--- a/ttcn/LibMec/LocationAPI/ttcn/LocationAPI_Pixits.ttcn
+++ b/ttcn/LibMec/LocationAPI/ttcn/LocationAPI_Pixits.ttcn
@@ -8,6 +8,8 @@ module LocationAPI_Pixits {
modulepar Address PX_USER := "acr:192.0.0.1";
+ modulepar Address PX_USER_UNKNOWN := "acr:192.0.0.200";
+
modulepar ClientCorrelator PX_CLIENT_ID := "0123";
modulepar ClientCorrelator PX_CLIENT_ID_UNKNOWN := "0666";