diff --git a/Readme.md b/Readme.md index b30ce234e2e0c34215349f0dbdf18dac97a68a98..68795e74344a5dd75661beb99cfde33a90bd6b62 100644 --- a/Readme.md +++ b/Readme.md @@ -17,7 +17,7 @@ For more information on ETSI TDL and the TOP Open Source project visit https://t ## How to report bugs or requests -Visit https://forge.etsi.org/bugzilla/describecomponents.cgi?product=MEC. +Visit https://forge.etsi.org/rep/mec/gs032p2-test-purposes/-/issues. ## Licensing information diff --git a/Test Purposes/.gitignore b/Test Purposes/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..e10e727be5ce2dc48c7d4d86a401a2744e73c8c1 --- /dev/null +++ b/Test Purposes/.gitignore @@ -0,0 +1 @@ +/.metadata/ diff --git a/Test Purposes/MEC009/MEX/ANY/CommonUnauthFailure_BI.tplan2 b/Test Purposes/MEC009/MEX/ANY/CommonUnauthFailure_BI.tplan2 index 3431bc7caf34f2758d16c65b3732a1a3a882215d..a3c70be3f56be4eaa00466c5f1071cd0dd398a34 100644 --- a/Test Purposes/MEC009/MEX/ANY/CommonUnauthFailure_BI.tplan2 +++ b/Test Purposes/MEC009/MEX/ANY/CommonUnauthFailure_BI.tplan2 @@ -1,5 +1,5 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters */ Package MEC_MEC009_MEX_ANY_BI { diff --git a/Test Purposes/MEC010p2/MEO/GRANT/Grant.tplan2 b/Test Purposes/MEC010p2/MEO/GRANT/Grant.tplan2 index 3bea6bec188bddcb9003bd038550998761098ec1..2a13facb9dbe8a99576eb0a385bbf8bc14a8ac87 100644 --- a/Test Purposes/MEC010p2/MEO/GRANT/Grant.tplan2 +++ b/Test Purposes/MEC010p2/MEO/GRANT/Grant.tplan2 @@ -1,5 +1,5 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters */ Package MEC_MEC010p2_MEO_GRANT { @@ -13,10 +13,9 @@ Package MEC_MEC010p2_MEO_GRANT { "Check that MEO sends a synchronous grant response when a grant request is requested - INSTANTIATE" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.5.1.3.1", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.4.2.2-1", //GrantRequest - "ETSI GS MEC 010-2 2.2.1, Table 6.2.4.2.2-1 Note 2", //GrantRequest - "ETSI GS MEC 010-2 2.2.1, Table 6.2.4.4.2-1" //Grant + "ETSI GS MEC 010-2 3.1.1, clause 7.5.1.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.4.2.2", //GrantRequest + "ETSI GS MEC 010-2 3.1.1, clause 6.2.4.4.2" //Grant Config Id Config_MEC_3 PICS Selection PIC_GRANTS_MANAGEMENT @@ -40,7 +39,10 @@ Package MEC_MEC010p2_MEO_GRANT { appDId set to any_value, operation set to INSTANTIATE, addResources set to INST_RESOURCES_LIST, - _links set to H_LINK + _links containing + appLcmOpOcc set to APP_LCM_OP_OCC_LINK, + appInstance set to APP_INSTANCE_LINK + ; ;;; from the MEPM entity } @@ -48,14 +50,17 @@ Package MEC_MEC010p2_MEO_GRANT { the IUT entity sends a HTTP_RESPONSE containing status set to "201 Created", headers containing - Location indicating value "{GRANTING_ID}" + Location set to "/granting/v1/grants/{GRANTING_ID}" body containing Grant containing id set to any_value, appInstanceId set to APP_INSTANCE_ID, appLcmOpOccId set to any_value, addResources set to INST_RESOURCES_LIST, - _links set to H_LINK + _links containing + appLcmOpOcc set to APP_LCM_OP_OCC_LINK, + appInstance set to APP_INSTANCE_LINK + ; ; ; ;; @@ -71,10 +76,9 @@ Package MEC_MEC010p2_MEO_GRANT { "Check that MEO responds with an error when it receives a malformed request when a new grant request is performed - INSTANTIATE" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.5.1.3.1", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.4.2.2-1", //GrantRequest - "ETSI GS MEC 010-2 2.2.1, Table 6.2.4.2.2-1 Note 2", //GrantRequest - "ETSI GS MEC 010-2 2.2.1, Table 6.2.4.4.2-1" //Grant + "ETSI GS MEC 010-2 3.1.1, clause 7.5.1.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.4.2.2", //GrantRequest + "ETSI GS MEC 010-2 3.1.1, clause 6.2.4.4.2" //Grant Config Id Config_MEC_3 @@ -98,7 +102,10 @@ Package MEC_MEC010p2_MEO_GRANT { appDId set to any_value, operationERROR set to INSTANTIATE, not addResources, - _links set to H_LINK + _links containing + appLcmOpOcc set to APP_LCM_OP_OCC_LINK, + appInstance set to APP_INSTANCE_LINK + ; ; ; ; from the MEPM entity @@ -119,9 +126,9 @@ Package MEC_MEC010p2_MEO_GRANT { "Check that MEO sends a synchronous grant response when a grant request is requested" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.5.1.3.1", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.4.2.2-1", //GrantRequest - "ETSI GS MEC 010-2 2.2.1, Table 6.2.4.4.2-1" //Grant + "ETSI GS MEC 010-2 3.1.1, clause 7.5.1.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.4.2.2", //GrantRequest + "ETSI GS MEC 010-2 3.1.1, clause 6.2.4.4.2" //Grant Config Id Config_MEC_3 PICS Selection PIC_GRANTS_MANAGEMENT @@ -144,7 +151,10 @@ Package MEC_MEC010p2_MEO_GRANT { appLcmOpOccId set to any_value, appDId set to any_value, operation set to OPERATION_TYPE, //Shall be one from - OPERATE - TERMINATE - _links set to H_LINK + _links containing + appLcmOpOcc set to APP_LCM_OP_OCC_LINK, + appInstance set to APP_INSTANCE_LINK + ; ;;; from the MEPM entity } @@ -158,7 +168,10 @@ Package MEC_MEC010p2_MEO_GRANT { id set to any_value, appInstanceId set to APP_INSTANCE_ID, appLcmOpOccId set to any_value, - _links set to H_LINK + _links containing + appLcmOpOcc set to APP_LCM_OP_OCC_LINK, + appInstance set to APP_INSTANCE_LINK + ; ; ; ;; @@ -175,10 +188,9 @@ Package MEC_MEC010p2_MEO_GRANT { "Check that MEO sends a asynchronous grant response when a grant request is requested - INSTANTIATE" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.5.1.3.1", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.4.2.2-1", //GrantRequest - "ETSI GS MEC 010-2 2.2.1, Table 6.2.4.2.2-1 Note 2", //GrantRequest - "ETSI GS MEC 010-2 2.2.1, Table 6.2.4.4.2-1" //Grant + "ETSI GS MEC 010-2 3.1.1, clause 7.5.1.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.4.2.2", //GrantRequest + "ETSI GS MEC 010-2 3.1.1, clause 6.2.4.4.2" //Grant Config Id Config_MEC_3 PICS Selection PIC_GRANTS_MANAGEMENT @@ -202,7 +214,10 @@ Package MEC_MEC010p2_MEO_GRANT { appDId set to any_value, operation set to INSTANTIATE, addResources set to INST_RESOURCES_LIST, - _links set to H_LINK + _links containing + appLcmOpOcc set to APP_LCM_OP_OCC_LINK, + appInstance set to APP_INSTANCE_LINK + ; ; ; ; @@ -226,9 +241,9 @@ Package MEC_MEC010p2_MEO_GRANT { "Check that MEO sends a asynchronous grant response when a grant request is requested" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.6.1.3.1", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.4.2.2-1", //GrantRequest - "ETSI GS MEC 010-2 2.2.1, Table 6.2.4.4.2-1" //Grant + "ETSI GS MEC 010-2 3.1.1, clause 7.5.1.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.4.2.2", //GrantRequest + "ETSI GS MEC 010-2 3.1.1, clause 6.2.4.4.2" //Grant Config Id Config_MEC_3 PICS Selection PIC_GRANTS_MANAGEMENT @@ -251,10 +266,13 @@ Package MEC_MEC010p2_MEO_GRANT { appLcmOpOccId set to any_value, appDId set to any_value, operation set to OPERATION_TYPE, //Shall be one from - OPERATE - TERMINATE - _links set to H_LINK - ; + _links containing + appLcmOpOcc set to APP_LCM_OP_OCC_LINK, + appInstance set to APP_INSTANCE_LINK + ; ; ; + ; from the MEPM entity } then { @@ -267,23 +285,25 @@ Package MEC_MEC010p2_MEO_GRANT { } } } - - Test Purpose { + + + Test Purpose { TP Id "TP_MEC_MEC010p2_MEO_GRANT_005_OK" Test objective - "Check that MEO sends the status of a grant request when a query on a granting ID is performed" + "Check that MEO sends the status of a grant request when a query on a granting ID is performed" - Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.5.2.3.2", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.4.4.2-1" + Reference + "ETSI GS MEC 010-2 3.1.1, clause 7.5.2.3.2", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.4.4.2" Config Id Config_MEC_3 PICS Selection PIC_GRANTS_MANAGEMENT Initial conditions with { the IUT entity having a grant containing - id indicating value GRANTING_ID; + id indicating value GRANTING_ID, + link indicating value H_LINK; } Expected behaviour @@ -296,33 +316,35 @@ Package MEC_MEC010p2_MEO_GRANT { } then { the IUT entity sends a HTTP_RESPONSE containing - status set to "202 Accepted", - headers containing - Location set to "/granting/v1/grants/{GRANTING_ID}" - ; + status set to "200 OK", + body containing + Grant containing + id set to GRANTING_ID, + appInstanceId set to any_value, + appLcmOpOccId set to any_value, + _links set to H_LINK + ; + ; ; to the MEPM entity } } - } - + } Test Purpose { TP Id "TP_MEC_MEC010p2_MEO_GRANT_006_OK" Test objective - "Check that MEO sends the status of a grant request when a query on a granting ID is performed" + "Check that MEO sends the status of a grant request when a query on a granting ID is performed" - Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.5.2.3.2", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.4.4.2-1" + Reference + "ETSI GS MEC 010-2 3.1.1, clause 7.5.2.3.2" Config Id Config_MEC_3 PICS Selection PIC_GRANTS_MANAGEMENT Initial conditions with { the IUT entity having a grant containing - id indicating value GRANTING_ID, - link indicating value H_LINK; + id indicating value GRANTING_ID; } Expected behaviour @@ -335,19 +357,17 @@ Package MEC_MEC010p2_MEO_GRANT { } then { the IUT entity sends a HTTP_RESPONSE containing - status set to "200 OK", - body containing - Grant containing - id set to GRANTING_ID, - appInstanceId set to any_value, - appLcmOpOccId set to any_value, - _links set to H_LINK - ; - ; + status set to "202 Accepted", + headers containing + Location set to "/granting/v1/grants/{GRANTING_ID}" + ; ; to the MEPM entity } } - } + } + + + Test Purpose { TP Id "TP_MEC_MEC010p2_MEO_GRANT_006_NF" @@ -356,7 +376,7 @@ Package MEC_MEC010p2_MEO_GRANT { "Check that MEO responds with an error when it receives a request for returning a grant referred with a wrong ID" - Reference "ETSI GS MEC 010-2 2.1.1, clause 7.5.2.3.2" + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.5.2.3.2" Config Id Config_MEC_3 PICS Selection PIC_GRANTS_MANAGEMENT diff --git a/Test Purposes/MEC010p2/MEO/PKGM/AppPkgMgt.tplan2 b/Test Purposes/MEC010p2/MEO/PKGM/AppPkgMgt.tplan2 index 339b5d1c97932c0482e3f1a6c81476c7e833e07a..0422524dd31123621e1de5ae77041d33f32b497a 100644 --- a/Test Purposes/MEC010p2/MEO/PKGM/AppPkgMgt.tplan2 +++ b/Test Purposes/MEC010p2/MEO/PKGM/AppPkgMgt.tplan2 @@ -1,5 +1,5 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters */ Package MEC_MEC010p2_MEO_PKGM { @@ -14,9 +14,9 @@ Package MEC_MEC010p2_MEO_PKGM { Test objective "Check that MEO creates a new App Package when requested" - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.3.1.3.1", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.3.3.2-1", // AppPkgInfo - "ETSI GS MEC 010-2 2.2.1, Table 6.2.3.2.2-1" // CreateAppPkg + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.3.1.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.3.2.2", // CreateAppPkg + "ETSI GS MEC 010-2 3.1.1, clause 6.2.3.3.2" // AppPkgInfo Config Id Config_MEC_2 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -51,16 +51,16 @@ Package MEC_MEC010p2_MEO_PKGM { appSoftwareVersion set to any_value, appDVersion set to APP_PKG_VERSION, checksum set to CHECKSUM, - softwareImages, + softwareImages set to SW_IMAGES, //See Note 1 onboardingState set to "CREATED", operationalState set to "ENABLED", usageState set to "NOT_IN_USE", - mecInfo + mecInfo set to ARRAY_OF_MEC_INFO_COMPATIBLE_VERSIONS, _links containing self set to any_value, appD set to any_value, - appPkgContent set to any_value, - not vnfPkgInfo // See Note 3 + appPkgContent set to any_value + // No vnfPkgInfo See Note 3 ; ; ; @@ -76,8 +76,9 @@ Package MEC_MEC010p2_MEO_PKGM { "Check that MEO responds with an error when it receives a malformed request for creating a new App Package" - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.3.1.3.1", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.3.2.2-1" + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.3.1.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.3.2.2" // CreateAppPkg + Config Id Config_MEC_2 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -92,7 +93,7 @@ Package MEC_MEC010p2_MEO_PKGM { uri indicating value "/app_pkgm/v1/app_packages", body containing CreateAppPkg containing - appPkgName set to "", + appPkgNameERR set to APP_PKG_NAME, //Wrong parameter name appPkgVersion set to APP_PKG_VERSION, checksum set to CHECKSUM, appPkgPath set to APP_PKG_PATH @@ -115,9 +116,9 @@ Package MEC_MEC010p2_MEO_PKGM { "Check that MEO returns the list of App packages when requested - Note 3" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.1.3.2", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.3.3.2-1", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.3.3.2-1 Note 3" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.1.3.2", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.3.3.2", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.3.3.2" Config Id Config_MEC_2 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -148,16 +149,16 @@ Package MEC_MEC010p2_MEO_PKGM { appSoftwareVersion set to any_value, appDVersion set to any_value, checksum set to any_value, - softwareImages, - onboardingState, + softwareImages set to SW_IMAGES, //See Note 1 + onboardingState set to "CREATED", operationalState set to any_value, usageState set to any_value, - mecInfo, + mecInfo set to ARRAY_OF_MEC_INFO_COMPATIBLE_VERSIONS, _links containing self set to any_value, appD set to any_value, - appPkgContent set to any_value, - not vnfPkgInfo // See Note 3 + appPkgContent set to any_value + // See Note 3 ; ; ; @@ -175,9 +176,8 @@ Package MEC_MEC010p2_MEO_PKGM { "Check that MEO returns the list of on-boarded packages when requested - Note 3" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.1.3.2", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.3.3.2-1", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.3.3.2-1 Note 3" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.1.3.2", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.3.3.2" //AppPkgInfo Config Id Config_MEC_2 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -208,16 +208,16 @@ Package MEC_MEC010p2_MEO_PKGM { appSoftwareVersion set to any_value, appDVersion set to any_value, checksum set to any_value, - softwareImages, - onboardingState, + softwareImages set to SW_IMAGES, //See Note 1 + onboardingState set to "CREATED", operationalState set to any_value, usageState set to any_value, - mecInfo, - _links containing - self set to any_value, - appD set to any_value, - appPkgContent set to any_value, - not vnfPkgInfo // See Note 3 + mecInfo set to ARRAY_OF_MEC_INFO_COMPATIBLE_VERSIONS, + _links containing + self set to app_pkgm/v1/app_packages/APP_PKG_ID, + appD set to app_packages/APP_PKG_ID/onboarded_app_packages/ON_BOARDED_APPD_ID, + appPkgContent set to app_packages/APP_PKG_ID/onboarded_app_packages/ON_BOARDED_APPD_ID/package_content + // See Note 3 ; ; ; @@ -235,8 +235,8 @@ Package MEC_MEC010p2_MEO_PKGM { "Check that MEO responds with an error when it receives a malformed request for retrieving the list of existing App Packages" - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.3.1.3.2", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.3.3.2-1" + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.3.1.3.2", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.3.3.2" Config Id Config_MEC_2 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -250,7 +250,7 @@ Package MEC_MEC010p2_MEO_PKGM { the IUT entity receives a vGET containing uri indicating value "/app_pkgm/v1/app_packages", query_parameters containing - operationalStatus indicating value any_value // the query parameter should be operationalState not operationalStatus + operationalStatus indicating value any_value // the query parameter should be operationalState not operationalStatus ; ; from the MEC_OSS entity } @@ -269,9 +269,8 @@ Package MEC_MEC010p2_MEO_PKGM { "Check that MEO returns the an App Package when requested - Note 3" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.2.3.2", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.3.3.2-1", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.3.3.2-1 Note 3" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.2.3.2", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.3.3.2" Config Id Config_MEC_2 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -301,16 +300,16 @@ Package MEC_MEC010p2_MEO_PKGM { appSoftwareVersion set to any_value, appDVersion set to any_value, checksum set to any_value, - softwareImages, - onboardingState, + softwareImages set to SW_IMAGES, //See Note 1 + onboardingState set to "CREATED", operationalState set to any_value, usageState set to any_value, - mecInfo, + mecInfo set to ARRAY_OF_MEC_INFO_COMPATIBLE_VERSIONS, _links containing - self set to any_value, - appD set to any_value, - appPkgContent set to any_value, - not vnfPkgInfo // See Note 3 + self set to app_pkgm/v1/app_packages/APP_PKG_ID, + appD set to app_packages/APP_PKG_ID/onboarded_app_packages/ON_BOARDED_APPD_ID, + appPkgContent set to app_packages/APP_PKG_ID/onboarded_app_packages/ON_BOARDED_APPD_ID/package_content + // See Note 3 ; ; ; @@ -327,9 +326,8 @@ Package MEC_MEC010p2_MEO_PKGM { "Check that MEO returns the an on-boarded package when requested - Note 3" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.2.3.2", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.3.3.2-1", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.3.3.2-1 Note 3" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.2.3.2", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.3.3.2" Config Id Config_MEC_2 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -363,12 +361,16 @@ Package MEC_MEC010p2_MEO_PKGM { onboardingState, operationalState set to any_value, usageState set to any_value, - mecInfo, + mecInfo set to ARRAY_OF_MEC_INFO_COMPATIBLE_VERSIONS, + softwareImages set to SW_IMAGES, //See Note 1 + onboardingState set to "CREATED", + operationalState set to any_value, + usageState set to any_value, _links containing - self set to any_value, - appD set to any_value, - appPkgContent set to any_value, - not vnfPkgInfo // See Note 3 + self set to app_pkgm/v1/app_packages/APP_PKG_ID, + appD set to app_packages/APP_PKG_ID/onboarded_app_packages/ON_BOARDED_APPD_ID, + appPkgContent set to app_packages/APP_PKG_ID/onboarded_app_packages/ON_BOARDED_APPD_ID/package_content + // See Note 3 ; ; ; @@ -385,8 +387,8 @@ Package MEC_MEC010p2_MEO_PKGM { "Check that MEO responds with an error when it receives a request for retrieving a App Package referred with a wrong ID" - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.3.2.3.2", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.3.3.2-1" + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.3.2.3.2", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.3.3.2" Config Id Config_MEC_2 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -417,7 +419,7 @@ Package MEC_MEC010p2_MEO_PKGM { Test objective "Check that MEO deletes an App Package when requested" - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.3.2.3.4" + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.3.2.3.4" Config Id Config_MEC_2 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -449,8 +451,7 @@ Package MEC_MEC010p2_MEO_PKGM { "Check that MEO responds with an error when it receives a request for deleting an App Package referred with a wrong ID" - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.3.2.3.4", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.3.3.2-1" + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.3.2.3.4" Config Id Config_MEC_2 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -481,8 +482,8 @@ Package MEC_MEC010p2_MEO_PKGM { Test objective "Check that MEO updates the operational state of an individual application package resource" - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.3.2.3.5" - + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.3.2.3.5", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.3.8.2" //AppPkgInfoModifications Config Id Config_MEC_2 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -526,7 +527,8 @@ Package MEC_MEC010p2_MEO_PKGM { "Check that MEO sends an error when it receives a malformed request to modify the operational state of an application package" - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.3.2.3.5" + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.3.2.3.5", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.3.8.2" //AppPkgInfoModifications Config Id Config_MEC_2 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -566,8 +568,8 @@ Package MEC_MEC010p2_MEO_PKGM { "Check that MEO responds with an error when it receives a request for updating an App Package referred with a wrong ID" - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.3.2.3.5", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.3.3.2-1" + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.3.2.3.5", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.3.8.2" //AppPkgInfoModifications Config Id Config_MEC_2 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -605,10 +607,10 @@ Package MEC_MEC010p2_MEO_PKGM { "Check that MEO service returns an application package subscription when requested" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.3.3.1", - "ETSI GS MEC 010-2 2.2.1, clause 6.2.3.4", - "ETSI GS MEC 010-2 2.2.1, clause 6.2.3.7" - + "ETSI GS MEC 010-2 3.1.1, clause 7.3.3.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.3.7", //Type: AppPkgSubscription + "ETSI GS MEC 010-2 3.1.1, clause 6.2.3.4" //Type: AppPkgSubscriptionInfo + Config Id Config_MEC_2 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -624,7 +626,7 @@ Package MEC_MEC010p2_MEO_PKGM { body containing AppPkgSubscription containing callbackUri set to URI, - subscriptionType set to SUBSCRIPTION_TYPE + subscriptionType set to SUBSCRIPTION_TYPE //It could be either AppPackageOnBoardingSubscription or AppPackageChangeSubscription or AppPackageDeletionSubscription ; ; ; @@ -636,7 +638,7 @@ Package MEC_MEC010p2_MEO_PKGM { body containing AppPkgSubscriptionInfo containing subscriptionId set to any_value, - subscriptionType set to SUBSCRIPTION_TYPE, + subscriptionType set to SUBSCRIPTION_TYPE, callbackUri set to URI, _links ; @@ -655,9 +657,9 @@ Package MEC_MEC010p2_MEO_PKGM { malformed request for creating a new subscription on AppPackages" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.4.3.1", - "ETSI GS MEC 010-2 2.2.1, clause 6.2.3.4", - "ETSI GS MEC 010-2 2.2.1, clause 6.2.3.7" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.3.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.3.7.2", //AppPkgSubscription + "ETSI GS MEC 010-2 3.1.1, clause 6.2.3.4.2" //AppPkgSubscriptionInfo Config Id Config_MEC_2 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -689,15 +691,14 @@ Package MEC_MEC010p2_MEO_PKGM { } Test Purpose { - TP Id "TP_MEC_MEC010p2_MEO_PKGM_007_OK" + TP Id "TP_MEC_MEC010p2_MEO_PKGM_007_OK_01" Test objective "Check that MEO service returns the list of Application Package Subscriptions when requested" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.3.3.2", - "ETSI GS MEC 010-2 2.2.1, clause 6.2.3.4", - "ETSI GS MEC 010-2 2.2.1, clause 6.2.3.7" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.3.3.2", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.3.5.2" //AppPkgSubscriptionLinkList Config Id Config_MEC_2 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -726,7 +727,55 @@ Package MEC_MEC010p2_MEO_PKGM { self indicating value any_value, subscriptions containing href set to "/app_pkgm/v1/subscriptions/{SUBSCRIPTION_ID}", - subscriptionType indicating value any_value + subscriptionType indicating value SUBSCRIPTION_TYPE //It must be either AppPackageOnBoardingSubscription or + //AppPackageChangeSubscription or AppPackageDeletionSubscription + ; + ; + ; + ; + ; + ; + to the MEC_OSS entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEO_PKGM_007_OK_02" + + Test objective + "Check that MEO service returns an empty list of Application Package Subscriptions when requested" + + Reference + "ETSI GS MEC 010-2 3.1.1, clause 7.3.3.3.2", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.3.5.2" //AppPkgSubscriptionLinkList + + Config Id Config_MEC_2 + PICS Selection PIC_APP_PACKAGE_MANAGEMENT + + Initial conditions with { + the IUT entity not having a Subscription + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/app_pkgm/v1/subscriptions" + ; + from the MEC_OSS entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "200 OK", + body containing + AppPkgSubscriptionLinkList containing + AppPkgSubscriptionInfo containing + links containing + self indicating value any_value, + subscriptions containing + href set to "/app_pkgm/v1/subscriptions/{SUBSCRIPTION_ID}", + subscriptionType set to omit ; ; ; @@ -745,8 +794,8 @@ Package MEC_MEC010p2_MEO_PKGM { "Check that MEO service returns an Application Package Subscription when requested" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.4.3.2", - "ETSI GS MEC 010-2 2.2.1, clause 6.2.3.4" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.4.3.2", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.3.4.2" //AppPkgSubscriptionInfo Config Id Config_MEC_2 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -771,7 +820,7 @@ Package MEC_MEC010p2_MEO_PKGM { body containing AppPkgSubscriptionInfo containing subscriptionId set to SUBSCRIPTION_ID, - subscriptionType set to any_value, + subscriptionType indicating value SUBSCRIPTION_TYPE, //It must be either AppPackageOnBoardingSubscription or AppPackageChangeSubscription or AppPackageDeletionSubscription callbackUri set to any_value, _links containing self set to "/app_pkgm/v1/subscriptions/{SUBSCRIPTION_ID}" @@ -792,9 +841,8 @@ Package MEC_MEC010p2_MEO_PKGM { with a wrong identifier" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.4.3.2", - "ETSI GS MEC 010-2 2.2.1, clause 6.2.3.4", - "ETSI GS MEC 010-2 2.2.1, clause 6.2.3.7" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.4.3.2", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.3.4.2" //AppPkgSubscriptionInfo Config Id Config_MEC_2 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -830,7 +878,7 @@ Package MEC_MEC010p2_MEO_PKGM { "Check that MEO service deletes an Application Package Subscription when requested" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.4.3.4" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.4.3.4" Config Id Config_MEC_2 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -866,9 +914,7 @@ Package MEC_MEC010p2_MEO_PKGM { with a wrong identifier" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.4.3.4", - "ETSI GS MEC 010-2 2.2.1, clause 6.2.3.4", - "ETSI GS MEC 010-2 2.2.1, clause 6.2.3.7" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.4.3.4" Config Id Config_MEC_2 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -905,8 +951,8 @@ Package MEC_MEC010p2_MEO_PKGM { if the MEO service has an associated subscription and the event is generated" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.5.3.1", - "ETSI GS MEC 010-2 2.2.1, clause 6.2.3.6" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.5.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.3.6.2" //AppPkgNotification Config Id Config_MEC_2 PICS Selection PIC_APP_PACKAGE_NOTIFICATIONS @@ -914,9 +960,11 @@ Package MEC_MEC010p2_MEO_PKGM { Initial conditions with { the IUT entity having a Subscription containing subscriptionId set to SUBSCRIPTION_ID, - subscriptionType set to SUBSCRIPTION_TYPE, + subscriptionType set to AppPackageOnBoardingSubscription, callbackUri set to CALLBACK_URI, - _links + _links containing + self set to "/app_pkgm/v1/subscriptions/{SUBSCRIPTION_ID}" + ; ; } @@ -932,7 +980,7 @@ Package MEC_MEC010p2_MEO_PKGM { body containing AppPkgNotification containing notificationId set to NOTIFICATION_ID, - notificationType indicating value any_value, + notificationType indicating value AppPackageOnBoarded, subscriptionId set to SUBSCRIPTION_ID, timeStamp set to any_value, appPkgId set to any_value, @@ -955,7 +1003,8 @@ Package MEC_MEC010p2_MEO_PKGM { "Check that MEO reads the content of the AppD of on-boarded individual application package resources when requested" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.6.3.2" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.6.3.2", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.1.2.2" //AppD Config Id Config_MEC_2 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -988,6 +1037,8 @@ Package MEC_MEC010p2_MEO_PKGM { } } + + Test Purpose { TP Id "TP_MEC_MEC010p2_MEO_PKGM_011_NF" //Negative case 404 Not found @@ -995,8 +1046,8 @@ Package MEC_MEC010p2_MEO_PKGM { "Check that MEO responds with an error when it receives a request to retrieve an application descriptor referred with a wrong app package ID" - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.3.6.3.2", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.3.3.2-1" //OnboardedAppPkgInfo + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.3.6.3.2" + Config Id Config_MEC_2 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -1009,7 +1060,7 @@ Package MEC_MEC010p2_MEO_PKGM { Expected behaviour ensure that { when { - the IUT entity receives a vPUT containing + the IUT entity receives a vGET containing uri indicating value "/app_pkgm/v1/app_packages/{NON_EXISTENT_APP_PKG_ID}/appd" ; from the MEC_OSS entity } @@ -1021,6 +1072,7 @@ Package MEC_MEC010p2_MEO_PKGM { } } + Test Purpose { TP Id "TP_MEC_MEC010p2_MEO_PKGM_012_01_OK" @@ -1028,7 +1080,7 @@ Package MEC_MEC010p2_MEO_PKGM { "Check that MEO fetches the application package content identified by appPkgId when requested" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.7.3.2" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.7.3.2" Config Id Config_MEC_2 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -1068,7 +1120,7 @@ Package MEC_MEC010p2_MEO_PKGM { "Check that MEO fetches the on-boarded application package content identified by appDId when requested" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.7.3.2" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.7.3.2" Config Id Config_MEC_2 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -1108,7 +1160,7 @@ Package MEC_MEC010p2_MEO_PKGM { "Check that MEO service sends an error when it receives a malformed request" - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.3.7.3.2" + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.3.7.3.2" Config Id Config_MEC_2 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -1139,10 +1191,10 @@ Package MEC_MEC010p2_MEO_PKGM { TP Id "TP_MEC_MEC010p2_MEO_PKGM_012_01_NF" Test objective - "Check that MEO service sends an error when it receives a request refering a wrong appPkgId" + "Check that MEO service sends an error when it receives a request referring a wrong appPkgId" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.7.3.2" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.7.3.2" Config Id Config_MEC_2 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -1176,10 +1228,10 @@ Package MEC_MEC010p2_MEO_PKGM { TP Id "TP_MEC_MEC010p2_MEO_PKGM_012_02_NF" Test objective - "Check that MEO service sends an error when it receives a request refering a wrong on-boarded appPkgId" + "Check that MEO service sends an error when it receives a request referring a wrong on-boarded appPkgId" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.7.3.2" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.7.3.2" Config Id Config_MEC_2 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -1216,8 +1268,8 @@ Package MEC_MEC010p2_MEO_PKGM { "Check that MEO accepts application package when submitted" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.7.3.3", - "ETSI GS MEC 010-2 2.2.1, clause 6.2.1.2" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.7.3.3", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.1.2" Config Id Config_MEC_2 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -1255,8 +1307,8 @@ Package MEC_MEC010p2_MEO_PKGM { "Check that MEO service sends an error when it receives a query to accept an application package with a wrong identifier" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.7.3.3", - "ETSI GS MEC 010-2 2.2.1, clause 6.2.1.2" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.7.3.3", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.1.2" Config Id Config_MEC_2 PICS Selection PIC_APP_PACKAGE_MANAGEMENT diff --git a/Test Purposes/MEC010p2/MEPM/LCM/PlatformConfiguration.tplan2 b/Test Purposes/MEC010p2/MEPM/LCM/PlatformConfiguration.tplan2 index 659b160a3c1bff70a790859146a051e68790b14b..3aaa7f4d9169c9c9f7b8fb4d8524b26fe6c9cb7b 100644 --- a/Test Purposes/MEC010p2/MEPM/LCM/PlatformConfiguration.tplan2 +++ b/Test Purposes/MEC010p2/MEPM/LCM/PlatformConfiguration.tplan2 @@ -1,8 +1,8 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters */ -Package MEC_MEC010p2_APP_INSTANCE_LCM { +Package MEC_MEC010p2_MEPM_APP_INSTANCE_LCM { import all from MEC_Common; @@ -13,8 +13,8 @@ Package MEC_MEC010p2_APP_INSTANCE_LCM { "Check that MEC API provider has created the configuration information in AppD to the MEPM-V" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.7.6.3.1", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.2.21.2-1" //ConfigPlatformForAppRequest + "ETSI GS MEC 010-2 3.1.1, clause 7.7.6.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.21.2" //ConfigPlatformForAppRequest Config Id Config_MEC_5 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -34,7 +34,10 @@ Package MEC_MEC010p2_APP_INSTANCE_LCM { } then { the IUT entity sends a HTTP_RESPONSE containing - status set to "202 Accepted" + status set to "202 Accepted", + headers containing + Location set to "/app_lcm/v1/app_lcm_op_occs/APP_LCM_OP_OCC_ID" + ; ; to the MEO entity } @@ -49,8 +52,8 @@ Package MEC_MEC010p2_APP_INSTANCE_LCM { for the configuration information in AppD to the MEPM-V" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.7.6.3.1", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.2.21.2-1" //ConfigPlatformForAppRequest + "ETSI GS MEC 010-2 3.1.1, clause 7.7.6.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.21.2" //ConfigPlatformForAppRequest Config Id Config_MEC_5 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -86,8 +89,8 @@ Package MEC_MEC010p2_APP_INSTANCE_LCM { for the configuration information in AppD to the MEPM-V with not valid app instance ID" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.7.6.3.1", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.2.21.2-1" //ConfigPlatformForAppRequest + "ETSI GS MEC 010-2 3.1.1, clause 7.7.6.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.21.2" //ConfigPlatformForAppRequest Config Id Config_MEC_5 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -105,7 +108,7 @@ Package MEC_MEC010p2_APP_INSTANCE_LCM { uri indicating value "/app_lcm/v1/app_instances/{NOT_EXISTING_APP_ID}/configure_platform_for_app", body containing ConfigPlatformForAppRequest containing - appServiceWrongRequired set to some_values //Wrong Param + appServiceRequired set to some_values ; ; ; diff --git a/Test Purposes/MEC010p2/MEPM/PKGM/AppPkgMgt.tplan2 b/Test Purposes/MEC010p2/MEPM/PKGM/AppPkgMgt.tplan2 index c43822c83f961be80d9f5a2bab4a031518851b58..907ff288a01bfbe2dbedd6b5722be148da001540 100644 --- a/Test Purposes/MEC010p2/MEPM/PKGM/AppPkgMgt.tplan2 +++ b/Test Purposes/MEC010p2/MEPM/PKGM/AppPkgMgt.tplan2 @@ -1,5 +1,5 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters */ Package MEC_MEC010p2_MEPM_PKGM { @@ -13,9 +13,8 @@ Package MEC_MEC010p2_MEPM_PKGM { "Check that MEPM returns the list of App Packages when requested - Note 3" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.1.3.2", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.3.3.2-1", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.3.3.2-1 Note 3" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.1.3.2", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.3.3.2" //AppPkgInfo Config Id Config_MEC_5 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -46,16 +45,17 @@ Package MEC_MEC010p2_MEPM_PKGM { appSoftwareVersion set to any_value, appDVersion set to any_value, checksum set to any_value, - softwareImages, - onboardingState, + softwareImages set to SW_IMAGES, //See Note 1 + onboardingState set to "CREATED", operationalState set to any_value, usageState set to any_value, - mecInfo, + mecInfo set to ARRAY_OF_MEC_INFO_COMPATIBLE_VERSIONS, _links containing - self set to any_value, - appD set to any_value, - appPkgContent set to any_value, - not vnfPkgInfo // See Note 3 + self set to app_pkgm/v1/app_packages/APP_PKG_ID, + appD set to app_packages/APP_PKG_ID/onboarded_app_packages/ON_BOARDED_APPD_ID, + appPkgContent set to app_packages/APP_PKG_ID/onboarded_app_packages/ON_BOARDED_APPD_ID/package_content + // See Note 3 + ; ; ; @@ -73,9 +73,8 @@ Package MEC_MEC010p2_MEPM_PKGM { "Check that MEPM returns the list of on-boarded App Packages when requested - Note 3" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.1.3.2", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.3.3.2-1", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.3.3.2-1 Note 3" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.1.3.2", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.3.3.2" //AppPkgInfo Config Id Config_MEC_5 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -106,16 +105,16 @@ Package MEC_MEC010p2_MEPM_PKGM { appSoftwareVersion set to any_value, appDVersion set to any_value, checksum set to any_value, - softwareImages, - onboardingState, + softwareImages set to SW_IMAGES, //See Note 1 + onboardingState set to "CREATED", operationalState set to any_value, usageState set to any_value, - mecInfo, + mecInfo set to ARRAY_OF_MEC_INFO_COMPATIBLE_VERSIONS, _links containing - self set to any_value, - appD set to any_value, - appPkgContent set to any_value, - not vnfPkgInfo // See Note 3 + self set to app_pkgm/v1/app_packages/APP_PKG_ID, + appD set to app_packages/APP_PKG_ID/onboarded_app_packages/ON_BOARDED_APPD_ID, + appPkgContent set to app_packages/APP_PKG_ID/onboarded_app_packages/ON_BOARDED_APPD_ID/package_content + // See Note 3 ; ; ; @@ -134,9 +133,7 @@ Package MEC_MEC010p2_MEPM_PKGM { a malformed request for requesting the list of existing App Packages" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.1.3.2", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.3.3.2-1", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.3.3.2-1 Note 3" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.1.3.2" Config Id Config_MEC_5 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -172,9 +169,8 @@ Package MEC_MEC010p2_MEPM_PKGM { "Check that MEPM returns the an App Package when requested - Note 3" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.2.3.2", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.3.3.2-1", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.3.3.2-1 Note 3" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.2.3.2", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.3.3.2" //AppPkgInfo Config Id Config_MEC_5 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -204,16 +200,16 @@ Package MEC_MEC010p2_MEPM_PKGM { appSoftwareVersion set to any_value, appDVersion set to any_value, checksum set to any_value, - softwareImages, - onboardingState, + softwareImages set to SW_IMAGES, //See Note 1 + onboardingState set to "CREATED", operationalState set to any_value, usageState set to any_value, - mecInfo, + mecInfo set to ARRAY_OF_MEC_INFO_COMPATIBLE_VERSIONS, _links containing - self set to any_value, - appD set to any_value, - appPkgContent set to any_value, - not vnfPkgInfo // See Note 3 + self set to app_pkgm/v1/app_packages/APP_PKG_ID, + appD set to app_packages/APP_PKG_ID/onboarded_app_packages/ON_BOARDED_APPD_ID, + appPkgContent set to app_packages/APP_PKG_ID/onboarded_app_packages/ON_BOARDED_APPD_ID/package_content + // See Note 3 ; ; ; @@ -230,9 +226,8 @@ Package MEC_MEC010p2_MEPM_PKGM { "Check that MEPM returns the an App Package when requested - Note 3" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.2.3.2", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.3.3.2-1", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.3.3.2-1 Note 3" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.2.3.2", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.3.3.2" //AppPkgInfo Config Id Config_MEC_5 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -262,16 +257,16 @@ Package MEC_MEC010p2_MEPM_PKGM { appSoftwareVersion set to any_value, appDVersion set to any_value, checksum set to any_value, - softwareImages, - onboardingState, + softwareImages set to SW_IMAGES, //See Note 1 + onboardingState set to "CREATED", operationalState set to any_value, usageState set to any_value, - mecInfo, + mecInfo set to ARRAY_OF_MEC_INFO_COMPATIBLE_VERSIONS, _links containing - self set to any_value, - appD set to any_value, - appPkgContent set to any_value, - not vnfPkgInfo // See Note 3 + self set to app_pkgm/v1/app_packages/APP_PKG_ID, + appD set to app_packages/APP_PKG_ID/onboarded_app_packages/ON_BOARDED_APPD_ID, + appPkgContent set to app_packages/APP_PKG_ID/onboarded_app_packages/ON_BOARDED_APPD_ID/package_content + // See Note 3 ; ; ; @@ -289,9 +284,7 @@ Package MEC_MEC010p2_MEPM_PKGM { a request for returning a App Package referred with a wrong ID" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.2.3.2", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.3.3.2-1", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.3.3.2-1 Note 3" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.2.3.2" Config Id Config_MEC_5 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -326,9 +319,9 @@ Package MEC_MEC010p2_MEPM_PKGM { "Check that MEPM service returns an application package subscription when requested" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.3.3.1", - "ETSI GS MEC 010-2 2.2.1, clause 6.2.3.4", - "ETSI GS MEC 010-2 2.2.1, clause 6.2.3.7" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.3.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.3.7.2", //AppPkgSubscription + "ETSI GS MEC 010-2 3.1.1, clause 6.2.3.4.2" //AppPkgSubscriptionInfo Config Id Config_MEC_5 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -368,6 +361,7 @@ Package MEC_MEC010p2_MEPM_PKGM { } } + Test Purpose { TP Id "TP_MEC_MEC010p2_MEPM_PKGM_003_BR" @@ -375,7 +369,7 @@ Package MEC_MEC010p2_MEPM_PKGM { "Check that MEPM service sends an error when it receives a malformed request for creating a new subscription on AppPackages" - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.3.3.3.1" + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.3.3.3.1" Config Id Config_MEC_2 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -414,9 +408,8 @@ Package MEC_MEC010p2_MEPM_PKGM { "Check that MEPM service returns the list of Application Package Subscriptions when requested" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.3.3.2", - "ETSI GS MEC 010-2 2.2.1, clause 6.2.3.4", - "ETSI GS MEC 010-2 2.2.1, clause 6.2.3.7" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.3.3.2", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.3.5.2" //AppPkgSubscriptionLinkList Config Id Config_MEC_5 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -464,8 +457,8 @@ Package MEC_MEC010p2_MEPM_PKGM { "Check that MEPM service returns an Application Package Subscription when requested" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.4.3.2", - "ETSI GS MEC 010-2 2.2.1, clause 6.2.3.4" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.4.3.2", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.3.4.2" //AppPkgSubscriptionInfo Config Id Config_MEC_5 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -511,9 +504,7 @@ Package MEC_MEC010p2_MEPM_PKGM { with a wrong identifier" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.4.3.2", - "ETSI GS MEC 010-2 2.2.1, clause 6.2.3.4", - "ETSI GS MEC 010-2 2.2.1, clause 6.2.3.7" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.4.3.2" Config Id Config_MEC_5 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -549,7 +540,7 @@ Package MEC_MEC010p2_MEPM_PKGM { "Check that MEPM service deletes an Application Package Subscription when requested" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.4.3.4" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.4.3.4" Config Id Config_MEC_5 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -585,9 +576,7 @@ Package MEC_MEC010p2_MEPM_PKGM { with a wrong identifier" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.4.3.4", - "ETSI GS MEC 010-2 2.2.1, clause 6.2.3.4", - "ETSI GS MEC 010-2 2.2.1, clause 6.2.3.7" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.4.3.4" Config Id Config_MEC_5 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -624,8 +613,8 @@ Package MEC_MEC010p2_MEPM_PKGM { if the MEPM service has an associated subscription and the event is generated" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.5.3.1", - "ETSI GS MEC 010-2 2.2.1, clause 6.2.3.6" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.5.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.3.6.2" //AppPkgNotification Config Id Config_MEC_3 PICS Selection PIC_APP_PACKAGE_NOTIFICATIONS @@ -633,9 +622,11 @@ Package MEC_MEC010p2_MEPM_PKGM { Initial conditions with { the IUT entity having a Subscription containing subscriptionId set to SUBSCRIPTION_ID, - subscriptionType set to SUBSCRIPTION_TYPE, + subscriptionType set to AppPackageOnBoardingSubscription, callbackUri set to CALLBACK_URI, - _links + _links containing + self set to "/app_pkgm/v1/subscriptions/{SUBSCRIPTION_ID}" + ; ; } @@ -650,7 +641,7 @@ Package MEC_MEC010p2_MEPM_PKGM { uri indicating value CALLBACK_URI, body containing notificationId set to NOTIFICATION_ID, - notificationType indicating value any_value, + notificationType indicating value AppPackageOnBoarded, subscriptionId set to SUBSCRIPTION_ID, timeStamp set to any_value, appPkgId set to any_value, @@ -673,7 +664,7 @@ Package MEC_MEC010p2_MEPM_PKGM { a POST request referring an application descriptor AppD" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.6.3.1" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.6.3.1" Config Id Config_MEC_5 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -709,8 +700,8 @@ Package MEC_MEC010p2_MEPM_PKGM { "Check that MEPM returns the Application Descriptor contained on an on-boarded Application Package when requested" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.6.3.2", - "ETSI GS MEC 010-2 2.2.1, clause 6.2.1.2" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.6.3.2", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.1.2.2" //AppD Config Id Config_MEC_5 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -752,8 +743,7 @@ Package MEC_MEC010p2_MEPM_PKGM { a request for returning a App Descriptor referred with a wrong App Package ID" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.6.3.2", - "ETSI GS MEC 010-2 2.2.1, clause 6.2.1.2" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.6.3.2" Config Id Config_MEC_5 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -789,7 +779,7 @@ Package MEC_MEC010p2_MEPM_PKGM { a PUT request referring an application descriptor AppD" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.6.3.3" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.6.3.3" Config Id Config_MEC_5 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -826,7 +816,7 @@ Package MEC_MEC010p2_MEPM_PKGM { a DELETE request referring an application descriptor AppD" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.6.3.4" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.6.3.4" Config Id Config_MEC_5 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -862,7 +852,7 @@ Package MEC_MEC010p2_MEPM_PKGM { "Check that MEPM fetches the on-boarded application package content identified by appPkgId when requested" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.7.3.2" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.7.3.2" Config Id Config_MEC_5 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -902,7 +892,7 @@ Package MEC_MEC010p2_MEPM_PKGM { "Check that MEPM fetches the on-boarded application package content identified by appDId when requested" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.7.3.2" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.7.3.2" Config Id Config_MEC_5 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -942,7 +932,7 @@ Package MEC_MEC010p2_MEPM_PKGM { "Check that MEPM fetches the on-boarded application package content identified by appPkgId when requested" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.7.3.2" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.7.3.2" Config Id Config_MEC_5 PICS Selection PIC_APP_PACKAGE_MANAGEMENT @@ -979,7 +969,7 @@ Package MEC_MEC010p2_MEPM_PKGM { "Check that MEPM service sends an error when it receives a query with an application package with a wrong identifier" Reference - "ETSI GS MEC 010-2 2.2.1, clause 7.3.7.3.2" + "ETSI GS MEC 010-2 3.1.1, clause 7.3.7.3.2" Config Id Config_MEC_5 PICS Selection PIC_APP_PACKAGE_MANAGEMENT diff --git a/Test Purposes/MEC010p2/MEX/LCM/AppInstanceMgmt.tplan2 b/Test Purposes/MEC010p2/MEX/LCM/AppInstanceMgmt.tplan2 new file mode 100644 index 0000000000000000000000000000000000000000..7bf55082950ee186ea8664b034060878e0469a30 --- /dev/null +++ b/Test Purposes/MEC010p2/MEX/LCM/AppInstanceMgmt.tplan2 @@ -0,0 +1,1412 @@ +/* +Copyright (c) ETSI 2018-2023. +Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters +*/ +Package MEC_MEC010p2_MEX_APP_INSTANCE_LCM { + + import all from MEC_Common; + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_001_OK" // It applies for MM1 and MM3 on MEC10-2 + + Test objective + "Check that MEC API provider creates a new App Package when requested" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.1.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.3.2", //CreateAppInstanceRequest + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.4.2" //AppInstanceInfo + + Config Id Config_MEC_6 + + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity being_in idle_state + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/app_lcm/v1/app_instances", + body containing + CreateAppInstanceRequest containing + appDId set to APP_D_ID + ; + ; + ; from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "201 Created", + body containing + AppInstanceInfo containing + id set to any_value, + appDId set to APP_D_ID, + appProvider set to any_value, + appName set to any_value, + appSoftVersion set to any_value, + appDVersion set to any_value, + appPkgId set to any_value, + instantiationState set to NOT_INSTANTIATED, + _links containing + self set to "/app_lcm/v1/app_instances/{APP_INSTANCE_ID}", + instantiate set to "/app_lcm/v1/app_instances/{APP_INSTANCE_ID}/instantiate" + ; + ; + ; + ; to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_001_BR" + + Test objective + "Check that MEC API provider sends an error when it receives a malformed request + for the creation of a new App Instance" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.1.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.3.2", //CreateAppInstanceRequest + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.4.2" //AppInstanceInfo + + Config Id Config_MEC_6 + + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity being_in idle_state + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/app_lcm/v1/app_instances", + body containing + CreateAppInstanceRequest containing + appDDDId set to APP_D_ID //Wrong parameter into the request body + ; + ; + ; from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "400 Bad Request" + ; to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_002_OK" + + Test objective + "Check that MEC API provider retrieves the list of App instances when requested" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.1.3.2", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.4.2" //AppInstanceInfo + + Config Id Config_MEC_6 + + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity having a App_Instance containing + appInstanceId indicating value APP_INSTANCE_ID; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/app_lcm/v1/app_instances" + ; from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "200 OK", + body containing + AppInstanceInfoList containing + AppInstanceInfo containing + appInstanceId set to APP_INSTANCE_ID, + appDId set to any_value, + appProvider set to any_value, + appName set to any_value, + appSoftVersion set to any_value, + appDVersion set to any_value, + appPkgId set to any_value, + instantiationState set to any_value, + _links containing + self set to "/app_lcm/v1/app_instances/{APP_INSTANCE_ID}" + ; + ; + ; + ; + ; to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_003_OK" + + Test objective + "Check that MEC API provider retrieves an App Package when requested" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.2.3.2", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.4.2" //AppInstanceInfo + + Config Id Config_MEC_6 + + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity having a App_Instance containing + appInstanceId indicating value APP_INSTANCE_ID; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/app_lcm/v1/app_instances/{APP_INSTANCE_ID}" + ; from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "200 OK", + body containing + AppInstanceInfo containing + appInstanceId set to APP_INSTANCE_ID, + appDId set to any_value, + appProvider set to any_value, + appName set to any_value, + appSoftVersion set to any_value, + appDVersion set to any_value, + appPkgId set to any_value, + instantiationState set to any_value, + _links containing + self set to "/app_lcm/v1/app_instances/{APP_INSTANCE_ID}" + ; + ; + ; + ; to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_003_NF" // Wrong APP_INSTANCE_ID + + Test objective + "Check that MEC API provider fails on retrieving an App Instance when requested using wrong appInstanceId" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.2.3.2", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.4.2" //AppInstanceInfo + + Config Id Config_MEC_6 + + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity not having a App_Instance containing + appInstanceId indicating value NON_EXISTENT_APP_INSTANCE_ID; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/app_lcm/v1/app_instances/{NON_EXISTENT_APP_INSTANCE_ID}" + ; from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "404 Not Found" + ; to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_004_OK" + + Test objective + "Check that MEC API provider service deletes an App Instance when requested" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.2.3.4" + + Config Id Config_MEC_6 + + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity having a App_Instance containing + appInstanceId indicating value APP_INSTANCE_ID; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "/app_lcm/v1/app_instances/{APP_INSTANCE_ID}" + ; from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "204 No Content" + ; to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_004_NF" // Wrong APP_INSTANCE_ID + + Test objective + "Check that MEC API provider fails on deletion of an App Instance when requested using wrong appInstanceId" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.2.3.4" + + Config Id Config_MEC_6 + + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity not having a App_Instance containing + appInstanceId indicating value NON_EXISTENT_APP_INSTANCE_ID; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "/app_lcm/v1/app_instances/{NON_EXISTENT_APP_INSTANCE_ID}" + ; from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "404 Not Found" + ; to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_005_OK" + + Test objective + "Check that MEC API provider service instantiates an App Instance when requested" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.6.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.7.2" // InstantiateAppRequest + + Config Id Config_MEC_6 + + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity having a App_Instance containing + appInstanceId indicating value APP_INSTANCE_ID, + instantiationState indicating value NOT_INSTANTIATED + ; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/app_lcm/v1/app_instances/{APP_INSTANCE_ID}/instantiate", + body containing + InstantiateAppRequest containing + selectedMECHostInfo set to SELECTED_MEC_HOST_INFO + ; + ; + ; from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "202 Accepted", + headers containing + Location set to "/app_lcm/v1/app_lcm_op_occs/{APP_LCM_OP_OCC_ID}" + ; + ; to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_005_BR" + + Test objective + "Check that MEC API provider service fails to instantiate an App Instance when it receives a malformed request" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.6.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.7.2" // InstantiateAppRequest + + Config Id Config_MEC_6 + + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity having a App_Instance containing + appInstanceId indicating value APP_INSTANCE_ID, + instantiationState indicating value NOT_INSTANTIATED + ; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/app_lcm/v1/app_instances/{APP_INSTANCE_ID}/instantiate", + body containing + InstantiateAppRequest containing + appERRORId set to APP_INSTANCE_ID //wrong name of the parameter + ; + ; + ; from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "400 Bad request" + ; to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_005_NF" // Wrong APP_INSTANCE_ID + + Test objective + "Check that MEC API provider service fails to instantiate an App Instance when it receives a request + related to a not existing App Instance" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.6.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.7.2" // InstantiateAppRequest + + Config Id Config_MEC_6 + + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity not having a App_Instance containing + appInstanceId indicating value NON_EXISTENT_APP_INSTANCE_ID; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/app_lcm/v1/app_instances/{NON_EXISTENT_APP_INSTANCE_ID}/instantiate" + ; from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "404 Not Found" + ; to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_006_OK" + + Test objective + "Check that MEC API provider service terminates an App Instance when requested" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.7.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.9.2" // TerminateAppRequest + + Config Id Config_MEC_6 + + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity having a App_Instance containing + appInstanceId indicating value APP_INSTANCE_ID, + instantiationState indicating value INSTANTIATED + ; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/app_lcm/v1/app_instances/{APP_INSTANCE_ID}/terminate", + body containing + TerminateAppRequest containing + terminationType set to TERMINATION_TYPE //It must be either FORCEFUL or GRACEFUL + ; + ; + ; from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "202 Accepted", + headers containing + Location set to "/app_lcm/v1/app_lcm_op_occs/{APP_LCM_OP_OCC_ID}" + ; + ; to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_006_BR" + + Test objective + "Check that MEC API provider service fails to terminate an App Instance when it receives a malformed request" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.7.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.9.2" // TerminateAppRequest + + Config Id Config_MEC_6 + + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity having a App_Instance containing + appInstanceId indicating value APP_INSTANCE_ID, + instantiationState indicating value INSTANTIATED + ; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/app_lcm/v1/app_instances/{APP_INSTANCE_ID}/terminate", + body containing + TerminateAppRequest containing + terminationERRORType set to GRACEFUL //wrong parameter + ; + ; + ; from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "400 Bad request" + ; to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_006_NF" // Wrong APP_INSTANCE_ID + + Test objective + "Check that MEC API provider service fails to terminate an App Instance when it receives a request + related to a not existing App Instance" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.7.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.9.2" // TerminateAppRequest + + Config Id Config_MEC_6 + + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity not having a App_Instance containing + appInstanceId indicating value NON_EXISTENT_APP_INSTANCE_ID; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/app_lcm/v1/app_instances/{NON_EXISTENT_APP_INSTANCE_ID}/terminate" + ; from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "404 Not Found" + ; to the MEC_CONSUMER entity + } + } + } + +Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_007_OK" + + Test objective + "Check that MEC API provider service changes the status of an App Instance" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.8.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.8.2" // OperateAppRequest + + Config Id Config_MEC_6 + + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity having a App_Instance containing + appInstanceId indicating value APP_INSTANCE_ID, + instantiationState indicating value INSTANTIATED, + operationalState indicating value INITIAL_STATE + ; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/app_lcm/v1/app_instances/{APP_INSTANCE_ID}/operate", + body containing + OperateAppRequest containing + changeStateTo set to STOPPED + ; + ; + ; from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "202 Accepted", + headers containing + Location set to "/app_lcm/v1/app_lcm_op_occs/{APP_LCM_OP_OCC_ID}" + ; + ; to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_007_BR" + + Test objective + "Check that MEC API provider service fails to operate on an App Instance when it receives a malformed request" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.8.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.8.2" // OperateAppRequest + + Config Id Config_MEC_6 + + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity having a App_Instance containing + appInstanceId indicating value APP_INSTANCE_ID + ; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/app_lcm/v1/app_instances/{APP_INSTANCE_ID}/operate", + body containing + OperateAppRequest containing + changeERRORStateTo set to any_value //wrong parameter + ; + ; + ; from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "400 Bad request" + ; to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_007_NF" // Wrong APP_INSTANCE_ID + + Test objective + "Check that MEC API provider service fails to change the status of an App Instance when it receives a request + related to a not existing App Instance" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.8.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.8.2" // OperateAppRequest + + Config Id Config_MEC_6 + + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity not having a App_Instance containing + appInstanceId indicating value NON_EXISTENT_APP_INSTANCE_ID; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/app_lcm/v1/app_instances/{NON_EXISTENT_APP_INSTANCE_ID}/operate" + ; from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "404 Not Found" + ; to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_008_OK" + + Test objective + "Check that MEC API provider service retrieves info about LCM Operation Occurrence on App Instances when requested" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.9.3.2", + "ETSI GS MEC 010-2 3.1.1, clause 6.3.1.13.2" // AppLcmOpOcc + + Config Id Config_MEC_6 + + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity having a App_Lcm_Op_Occ containing + appLcmOpOccId indicating value APP_LCM_OP_OCC_ID + ; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/app_lcm/v1/app_lcm_op_occs" + ; from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "200 OK", + body containing + AppLcmOpOccList containing + AppLcmOpOcc containing + id set to APP_LCM_OP_OCC_ID, + operationState set to OPERATIONAL_STATE,//It must be either STARTING or PROCESSING or COMPLETED or FAILED or FAILED_TEMP + stateEnteredTime set to any_value, + startTime set to any_value, + lcmOperation set to LCM_OPERATION, //It must be either INSTANTIATE or OPERATE or TERMINATE + _links containing + self set to "/app_lcm/v1/app_lcm_op_occs/{APP_LCM_OP_OCC_ID}", + appInstance set to any_value + ; + ; + ; + ; + ; + to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_009_OK" + + Test objective + "Check that MEC API provider service retrieves info about LCM Operation Occurrence on an App Instance when requested" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.10.3.2", + "ETSI GS MEC 010-2 3.1.1, clause 6.3.1.14.2" // AppLcmOpOcc + + Config Id Config_MEC_6 + + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity having a App_Lcm_Op_Occ containing + appLcmOpOccId indicating value APP_LCM_OP_OCC_ID + ; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/app_lcm/v1/app_lcm_op_occs/{APP_LCM_OP_OCC_ID}" + ; from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "200 OK", + body containing + AppLcmOpOcc containing + id set to APP_LCM_OP_OCC_ID, + operationState set to OPERATIONAL_STATE,//It must be either STARTING or PROCESSING or COMPLETED or FAILED or FAILED_TEMP + stateEnteredTime set to any_value, + startTime set to any_value, + lcmOperation set to LCM_OPERATION, //It must be either INSTANTIATE or OPERATE or TERMINATE + _links containing + self set to "/app_lcm/v1/app_lcm_op_occs/{APP_LCM_OP_OCC_ID}", + appInstance set to any_value + ; + ; + ; + ; + to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_009_NF" + + Test objective + "Check that MEC API provider service sends an error when it receives a query for a not existing LCM Operation Occurrence" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.10.1.3.2" + + Config Id Config_MEC_6 + + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity not having a App_Lcm_Op_Occ containing + appLcmOpOccId indicating value NON_EXISTENT_APP_LCM_OP_OCC_ID + ; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/app_lcm/v1/app_lcm_op_occs/{NON_EXISTENT_APP_LCM_OP_OCC_ID}" + ; from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "404 Not Found" + ; to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_010_OK" + + Test objective + "Check that MEC API provider service creates a LCM Subscription when requested, where the subscription request can + have SUBSCRIPTION_TYPE AppInstanceStateChangeSubscription or AppLcmOpOccStateChangeSubscription" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.3.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.3.1.12.2", // AppInstSubscriptionRequest + "ETSI GS MEC 010-2 3.1.1, clause 6.3.1.14.2", // AppLcmOpOccSubscriptionRequest + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.25.2", // AppInstIdCreationSubscriptionRequest + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.28.2", // AppInstIdDeletionSubscriptionRequest + "ETSI GS MEC 010-2 3.1.1, clause 6.3.1.10.2", //AppInstSubscriptionInfo + "ETSI GS MEC 010-2 3.1.1, clause 6.3.1.15.2", // AppLcmOpOccSubscriptionInfo + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.26.2", // AppInstIdCreationSubscriptionInfo + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.29.2" // AppInstIdDeletionSubscriptionInfo + + Config Id Config_MEC_6 + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity being_in idle_state + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/app_lcm/v1/subscriptions" + body containing + AppInstSubscriptionRequest containing + callbackUri set to CALLBACK_URI, + subscriptionType set to SUBSCRIPTION_TYPE + ; + ; + ; + from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "201 Created", + body containing + AppInstSubscriptionRequest containing + subscriptionId set to any_value, + subscriptionType set to SUBSCRIPTION_TYPE, + callbackUri set to CALLBACK_URI, + _links containing + _self set to "/app_lcm/v1/subscriptions/{SUBSCRIPTION_ID}" + ; + ; + ; + ; + to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_010_BR" + + Test objective + "Check that MEC API provider service sends an error when it receives a malformed request to create a LCM Subscription" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.3.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.3.1.12.2", // AppInstSubscriptionRequest + "ETSI GS MEC 010-2 3.1.1, clause 6.3.1.14.2", // AppLcmOpOccSubscriptionRequest + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.25.2", // AppInstIdCreationSubscriptionRequest + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.28.2", // AppInstIdDeletionSubscriptionRequest + "ETSI GS MEC 010-2 3.1.1, clause 6.3.1.10.2", //AppInstSubscriptionInfo + "ETSI GS MEC 010-2 3.1.1, clause 6.3.1.15.2", // AppLcmOpOccSubscriptionInfo + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.26.2", // AppInstIdCreationSubscriptionInfo + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.29.2" // AppInstIdDeletionSubscriptionInfo + + + Config Id Config_MEC_6 + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity being_in idle_state + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/app_lcm/v1/subscriptions" + body containing + AppInstSubscriptionRequest containing + callbackERRORUri set to CALLBACK_URI //wrong parameter + ; + ; + ; + from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "400 Bad Request" + ; + to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_011_OK" + + Test objective + "Check that MEC API provider service sends the list of LCM Subscriptions when requested" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.3.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.3.1.12.2", // AppInstSubscriptionRequest + "ETSI GS MEC 010-2 3.1.1, clause 6.3.1.14.2", // AppLcmOpOccSubscriptionRequest + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.25.2", // AppInstIdCreationSubscriptionRequest + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.28.2", // AppInstIdDeletionSubscriptionRequest + "ETSI GS MEC 010-2 3.1.1, clause 6.3.1.10.2", //AppInstSubscriptionInfo + "ETSI GS MEC 010-2 3.1.1, clause 6.3.1.15.2", // AppLcmOpOccSubscriptionInfo + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.26.2", // AppInstIdCreationSubscriptionInfo + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.29.2" // AppInstIdDeletionSubscriptionInfo + + Config Id Config_MEC_6 + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity having a Subscription containing + subscriptionId indicating value SUBSCRIPTION_ID, + subscriptionType indicating value SUBSCRIPTION_TYPE, + callbackUri indicating value URI + ; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/app_lcm/v1/subscriptions" + ; + from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "200 OK", + body containing + SubscriptionInfoList containing + SubscriptionInfo containing + subscriptionId set to SUBSCRIPTION_ID, + subscriptionType set to SUBSCRIPTION_TYPE, + callbackUri set to URI, + _links containing + _self set to "/app_lcm/v1/subscriptions/{SUBSCRIPTION_ID}" + ; + ; + ; + ; + ; + to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_012_OK" + + Test objective + "Check that MEC API provider service sends the information about an existing LCM subscription when requested" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.4.3.2", + "ETSI GS MEC 010-2 3.1.1, clause 6.3.1.10.2", //AppInstSubscriptionInfo + "ETSI GS MEC 010-2 3.1.1, clause 6.3.1.15.2", // AppLcmOpOccSubscriptionInfo + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.26.2", // AppInstIdCreationSubscriptionInfo + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.29.2" // AppInstIdDeletionSubscriptionInfo + + Config Id Config_MEC_6 + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity having a Subscription containing + subscriptionId indicating value SUBSCRIPTION_ID, + subscriptionType indicating value SUBSCRIPTION_TYPE, + callbackUri indicating value URI + ; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/app_lcm/v1/subscriptions/{SUBSCRIPTION_ID}" + ; + from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "200 OK", + body containing + SubscriptionInfo containing + subscriptionId set to SUBSCRIPTION_ID, + subscriptionType set to SUBSCRIPTION_TYPE, + callbackUri set to URI, + _links containing + _self set to "/app_lcm/v1/subscriptions/{SUBSCRIPTION_ID}" + ; + ; + ; + ; + to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_012_NF" + + Test objective + "Check that MEC API provider service sends an error when it receives a query for a not existing LCM Subscription" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.3.3.2" + + Config Id Config_MEC_6 + + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity not having a App_Instance_Subscription containing + subscriptionId set to NON_EXISTENT_SUBSCRIPTION_ID + ; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/app_lcm/v1/subscriptions/{NON_EXISTENT_SUBSCRIPTION_ID}" + ; from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "404 Not Found" + ; to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_013_OK" + + Test objective + "Check that MEC API provider service delete an existing LCM Subscription when requested" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.4.3.4" + + Config Id Config_MEC_6 + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity having a Subscription containing + subscriptionId indicating value SUBSCRIPTION_ID + ; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "/app_lcm/v1/subscriptions/{SUBSCRIPTION_ID}" + ; + from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "204 No Content" + ; + to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_013_NF" + + Test objective + "Check that MEC API provider service sends an error when + it receives a deletion request for a not existing LCM Subscription" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.3.3.4" + + Config Id Config_MEC_6 + + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity not having a App_Instance_Subscription containing + subscriptionId set to NON_EXISTENT_SUBSCRIPTION_ID + ; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "/app_lcm/v1/subscriptions/{NON_EXISTENT_SUBSCRIPTION_ID}" + ; from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "404 Not Found" + ; to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_014_OK" + + Test objective + "Check that MEC API provider service cancels an on going LCM Operation" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.11.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.32.2" // CancelMode + + Config Id Config_MEC_6 + + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity having a AppLcmOpOcc containing + id indicating value APP_LCM_OP_OCC_ID, + operationState indicating value PROCESSING, + stateEnteredTime indicating value any_value, + startTime indicating value any_value, + lcmOperation indicating value INSTANTIATE, + _links containing + _self set to "/app_lcm/v1/app_lcm_op_occs/{APP_LCM_OP_OCC_ID}", + appInstance set to "/app_lcm/v1/app_instances/{APP_INSTANCE_ID}" + ; + ; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/app_lcm/v1/app_lcm_op_occs/{APP_LCM_OP_OCC_ID}/cancel" + body containing + CancelMode containing + CancelMode set to GRACEFUL + ; + ; + ; from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "202 Accepted" + ; to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_014_BR" + + Test objective + "Check that MEC API provider service fails to cancel an on going LCM Operation when it receives a malformed request" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.11.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.32.2" // CancelMode + + Config Id Config_MEC_6 + + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity having a App_LCM_op_occ containing + id indicating value APP_LCM_OP_OCC_ID; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/app_lcm/v1/app_instances/app_lcm_op_occs/{APP_LCM_OP_OCC_ID}/cancel", + body containing + CancelMode containing + CancelMode set to GRACEFULLL //It should be GRACEFUL + ; + ; + ; from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "400 Bad request" + ; to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_014_NF" // Wrong APP_INSTANCE_ID + + Test objective + "Check that MEC API provider service fails to cancel an on going LCM Operation when it receives a request + related to a not existing application LCM Operation" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.11.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.32.2" // CancelMode + + Config Id Config_MEC_6 + + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity not having a App_LCM_op_occ containing + id indicating value NON_EXISTENT_APP_LCM_OP_OCC_ID; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/app_lcm/v1/app_lcm_op_occs/{NON_EXISTENT_APP_INSTANCE_ID}/cancel" + ; from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "404 Not Found" + ; to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_015_OK" + + Test objective + "Check that MEC API provider service makes failed an on going LCM Operation" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.12.3.1" + + Config Id Config_MEC_6 + + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity having a App_LCM_op_occ containing + id indicating value APP_LCM_OP_OCC_ID, + operationStates indicating value FAILED_TEMP; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/app_lcm/v1/app_instances/app_lcm_op_occs/{APP_LCM_OP_OCC_ID}/fail"; + from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "200 OK" + body containing + AppLcmOpOcc containing + SubscriptionInfo containing + id set to APP_LCM_OP_OCC_ID, + operationState set to FAILED, + stateEnteredTime set to any_value, + startTime set to any_value, + lcmOperation set to any_value, + _links containing + _self set to "/app_lcm/v1/subscriptions/{SUBSCRIPTION_ID}", + appInstance set to "/app_lcm/v1/app_instances/{APP_INSTANCE_ID}" + ; + ; + ; + ; + + + ; to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_015_NF" + + Test objective + "Check that MEC API provider service fails to make failed an on going LCM Operation when it receives a request + related to a not existing application LCM Operation" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.12.3.1" + + Config Id Config_MEC_6 + + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity not having a App_LCM_op_occ containing + id indicating value NON_EXISTENT_APP_LCM_OP_OCC_ID; + + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/app_lcm/v1/app_lcm_op_occs/{NON_EXISTENT_APP_INSTANCE_ID}/fail" + + ; from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "404 Not Found" + ; to the MEC_CONSUMER entity + } + } + } + +Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_016_OK" + + Test objective + "Check that MEC API provider service retries an on going LCM Operation" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.13.3.1" + + Config Id Config_MEC_6 + + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity having a App_LCM_op_occ containing + id indicating value APP_LCM_OP_OCC_ID, + operationStates indicating value FAILED_TEMP; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/app_lcm/v1/app_lcm_op_occs/{APP_LCM_OP_OCC_ID}/retry"; + from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "200 Accepted"; + to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_016_NF" // Wrong APP_INSTANCE_ID + + Test objective + "Check that MEC API provider service fails to retry an LCM Operation when it receives a request + related to a not existing application LCM Operation" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.13.3.1" + + Config Id Config_MEC_6 + + PICS Selection PIC_APP_LCM_MANAGEMENT + + Initial conditions with { + the IUT entity not having a App_LCM_op_occ containing + id indicating value NON_EXISTENT_APP_LCM_OP_OCC_ID; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/app_lcm/v1/app_lcm_op_occs/{NON_EXISTENT_APP_INSTANCE_ID}/retry" + ; from the MEC_CONSUMER entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "404 Not Found" + ; to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC010p2_MEX_LCM_017_OK" + + Test objective + "Check that MEC API provider sends a notification to the subscriber when an application LCM change event occurs" + + Reference "ETSI GS MEC 010-2 3.1.1, clause 7.4.5.3.1", + "ETSI GS MEC 010-2 3.1.1, clause 6.3.1.11.2", // AppInstNotification + "ETSI GS MEC 010-2 3.1.1, clause 6.3.1.16.2", // AppLcmOpOccNotification + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.27.2", // AppInstanceIdentifierCreationNotification + "ETSI GS MEC 010-2 3.1.1, clause 6.2.2.30.2" // AppInstanceIdentifierDeletionNotification + + + Config Id Config_MEC_6 + PICS Selection PIC_APP_LCM_NOTIFICATIONS + + Initial conditions with { + the IUT entity having a App_Instance_Subscription containing + subscriptionType indicating value SUBSCRIPTION_TYPE, + callbackUri indicating value CALLBACK_URI, + _links containing + self indicating value "/app_lcm/v1/subscriptions/{SUBSCRIPTION_ID}" + ; + ; + } + + Expected behaviour + ensure that { + when { + the IUT entity generates a application_lcm_change_event containing + notificationId set to NOTIFICATION_ID; + } + then { + the IUT entity sends a vPOST containing + uri indicating value CALLBACK_URI, + body containing + Notification containing + id set to NOTIFICATION_ID, + notificationType set to NOTIFICATION_TYPE, + subscriptionId set to SUBSCRIPTION_ID, + timeStamp set to any_value, + appInstanceId set to APP_INSTANCE_ID, + appDId set to any_value, + _links containing + subscription set to "/app_lcm/v1/app_instances/{APP_INSTANCE_ID}" + ; + ; + ; + ; to the MEC_SUB entity + } + } + } + +} diff --git a/Test Purposes/MEC010p2/MEX/LCM/AppInstanceMgmt_BO-BI.tplan2 b/Test Purposes/MEC010p2/MEX/LCM/AppInstanceMgmt_BO-BI.tplan2 deleted file mode 100644 index 0ee061d994706f1c77ae73b7ab0978d4db1d55d9..0000000000000000000000000000000000000000 --- a/Test Purposes/MEC010p2/MEX/LCM/AppInstanceMgmt_BO-BI.tplan2 +++ /dev/null @@ -1,631 +0,0 @@ -/* -Copyright (c) ETSI 2018-2021. -Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters -*/ -Package MEC_MEC010p2_APP_INSTANCE_LCM_BI { - - import all from MEC_Common; - - Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_001_BR" - - Test objective - "Check that MEC API provider sends an error when it receives a malformed request - for the creation of a new App Instance" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.1.3.1", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.2.3.2-1", //CreateAppInstanceRequest - "ETSI GS MEC 010-2 2.2.1, Table 6.2.2.4.2-1" //AppInstanceInfo - - Config Id Config_MEC_6 - - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity being_in idle_state - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "/app_lcm/v1/app_instances", - body containing - CreateAppInstanceRequest containing - appDDDId set to APP_D_ID //Wrong parameter into the request body - ; - ; - ; from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "400 Bad Request" - ; to the MEC_CONSUMER entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_003_NF" // Wrong APP_INSTANCE_ID - - Test objective - "Check that MEC API provider fails on retrieving an App Instance when requested using wrong appInstanceId" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.2.3.2", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.2.4.2-1" //AppInstanceInfo - - Config Id Config_MEC_6 - - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity not having a App_Instance containing - appInstanceId indicating value NON_EXISTENT_APP_INSTANCE_ID; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "/app_lcm/v1/app_instances/{NON_EXISTENT_APP_INSTANCE_ID}" - ; from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "404 Not Found" - ; to the MEC_CONSUMER entity - } - } - } - - - - Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_004_NF" // Wrong APP_INSTANCE_ID - - Test objective - "Check that MEC API provider fails on deletion of an App Instance when requested using wrong appInstanceId" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.2.3.4", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.2.4.2-1" //AppInstanceInfo - - Config Id Config_MEC_6 - - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity not having a App_Instance containing - appInstanceId indicating value NON_EXISTENT_APP_INSTANCE_ID; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vDELETE containing - uri indicating value "/app_lcm/v1/app_instances/{NON_EXISTENT_APP_INSTANCE_ID}" - ; from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "404 Not Found" - ; to the MEC_CONSUMER entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_005_BR" - - Test objective - "Check that MEC API provider service fails to instantiate an App Instance when it receives a malformed request" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.6.3.1", - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.7.2-1" // InstantiateAppRequest - - Config Id Config_MEC_6 - - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity having a App_Instance containing - appInstanceId indicating value APP_INSTANCE_ID, - instantiationState indicating value NOT_INSTANTIATED - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "/app_lcm/v1/app_instances/{APP_INSTANCE_ID}/instantiate", - body containing - InstantiateAppRequest containing - appERRORId set to APP_INSTANCE_ID //wrong name of the parameter - ; - ; - ; from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "400 Bad request" - ; to the MEC_CONSUMER entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_005_NF" // Wrong APP_INSTANCE_ID - - Test objective - "Check that MEC API provider service fails to instantiate an App Instance when it receives a request - related to a not existing App Instance" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.6.3.1", - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.7.2-1" // InstantiateAppRequest - - Config Id Config_MEC_6 - - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity not having a App_Instance containing - appInstanceId indicating value NON_EXISTENT_APP_INSTANCE_ID; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "/app_lcm/v1/app_instances/{NON_EXISTENT_APP_INSTANCE_ID}/instantiate" - ; from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "404 Not Found" - ; to the MEC_CONSUMER entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_006_BR" - - Test objective - "Check that MEC API provider service fails to terminate an App Instance when it receives a malformed request" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.7.3.1", - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.9.2-1" // TerminateAppRequest - - Config Id Config_MEC_6 - - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity having a App_Instance containing - appInstanceId indicating value APP_INSTANCE_ID, - instantiationState indicating value INSTANTIATED - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "/app_lcm/v1/app_instances/{APP_INSTANCE_ID}/terminate", - body containing - TerminateAppRequest containing - terminationERRORType set to GRACEFUL //wrong parameter - ; - ; - ; from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "400 Bad request" - ; to the MEC_CONSUMER entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_006_NF" // Wrong APP_INSTANCE_ID - - Test objective - "Check that MEC API provider service fails to terminate an App Instance when it receives a request - related to a not existing App Instance" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.7.3.1", - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.9.2-1" // TerminateAppRequest - - Config Id Config_MEC_6 - - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity not having a App_Instance containing - appInstanceId indicating value NON_EXISTENT_APP_INSTANCE_ID; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "/app_lcm/v1/app_instances/{NON_EXISTENT_APP_INSTANCE_ID}/terminate" - ; from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "404 Not Found" - ; to the MEC_CONSUMER entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_007_BR" - - Test objective - "Check that MEC API provider service fails to operate on an App Instance when it receives a malformed request" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.8.3.1", - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.8.2-1" // OperateAppRequest - - Config Id Config_MEC_6 - - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity having a App_Instance containing - appInstanceId indicating value APP_INSTANCE_ID - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "/app_lcm/v1/app_instances/{APP_INSTANCE_ID}/operate", - body containing - OperateAppRequest containing - changeERRORStateTo set to any_value //wrong parameter - ; - ; - ; from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "400 Bad request" - ; to the MEC_CONSUMER entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_007_NF" // Wrong APP_INSTANCE_ID - - Test objective - "Check that MEC API provider service fails to change the status of an App Instance when it receives a request - related to a not existing App Instance" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.8.3.1", - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.8.2-1" // OperateAppRequest - - Config Id Config_MEC_6 - - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity not having a App_Instance containing - appInstanceId indicating value NON_EXISTENT_APP_INSTANCE_ID; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "/app_lcm/v1/app_instances/{NON_EXISTENT_APP_INSTANCE_ID}/operate" - ; from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "404 Not Found" - ; to the MEC_CONSUMER entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_009_NF" - - Test objective - "Check that MEC API provider service sends an error when it receives a query for a not existing LCM Operation Occurrence" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.10.1.3.2", - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.13.2-1" // AppLcmOpOcc - - Config Id Config_MEC_6 - - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity not having a App_Lcm_Op_Occ containing - appLcmOpOccId indicating value NON_EXISTENT_APP_LCM_OP_OCC_ID - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "/app_lcm/v1/app_lcm_op_occs/{NON_EXISTENT_APP_LCM_OP_OCC_ID}" - ; from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "404 Not Found" - ; to the MEC_CONSUMER entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_010_BR" - - Test objective - "Check that MEC API provider service sends an error when it receives a malformed request to create a LCM Subscription" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.3.3.1", - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.12.2-1", // AppInstSubscriptionRequest - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.14.2-1", // AppLcmOpOccSubscriptionRequest - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.25.2-1", // AppInstIdCreationSubscriptionRequest - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.28.2-1", // AppInstIdDeletionSubscriptionRequest - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.10.2-1", //AppInstSubscriptionInfo - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.15.2-1", // AppLcmOpOccSubscriptionInfo - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.26.2-1", // AppInstIdCreationSubscriptionInfo - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.29.2-1" // AppInstIdDeletionSubscriptionInfo - - - Config Id Config_MEC_6 - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity being_in idle_state - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "/app_lcm/v1/subscriptions" - body containing - AppInstSubscriptionRequest containing - callbackERRORUri set to CALLBACK_URI //wrong parameter - ; - ; - ; - from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "400 Bad Request" - ; - to the MEC_CONSUMER entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_012_NF" - - Test objective - "Check that MEC API provider service sends an error when it receives a query for a not existing LCM Subscription" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.3.3.2" - - Config Id Config_MEC_6 - - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity not having a App_Instance_Subscription containing - subscriptionId set to NON_EXISTENT_SUBSCRIPTION_ID - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "/app_lcm/v1/subscriptions/{NON_EXISTENT_SUBSCRIPTION_ID}" - ; from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "404 Not Found" - ; to the MEC_CONSUMER entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_013_NF" - - Test objective - "Check that MEC API provider service sends an error when it receives a deletion request for a not existing LCM Subscription" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.3.3.4" - - Config Id Config_MEC_6 - - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity not having a App_Instance_Subscription containing - subscriptionId set to NON_EXISTENT_SUBSCRIPTION_ID - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vDELETE containing - uri indicating value "/app_lcm/v1/subscriptions/{NON_EXISTENT_SUBSCRIPTION_ID}" - ; from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "404 Not Found" - ; to the MEC_CONSUMER entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_014_BR" - - Test objective - "Check that MEC API provider service fails to cancel an on going LCM Operation when it receives a malformed request" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.11.3.1", - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.32.2-1" // CancelMode - - Config Id Config_MEC_6 - - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity having a App_LCM_op_occ containing - id indicating value APP_LCM_OP_OCC_ID; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "/app_lcm/v1/app_instances/app_lcm_op_occs/{APP_LCM_OP_OCC_ID}/cancel", - body containing - CancelMode containing - CancelMode set to GRACEFULLL //It should be GRACEFUL - ; - ; - ; from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "400 Bad request" - ; to the MEC_CONSUMER entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_014_NF" // Wrong APP_INSTANCE_ID - - Test objective - "Check that MEC API provider service fails to cancel an on going LCM Operation when it receives a request - related to a not existing application LCM Operation" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.11.3.1", - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.32.2-1" // CancelMode - - Config Id Config_MEC_6 - - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity not having a App_LCM_op_occ containing - id indicating value NON_EXISTENT_APP_LCM_OP_OCC_ID; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "/app_lcm/v1/app_instances/app_lcm_op_occs/{NON_EXISTENT_APP_INSTANCE_ID}/cancel" - ; from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "404 Not Found" - ; to the MEC_CONSUMER entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_015_NF" - - Test objective - "Check that MEC API provider service fails to make failed an on going LCM Operation when it receives a request - related to a not existing application LCM Operation" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.12.3.1" - - Config Id Config_MEC_6 - - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity not having a App_LCM_op_occ containing - id indicating value NON_EXISTENT_APP_LCM_OP_OCC_ID; - - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "/app_lcm/v1/app_instances/app_lcm_op_occs/{NON_EXISTENT_APP_INSTANCE_ID}/fail" - - ; from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "404 Not Found" - ; to the MEC_CONSUMER entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_016_NF" // Wrong APP_INSTANCE_ID - - Test objective - "Check that MEC API provider service fails to retry an LCM Operation when it receives a request - related to a not existing application LCM Operation" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.13.3.1" - - Config Id Config_MEC_6 - - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity not having a App_LCM_op_occ containing - id indicating value NON_EXISTENT_APP_LCM_OP_OCC_ID; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "/app_lcm/v1/app_instances/app_lcm_op_occs/{NON_EXISTENT_APP_INSTANCE_ID}/retry" - ; from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "404 Not Found" - ; to the MEC_CONSUMER entity - } - } - } - - -} diff --git a/Test Purposes/MEC010p2/MEX/LCM/AppInstanceMgmt_BV.tplan2 b/Test Purposes/MEC010p2/MEX/LCM/AppInstanceMgmt_BV.tplan2 deleted file mode 100644 index d59c30a6309f08c4ffbe143cce79849a97799631..0000000000000000000000000000000000000000 --- a/Test Purposes/MEC010p2/MEX/LCM/AppInstanceMgmt_BV.tplan2 +++ /dev/null @@ -1,763 +0,0 @@ -/* -Copyright (c) ETSI 2018-2021. -Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters -*/ -Package MEC_MEC010p2_APP_INSTANCE_LCM { - - import all from MEC_Common; - - //All APP packages - - - Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_001_OK" // It applies for MM1 and MM3 on MEC10-2 - - Test objective - "Check that MEC API provider creates a new App Package when requested" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.1.3.1", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.2.3.2-1", //CreateAppInstanceRequest - "ETSI GS MEC 010-2 2.2.1, Table 6.2.2.4.2-1" //AppInstanceInfo - - Config Id Config_MEC_6 - - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity being_in idle_state - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "/app_lcm/v1/app_instances", - body containing - CreateAppInstanceRequest containing - appDId set to APP_D_ID - ; - ; - ; from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "201 Created", - body containing - AppInstanceInfo containing - id set to any_value, - appDId set to APP_D_ID, - appProvider set to any_value, - appName set to any_value, - appSoftVersion set to any_value, - appDVersion set to any_value, - appPkgId set to any_value, - instantiationState set to NOT_INSTANTIATED, - _links containing - self set to "/app_lcm/v1/app_instances/{APP_INSTANCE_ID}" - ; - ; - ; - ; to the MEC_CONSUMER entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_002_OK" - - Test objective - "Check that MEC API provider retrieves the list of App instances when requested" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.1.3.2", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.2.4.2-1" //AppInstanceInfo - - Config Id Config_MEC_6 - - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity having a App_Instance containing - appInstanceId indicating value APP_INSTANCE_ID; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "/app_lcm/v1/app_instances" - ; from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "200 OK", - body containing - AppInstanceInfoList containing // Definition of AppInstanceInfoList is missing. How to handle with arrays? - AppInstanceInfo containing - appInstanceId set to APP_INSTANCE_ID, - appDId set to any_value, - appProvider set to any_value, - appName set to any_value, - appSoftVersion set to any_value, - appDVersion set to any_value, - appPkgId set to any_value, - instantiationState set to any_value, - _links containing - self set to "/app_lcm/v1/app_instances/{APP_INSTANCE_ID}" - ; - ; - ; - ; - ; to the MEC_CONSUMER entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_003_OK" - - Test objective - "Check that MEC API provider retrieves an App Package when requested" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.2.3.2", - "ETSI GS MEC 010-2 2.2.1, Table 6.2.2.4.2-1" //AppInstanceInfo - - Config Id Config_MEC_6 - - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity having a App_Instance containing - appInstanceId indicating value APP_INSTANCE_ID; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "/app_lcm/v1/app_instances/{APP_INSTANCE_ID}" - ; from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "200 OK", - body containing - AppInstanceInfo containing - appInstanceId set to APP_INSTANCE_ID, - appDId set to any_value, - appProvider set to any_value, - appName set to any_value, - appSoftVersion set to any_value, - appDVersion set to any_value, - appPkgId set to any_value, - instantiationState set to any_value, - _links containing - self set to "/app_lcm/v1/app_instances/{APP_INSTANCE_ID}" - ; - ; - ; - ; to the MEC_CONSUMER entity - } - } - } - - - - Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_004_OK" - - Test objective - "Check that MEC API provider service deletes an App Instance when requested" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.2.3.4" - - Config Id Config_MEC_6 - - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity having a App_Instance containing - appInstanceId indicating value APP_INSTANCE_ID; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vDELETE containing - uri indicating value "/app_lcm/v1/app_instances/{APP_INSTANCE_ID}" - ; from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "204 No Content" - ; to the MEC_CONSUMER entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_005_OK" - - Test objective - "Check that MEC API provider service instantiates an App Instance when requested" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.6.3.1", - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.7.2-1" // InstantiateAppRequest - - Config Id Config_MEC_6 - - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity having a App_Instance containing - appInstanceId indicating value APP_INSTANCE_ID, - instantiationState indicating value NOT_INSTANTIATED - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "/app_lcm/v1/app_instances/{APP_INSTANCE_ID}/instantiate", - body containing - InstantiateAppRequest containing - selectedMECHostInfo set to SELECTED_MEC_HOST_INFO - ; - ; - ; from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "202 Accepted", - headers containing - Location set to "/app_lcm/v1/app_lcm_op_occs/{APP_LCM_OP_OCC_ID}" - ; - ; to the MEC_CONSUMER entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_006_OK" - - Test objective - "Check that MEC API provider service terminates an App Instance when requested" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.7.3.1", - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.9.2-1" // TerminateAppRequest - - Config Id Config_MEC_6 - - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity having a App_Instance containing - appInstanceId indicating value APP_INSTANCE_ID, - instantiationState indicating value INSTANTIATED - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "/app_lcm/v1/app_instances/{APP_INSTANCE_ID}/terminate", - body containing - TerminateAppRequest containing - terminationType set to TERMINATION_TYPE - ; - ; - ; from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "202 Accepted", - headers containing - Location set to LOCATION_OF_APP_OP_OCC - ; - ; to the MEC_CONSUMER entity - } - } - } - - - - Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_007_OK" - - Test objective - "Check that MEC API provider service changes the status of an App Instance from its INITIAL_STATE to a given FINAL_STATE, when requested. - The following combinations INITIAL_STATE - FINAL_STATE are supported: - - STARTED/STOP - - STOPPED/START" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.8.3.1", - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.8.2-1" // OperateAppRequest - - Config Id Config_MEC_6 - - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity having a App_Instance containing - appInstanceId indicating value APP_INSTANCE_ID, - instantiationState indicating value INSTANTIATED, - operationalState indicating value INITIAL_STATE - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "/app_lcm/v1/app_instances/{APP_INSTANCE_ID}/operate", - body containing - OperateAppRequest containing - changeStateTo set to FINAL_STATE - ; - ; - ; from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "202 Accepted", - headers containing - Location set to LOCATION_OF_APP_OP_OCC - ; - ; to the MEC_CONSUMER entity - } - } - } - - - - Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_008_OK" - - Test objective - "Check that MEC API provider service retrieves info about LCM Operation Occurrence on App Instances when requested" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.9.3.2", - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.13.2-1" // AppLcmOpOcc - - Config Id Config_MEC_6 - - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity having a App_Lcm_Op_Occ containing - appLcmOpOccId indicating value APP_LCM_OP_OCC_ID - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "/app_lcm/v1/app_lcm_op_occs" - ; from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "200 OK", - body containing - AppLcmOpOccList containing - AppInstanceLcmOpOcc containing - id set to APP_LCM_OP_OCC_ID, - operationState set to any_value, - stateEnteredTime set to any_value, - startTime set to any_value, - lcmOperation set to any_value, - _links containing - self set to "/app_lcm/v1/app_lcm_op_occs/{APP_LCM_OP_OCC_ID}", - appInstance set to any_value - ; - ; - ; - ; - ; - to the MEC_CONSUMER entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_009_OK" - - Test objective - "Check that MEC API provider service retrieves info about LCM Operation Occurrence on an App Instance when requested" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.10.3.2", - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.14.2-1" // AppLcmOpOcc - - Config Id Config_MEC_6 - - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity having a App_Lcm_Op_Occ containing - appLcmOpOccId indicating value APP_LCM_OP_OCC_ID - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "/app_lcm/v1/app_lcm_op_occs/{APP_LCM_OP_OCC_ID}" - ; from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "200 OK", - body containing - AppInstanceLcmOpOcc containing - id set to APP_LCM_OP_OCC_ID, - operationState set to any_value, - stateEnteredTime set to any_value, - startTime set to any_value, - lcmOperation set to any_value, - _links containing - self set to "/app_lcm/v1/app_lcm_op_occs/{APP_LCM_OP_OCC_ID}", - appInstance set to any_value - ; - ; - ; - ; - to the MEC_CONSUMER entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_010_OK" - - Test objective - "Check that MEC API provider service creates a LCM Subscription when requested, where the subscription request can - have SUBSCRIPTION_TYPE AppInstanceStateChangeSubscription or AppLcmOpOccStateChangeSubscription" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.3.3.1", - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.12.2-1", // AppInstSubscriptionRequest - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.14.2-1", // AppLcmOpOccSubscriptionRequest - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.25.2-1", // AppInstIdCreationSubscriptionRequest - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.28.2-1", // AppInstIdDeletionSubscriptionRequest - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.10.2-1", //AppInstSubscriptionInfo - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.15.2-1", // AppLcmOpOccSubscriptionInfo - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.26.2-1", // AppInstIdCreationSubscriptionInfo - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.29.2-1" // AppInstIdDeletionSubscriptionInfo - - Config Id Config_MEC_6 - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity being_in idle_state - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "/app_lcm/v1/subscriptions" - body containing - AppInstSubscriptionRequest containing - callbackUri set to CALLBACK_URI, - subscriptionType set to SUBSCRIPTION_TYPE - ; - ; - ; - from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "201 Created", - body containing - AppInstSubscriptionRequest containing - subscriptionId set to any_value, - subscriptionType set to SUBSCRIPTION_TYPE, - callbackUri set to CALLBACK_URI, - _links containing - _self set to "/app_lcm/v1/subscriptions/{SUBSCRIPTION_ID}" - ; - ; - ; - ; - to the MEC_CONSUMER entity - } - } - } - - - - - Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_011_OK" - - Test objective - "Check that MEC API provider service sends the list of LCM Subscriptions when requested" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.3.3.1", - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.12.2-1", // AppInstSubscriptionRequest - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.14.2-1", // AppLcmOpOccSubscriptionRequest - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.25.2-1", // AppInstIdCreationSubscriptionRequest - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.28.2-1", // AppInstIdDeletionSubscriptionRequest - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.10.2-1", //AppInstSubscriptionInfo - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.15.2-1", // AppLcmOpOccSubscriptionInfo - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.26.2-1", // AppInstIdCreationSubscriptionInfo - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.29.2-1" // AppInstIdDeletionSubscriptionInfo - - Config Id Config_MEC_6 - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity having a Subscription containing - subscriptionId indicating value SUBSCRIPTION_ID, - subscriptionType indicating value SUBSCRIPTION_TYPE, - callbackUri indicating value URI - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "/app_lcm/v1/subscriptions" - ; - from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "200 OK", - body containing - SubscriptionInfoList containing - SubscriptionInfo containing - subscriptionId set to SUBSCRIPTION_ID, - subscriptionType set to SUBSCRIPTION_TYPE, - callbackUri set to URI, - _links containing - _self set to "/app_lcm/v1/subscriptions/{SUBSCRIPTION_ID}" - ; - ; - ; - ; - ; - to the MEC_CONSUMER entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_012_OK" - - Test objective - "Check that MEC API provider service sends the information about an existing LCM subscription when requested" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.4.3.2", - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.10.2-1", //AppInstSubscriptionInfo - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.15.2-1", // AppLcmOpOccSubscriptionInfo - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.26.2-1", // AppInstIdCreationSubscriptionInfo - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.29.2-1" // AppInstIdDeletionSubscriptionInfo - - Config Id Config_MEC_6 - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity having a Subscription containing - subscriptionId indicating value SUBSCRIPTION_ID, - subscriptionType indicating value SUBSCRIPTION_TYPE, - callbackUri indicating value URI - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "/app_lcm/v1/subscriptions/{SUBSCRIPTION_ID}" - ; - from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "200 OK", - body containing - SubscriptionInfo containing - subscriptionId set to SUBSCRIPTION_ID, - subscriptionType set to SUBSCRIPTION_TYPE, - callbackUri set to URI, - _links containing - _self set to "/app_lcm/v1/subscriptions/{SUBSCRIPTION_ID}" - ; - ; - ; - ; - to the MEC_CONSUMER entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_013_OK" - - Test objective - "Check that MEC API provider service delete an existing LCM Subscription when requested" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.4.3.4" - - Config Id Config_MEC_6 - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity having a Subscription containing - subscriptionId indicating value SUBSCRIPTION_ID - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vDELETE containing - uri indicating value "/app_lcm/v1/subscriptions/{SUBSCRIPTION_ID}" - ; - from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "204 No Content" - ; - to the MEC_CONSUMER entity - } - } - } - - -Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_014_OK" - - Test objective - "Check that MEC API provider service cancels an on going LCM Operation" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.11.3.1", - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.32.2-1" // CancelMode - - Config Id Config_MEC_6 - - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity having a App_LCM_op_occ containing - id indicating value APP_LCM_OP_OCC_ID; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "/app_lcm/v1/app_instances/app_lcm_op_occs/{APP_LCM_OP_OCC_ID}/cancel" - body containing - CancelMode containing - CancelMode set to GRACEFUL - ; - ; - ; from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "202 Accepted" - ; to the MEC_CONSUMER entity - } - } - } - - -Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_015_OK" - - Test objective - "Check that MEC API provider service makes failed an on going LCM Operation" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.12.3.1" - - Config Id Config_MEC_6 - - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity having a App_LCM_op_occ containing - id indicating value APP_LCM_OP_OCC_ID, - operationStates indicating value FAILED_TEMP; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "/app_lcm/v1/app_instances/app_lcm_op_occs/{APP_LCM_OP_OCC_ID}/fail"; - from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "200 OK" - body containing - AppLcmOpOcc containing - SubscriptionInfo containing - id set to APP_LCM_OP_OCC_ID, - operationState set to FAILED, - stateEnteredTime set to any_value, - startTime set to any_value, - lcmOperation set to any_value, - _links containing - _self set to "/app_lcm/v1/subscriptions/{SUBSCRIPTION_ID}", - appInstance set to "/app_lcm/v1/app_instances/{APP_INSTANCE_ID}" - ; - ; - ; - ; - - - ; to the MEC_CONSUMER entity - } - } - } - - -Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_016_OK" - - Test objective - "Check that MEC API provider service retries an on going LCM Operation" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.13.3.1" - - Config Id Config_MEC_6 - - PICS Selection PIC_APP_LCM_MANAGEMENT - - Initial conditions with { - the IUT entity having a App_LCM_op_occ containing - id indicating value APP_LCM_OP_OCC_ID, - operationStates indicating value FAILED_TEMP; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "/app_lcm/v1/app_instances/app_lcm_op_occs/{APP_LCM_OP_OCC_ID}/retry"; - from the MEC_CONSUMER entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "200 Accepted"; - to the MEC_CONSUMER entity - } - } - } - -} diff --git a/Test Purposes/MEC010p2/MEX/LCM/AppInstanceMgmt_notifications.tplan2 b/Test Purposes/MEC010p2/MEX/LCM/AppInstanceMgmt_notifications.tplan2 deleted file mode 100644 index 2b15706bc4e30bf3e4134d04e5a447bd9e40f210..0000000000000000000000000000000000000000 --- a/Test Purposes/MEC010p2/MEX/LCM/AppInstanceMgmt_notifications.tplan2 +++ /dev/null @@ -1,62 +0,0 @@ -/* -Copyright (c) ETSI 2018-2021. -Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters -*/ -Package MEC_MEC010p2_LCM_NOTIF { - - import all from MEC_Common; - - Test Purpose { - TP Id "TP_MEC_MEC010p2_MEX_LCM_017_OK" - - Test objective - "Check that MEC API provider sends a notification to the subscriber when an application LCM change event occurs" - - Reference "ETSI GS MEC 010-2 2.2.1, clause 7.4.5.3.1", - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.11.2-1", // AppInstNotification - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.16.2-1", // AppLcmOpOccNotification - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.27.2-1", // AppInstanceIdentifierCreationNotification - "ETSI GS MEC 010-2 2.2.1, table 6.2.2.30.2-1" // AppInstanceIdentifierDeletionNotification - - - Config Id Config_MEC_6 - PICS Selection PIC_APP_LCM_NOTIFICATIONS - - Initial conditions with { - the IUT entity having a App_Instance_Subscription containing - subscriptionType indicating value SUBSCRIPTION_TYPE, - callbackUri indicating value CALLBACK_URI, - _links containing - self indicating value "/app_lcm/v1/subscriptions/{SUBSCRIPTION_ID}" - ; - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity generates a application_lcm_change_event containing - notificationId set to NOTIFICATION_ID; - } - then { - the IUT entity sends a vPOST containing - uri indicating value CALLBACK_URI, - body containing - Notification containing - id set to NOTIFICATION_ID, - notificationType set to NOTIFICATION_TYPE, - subscriptionId set to SUBSCRIPTION_ID, - timeStamp set to any_value, - appInstanceId set to APP_INSTANCE_ID, - appDId set to any_value, - _links containing - subscription set to "/app_lcm/v1/app_instances/{APP_INSTANCE_ID}" - ; - ; - ; - ; to the MEC_SUB entity - } - } - } - -} diff --git a/Test Purposes/MEC011/SRV/APPSAQ/PlatAppServices.tplan2 b/Test Purposes/MEC011/SRV/APPSAQ/PlatAppServices.tplan2 index eb2a73e8b1e7fe5602c066367d5768f7507e7889..6239e79c133207c47a3c71f72d1bb620a833625b 100644 --- a/Test Purposes/MEC011/SRV/APPSAQ/PlatAppServices.tplan2 +++ b/Test Purposes/MEC011/SRV/APPSAQ/PlatAppServices.tplan2 @@ -1,5 +1,5 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters */ @@ -15,11 +15,12 @@ Package MEC_MEC011_SRV_APPSAQ { TP Id "TP_MEC_MEC011_SRV_APPSAQ_001_OK" Test objective - "Check that the IUT responds with a list of available MEC services - for a given application instance when queried by a MEC Application" + "Check that the IUT responds with a list of available MEC services for a given application instance when queried by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 8.2.6.3.1", - "https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/master/MecServiceMgmtApi.yaml#L722#/definitions/ServiceInfo" //Outdated + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.5", + "ETSI GS MEC 011 3.2.1, clause 8.1.2.2", + "ETSI GS MEC 011 3.2.1, clause 8.2.6.3.1" Config Id Config_MEC_1 @@ -28,27 +29,23 @@ Package MEC_MEC011_SRV_APPSAQ { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; + instance_id indicating value APP_INSTANCE_ID; } - // MEC 011 2.2.1, clause 5.2.5 + // MEC 011 3.2.1, clause 5.2.5 Expected behaviour ensure that { when { the IUT entity receives a vGET containing - uri indicating value "/mec_service_mgmt/v1/applications/{APP_INSTANCE_ID}/services" - ; + uri indicating value "/mec_service_mgmt/v1/applications/{APP_INSTANCE_ID}/services"; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 8.2.6.3.1 + // MEC 011 3.2.1, clause 8.2.6.3.1 the IUT entity sends a HTTP_RESPONSE containing status_code set to "200 OK" body containing - ServiceInfo set to any_value // @TODO: Should be a list of ServiceInfos. How can we express it in TDL? - ; - ; + ServiceInfo set to any_value;; // @TODO: Should be a list of ServiceInfos. How can we express it in TDL? to the MEC_APP entity } } @@ -59,10 +56,12 @@ Package MEC_MEC011_SRV_APPSAQ { TP Id "TP_MEC_MEC011_SRV_APPSAQ_001_BR" Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 8.2.6.3.1" + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.5", + "ETSI GS MEC 011 3.2.1, clause 8.1.2.2", + "ETSI GS MEC 011 3.2.1, clause 8.2.6.3.1" Config Id Config_MEC_1 @@ -71,28 +70,23 @@ Package MEC_MEC011_SRV_APPSAQ { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; + instance_id indicating value APP_INSTANCE_ID; } - // MEC 011 2.2.1, clause 5.2.5 + // MEC 011 3.2.1, clause 5.2.5 Expected behaviour ensure that { when { the IUT entity receives a vGET containing uri indicating value "/mec_service_mgmt/v1/applications/{APP_INSTANCE_ID}/services" query_parameters containing - // Wrong parameter name should trigger an error response. - instance_id indicating value any_value - ; - ; + instance_id indicating value any_value;; // Wrong parameter name should trigger an error response. from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 8.2.6.3.1 + // MEC 011 3.2.1, clause 8.2.6.3.1 the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; + status_code set to "400 Bad Request"; to the MEC_APP entity } } @@ -103,12 +97,12 @@ Package MEC_MEC011_SRV_APPSAQ { TP Id "TP_MEC_MEC011_SRV_APPSAQ_002_OK" Test objective - "Check that the IUT notifies the authorised relevant (subscribed) application - instances when a new service for a given application instance is registered" - - Reference "ETSI GS MEC 011 2.2.1, clause 8.2.6.3.4", - "https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/master/MecServiceMgmtApi.yaml#L722#/definitions/ServiceInfo" //Outdated + "Check that the IUT notifies the authorised relevant (subscribed) application instances when a new service for a given application instance is registered" + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.5", + "ETSI GS MEC 011 3.2.1, clause 8.1.2.2", + "ETSI GS MEC 011 3.2.1, clause 8.2.6.3.4" Config Id Config_MEC_1 PICS Selection PIC_MEC_PLAT and PIC_SERVICES and PIC_NOTIFICATIONS @@ -116,13 +110,12 @@ Package MEC_MEC011_SRV_APPSAQ { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; and + instance_id indicating value APP_INSTANCE_ID; and the MEC_APP_Registrant entity being_in idle_state and the MEC_APP_Subscriber entity subscribed_to the MP1_SUBSCRIPTION_A } - // MEC 011 2.2.1, clause 5.2.4 + // MEC 011 3.2.1, clause 5.2.4 Expected behaviour ensure that { when { @@ -130,37 +123,25 @@ Package MEC_MEC011_SRV_APPSAQ { uri indicating value "/mec_service_mgmt/v1/applications/{APP_INSTANCE_ID}/services", body containing ServiceInfo containing - serName indicating value SERVICE_NAME - ; - ; - ; + serName indicating value SERVICE_NAME;;; from the MEC_APP_Registrant entity } then { - // MEC 011 2.2.1, clause 8.2.6.3.4 + // MEC 011 3.2.1, clause 8.2.6.3.4 the IUT entity sends a HTTP_RESPONSE containing status_code set to "201 Created", Location set to LOCATION, body containing ServiceInfo containing - serName set to SERVICE_NAME - ; - ; - ; + serName set to SERVICE_NAME;;; to the MEC_APP_Registrant entity - and - - the IUT entity sends a notification_message containing + and the IUT entity sends a notification_message containing body containing - notificationType set to "SerAvailabilityNotification", + notificationType set to "SerAvailabilityNotificationSubscription", services containing serName set to SERVICE_NAME _links containing - subscription set to MP1_SUBSCRIPTION_A - ; - ; - ; - ; + subscription set to MP1_SUBSCRIPTION_A;;;; to the MEC_APP_Subscriber entity } } @@ -171,10 +152,12 @@ Package MEC_MEC011_SRV_APPSAQ { TP Id "TP_MEC_MEC011_SRV_APPSAQ_002_BR" Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 8.2.6.3.4" + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.5", + "ETSI GS MEC 011 3.2.1, clause 8.1.2.2", + "ETSI GS MEC 011 3.2.1, clause 8.2.6.3.4" Config Id Config_MEC_1 @@ -183,13 +166,12 @@ Package MEC_MEC011_SRV_APPSAQ { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; and + instance_id indicating value APP_INSTANCE_ID; and the MEC_APP_Registrant entity being_in idle_state and the MEC_APP_Subscriber entity subscribed_to the MP1_SUBSCRIPTION_A } - // MEC 011 2.2.1, clause 5.2.4 + // MEC 011 3.2.1, clause 5.2.4 Expected behaviour ensure that { when { @@ -197,18 +179,13 @@ Package MEC_MEC011_SRV_APPSAQ { uri indicating value "/mec_service_mgmt/v1/applications/{APP_INSTANCE_ID}/services", body containing ServiceInfo containing - // Wrong parameter name should trigger an error response. - Name indicating value SERVICE_NAME - ; - ; - ; + Name indicating value SERVICE_NAME;;; // Wrong parameter name should trigger an error response. from the MEC_APP_Registrant entity } then { - // MEC 011 2.2.1, clause 8.2.6.3.4 + // MEC 011 3.2.1, clause 8.2.6.3.4 the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; + status_code set to "400 Bad Request"; to the MEC_APP_Registrant entity } } @@ -219,10 +196,12 @@ Package MEC_MEC011_SRV_APPSAQ { TP Id "TP_MEC_MEC011_SRV_APPSAQ_002_NF" Test objective - "Check that the IUT responds with an error when - a request for an unknown URI is sent by a MEC Application" + "Check that the IUT responds with an error when a request for an unknown URI is sent by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 8.2.6.3.4" + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.5", + "ETSI GS MEC 011 3.2.1, clause 8.1.2.2", + "ETSI GS MEC 011 3.2.1, clause 8.2.6.3.4" Config Id Config_MEC_1 @@ -231,13 +210,12 @@ Package MEC_MEC011_SRV_APPSAQ { Initial conditions with { the IUT entity being_in idle_state and the IUT entity not having a apps_instance containing - instance_id indicating value NON_EXISTENT_APP_INSTANCE_ID - ; and + instance_id indicating value NON_EXISTENT_APP_INSTANCE_ID; and the MEC_APP_Registrant entity being_in idle_state and the MEC_APP_Subscriber entity subscribed_to the MP1_SUBSCRIPTION_A } - // MEC 011 2.2.1, clause 5.2.4 + // MEC 011 3.2.1, clause 5.2.4 Expected behaviour ensure that { when { @@ -245,17 +223,13 @@ Package MEC_MEC011_SRV_APPSAQ { uri indicating value "/mec_service_mgmt/v1/applications/{NON_EXISTENT_APP_INSTANCE_ID}/services", body containing ServiceInfo containing - serName indicating value SERVICE_NAME - ; - ; - ; + serName indicating value SERVICE_NAME;;; from the MEC_APP_Registrant entity } then { - // MEC 011 2.2.1, clause 8.2.6.3.4 + // MEC 011 3.2.1, clause 8.2.6.3.4 the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; + status_code set to "404 Not Found"; to the MEC_APP_Registrant entity } } @@ -266,12 +240,12 @@ Package MEC_MEC011_SRV_APPSAQ { TP Id "TP_MEC_MEC011_SRV_APPSAQ_003_OK" Test objective - "Check that the IUT responds with the information on a specific service - for a given application instance when queried by a MEC Application" - - Reference "ETSI GS MEC 011 2.2.1, clause 8.2.7.3.1", - "https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/master/MecServiceMgmtApi.yaml#L722#/definitions/ServiceInfo" //Outdated + "Check that the IUT responds with the information on a specific service for a given application instance when queried by a MEC Application" + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.5", + "ETSI GS MEC 011 3.2.1, clause 8.1.2.2", + "ETSI GS MEC 011 3.2.1, clause 8.2.7.3.1" Config Id Config_MEC_1 PICS Selection PIC_MEC_PLAT and PIC_SERVICES @@ -279,32 +253,26 @@ Package MEC_MEC011_SRV_APPSAQ { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; and + instance_id indicating value APP_INSTANCE_ID; and the IUT entity having a services_running containing - service_id indicating value SERVICE_ID - ; + service_id indicating value SERVICE_ID; } - // MEC 011 2.2.1, clause 5.2.5 + // MEC 011 3.2.1, clause 5.2.5 Expected behaviour ensure that { when { the IUT entity receives a vGET containing - uri indicating value "/mec_service_mgmt/v1/applications/{APP_INSTANCE_ID}/services/{SERVICE_ID}" - ; + uri indicating value "/mec_service_mgmt/v1/applications/{APP_INSTANCE_ID}/services/{SERVICE_ID}"; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 8.2.7.3.1 + // MEC 011 3.2.1, clause 8.2.7.3.1 the IUT entity sends a HTTP_RESPONSE containing status_code set to "200 OK" body containing ServiceInfo containing - serInstanceId set to SERVICE_ID - ; - ; - ; + serInstanceId set to SERVICE_ID;;; to the MEC_APP entity } } @@ -315,10 +283,12 @@ Package MEC_MEC011_SRV_APPSAQ { TP Id "TP_MEC_MEC011_SRV_APPSAQ_003_NF" Test objective - "Check that the IUT responds with an error when - a request for an unknown URI is sent by a MEC Application" + "Check that the IUT responds with an error when a request for an unknown URI is sent by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 8.2.7.3.1" + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.5", + "ETSI GS MEC 011 3.2.1, clause 8.1.2.2", + "ETSI GS MEC 011 3.2.1, clause 8.2.7.3.1" Config Id Config_MEC_1 @@ -327,27 +297,23 @@ Package MEC_MEC011_SRV_APPSAQ { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; and + instance_id indicating value APP_INSTANCE_ID; and the IUT entity not having a services_running containing - service_id indicating value NON_EXISTENT_SERVICE_ID - ; + service_id indicating value NON_EXISTENT_SERVICE_ID; } - // MEC 011 2.2.1, clause 5.2.5 + // MEC 011 3.2.1, clause 5.2.5 Expected behaviour ensure that { when { the IUT entity receives a vGET containing - uri indicating value "/mec_service_mgmt/v1/applications/{APP_INSTANCE_ID}/services/{NON_EXISTENT_SERVICE_ID}" - ; + uri indicating value "/mec_service_mgmt/v1/applications/{APP_INSTANCE_ID}/services/{NON_EXISTENT_SERVICE_ID}"; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 8.2.7.3.1 + // MEC 011 3.2.1, clause 8.2.7.3.1 the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; + status_code set to "404 Not Found"; to the MEC_APP entity } } @@ -358,11 +324,12 @@ Package MEC_MEC011_SRV_APPSAQ { TP Id "TP_MEC_MEC011_SRV_APPSAQ_004_OK" Test objective - "Check that the IUT updates a service information for a given - application instance when commanded by a MEC Application" + "Check that the IUT updates a service information for a given application instance when commanded by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 8.2.7.3.2", - "https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/master/MecServiceMgmtApi.yaml#L722#/definitions/ServiceInfo" //Outdated + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.4", + "ETSI GS MEC 011 3.2.1, clause 8.1.2.2", + "ETSI GS MEC 011 3.2.1, clause 8.2.7.3.2" Config Id Config_MEC_1 @@ -372,14 +339,12 @@ Package MEC_MEC011_SRV_APPSAQ { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; and + instance_id indicating value APP_INSTANCE_ID; and the IUT entity having a services_running containing - service_id indicating value SERVICE_ID - ; + service_id indicating value SERVICE_ID; } - // MEC 011 2.2.1, clause 5.2.4 + // MEC 011 3.2.1, clause 5.2.4 Expected behaviour ensure that { when { @@ -387,22 +352,16 @@ Package MEC_MEC011_SRV_APPSAQ { uri indicating value "/mec_service_mgmt/v1/applications/{APP_INSTANCE_ID}/services/{SERVICE_ID}", body containing ServiceInfo containing - version indicating value NEW_VERSION - ; - ; - ; + version indicating value NEW_VERSION;;; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 8.2.7.3.2 + // MEC 011 3.2.1, clause 8.2.7.3.2 the IUT entity sends a HTTP_RESPONSE containing status_code set to "200 OK" body containing ServiceInfo containing - version set to NEW_VERSION - ; - ; - ; + version set to NEW_VERSION;;; to the MEC_APP entity } } @@ -413,10 +372,12 @@ Package MEC_MEC011_SRV_APPSAQ { TP Id "TP_MEC_MEC011_SRV_APPSAQ_004_BR" Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 8.2.7.3.2" + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.4", + "ETSI GS MEC 011 3.2.1, clause 8.1.2.2", + "ETSI GS MEC 011 3.2.1, clause 8.2.7.3.2" Config Id Config_MEC_1 @@ -425,14 +386,12 @@ Package MEC_MEC011_SRV_APPSAQ { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; and + instance_id indicating value APP_INSTANCE_ID; and the IUT entity having a services_running containing - service_id indicating value SERVICE_ID - ; + service_id indicating value SERVICE_ID; } - // MEC 011 2.2.1, clause 5.2.4 + // MEC 011 3.2.1, clause 5.2.4 Expected behaviour ensure that { when { @@ -440,18 +399,13 @@ Package MEC_MEC011_SRV_APPSAQ { uri indicating value "/mec_service_mgmt/v1/applications/{APP_INSTANCE_ID}/services/{SERVICE_ID}", body containing ServiceInfo containing - // Wrong parameter name should trigger an error response. - a_version indicating value NEW_VERSION - ; - ; - ; + a_version indicating value NEW_VERSION;;; // Wrong parameter name should trigger an error response. from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 8.2.7.3.2 + // MEC 011 3.2.1, clause 8.2.7.3.2 the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; + status_code set to "400 Bad Request"; to the MEC_APP entity } } @@ -462,11 +416,12 @@ Package MEC_MEC011_SRV_APPSAQ { TP Id "TP_MEC_MEC011_SRV_APPSAQ_004_NF" Test objective - "Check that the IUT responds with an error when - a request for an unknown URI is sent by a MEC Application" - - Reference "ETSI GS MEC 011 2.2.1, clause 8.2.7.3.2" + "Check that the IUT responds with an error when a request for an unknown URI is sent by a MEC Application" + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.4", + "ETSI GS MEC 011 3.2.1, clause 8.1.2.2", + "ETSI GS MEC 011 3.2.1, clause 8.2.7.3.2" Config Id Config_MEC_1 PICS Selection PIC_MEC_PLAT and PIC_SERVICES @@ -474,14 +429,12 @@ Package MEC_MEC011_SRV_APPSAQ { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; and + instance_id indicating value APP_INSTANCE_ID; and the IUT entity not having a services_running containing - service_id indicating value NON_EXISTENT_SERVICE_ID - ; + service_id indicating value NON_EXISTENT_SERVICE_ID; } - // MEC 011 2.2.1, clause 5.2.4 + // MEC 011 3.2.1, clause 5.2.4 Expected behaviour ensure that { when { @@ -489,23 +442,18 @@ Package MEC_MEC011_SRV_APPSAQ { uri indicating value "/mec_service_mgmt/v1/applications/{APP_INSTANCE_ID}/services/{NON_EXISTENT_SERVICE_ID}", body containing ServiceInfo containing - version indicating value NEW_VERSION - ; - ; - ; + version indicating value NEW_VERSION;;; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 8.2.7.3.2 + // MEC 011 3.2.1, clause 8.2.7.3.2 the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; + status_code set to "404 Not Found"; to the MEC_APP entity } } } -/* Removed cause the ETag is not mandatory. Cannot be tested Test Purpose { TP Id "TP_MEC_MEC011_SRV_APPSAQ_004_PF" @@ -513,7 +461,7 @@ Package MEC_MEC011_SRV_APPSAQ { "Check that the IUT responds with an error when a request sent by a MEC Application doesn't comply with a required condition" - Reference "ETSI GS MEC 011 2.2.1, clause 8.2.7.3.2" + Reference "ETSI GS MEC 011 3.2.1, clause 8.2.7.3.2" Config Id Config_MEC_1 @@ -529,7 +477,7 @@ Package MEC_MEC011_SRV_APPSAQ { ; } - // MEC 011 2.2.1, clause 5.2.4 + // MEC 011 3.2.1, clause 5.2.4 Expected behaviour ensure that { when { @@ -545,7 +493,7 @@ Package MEC_MEC011_SRV_APPSAQ { from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 8.2.7.3.2 + // MEC 011 3.2.1, clause 8.2.7.3.2 the IUT entity sends a HTTP_RESPONSE containing status_code set to "412 Precondition Failed" ; @@ -554,8 +502,6 @@ Package MEC_MEC011_SRV_APPSAQ { } } - */ - Test Purpose { TP Id "TP_MEC_MEC011_SRV_APPSAQ_005_OK" @@ -563,7 +509,7 @@ Package MEC_MEC011_SRV_APPSAQ { "Check that the IUT executes the deletion of a service for a given application instance when requested by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 8.2.7.3.5" + Reference "ETSI GS MEC 011 3.2.1, clause 8.2.7.3.5" Config Id Config_MEC_1 @@ -576,7 +522,7 @@ Package MEC_MEC011_SRV_APPSAQ { ; } - // MEC 011 2.2.1, clause 5.2.4 + // MEC 011 3.2.1, clause 5.2.4 Expected behaviour ensure that { when { @@ -586,7 +532,7 @@ Package MEC_MEC011_SRV_APPSAQ { from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 8.2.7.3.2 + // MEC 011 3.2.1, clause 8.2.7.3.2 the IUT entity sends a HTTP_RESPONSE containing status_code set to "204 No Content" ; @@ -602,7 +548,7 @@ Package MEC_MEC011_SRV_APPSAQ { "Check that the IUT responds with an error when a request for deletion of a unknown service is sent by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 8.2.7.3.5" + Reference "ETSI GS MEC 011 3.2.1, clause 8.2.7.3.5" Config Id Config_MEC_1 @@ -615,7 +561,7 @@ Package MEC_MEC011_SRV_APPSAQ { ; } - // MEC 011 2.2.1, clause 5.2.4 + // MEC 011 3.2.1, clause 5.2.4 Expected behaviour ensure that { when { @@ -625,7 +571,7 @@ Package MEC_MEC011_SRV_APPSAQ { from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 8.2.7.3.2 + // MEC 011 3.2.1, clause 8.2.7.3.2 the IUT entity sends a HTTP_RESPONSE containing status_code set to "404 Not Found" ; diff --git a/Test Purposes/MEC011/SRV/APPSUB/PlatAppSubscriptions.tplan2 b/Test Purposes/MEC011/SRV/APPSUB/PlatAppSubscriptions.tplan2 index 1264874fe9f68d4555ed995464787a9eb1df4276..4125c1209e2cbc6771f9585965b89e5a41ac5f91 100644 --- a/Test Purposes/MEC011/SRV/APPSUB/PlatAppSubscriptions.tplan2 +++ b/Test Purposes/MEC011/SRV/APPSUB/PlatAppSubscriptions.tplan2 @@ -1,5 +1,5 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters */ @@ -15,11 +15,11 @@ Package MEC_MEC011_SRV_APPSUB { TP Id "TP_MEC_MEC011_SRV_APPSUB_001_OK" Test objective - "Check that the IUT responds with a list of subscriptions for notifications - on services availability when queried by a MEC Application" + "Check that the IUT responds with a list of subscriptions for notifications on services availability when queried by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 7.2.3.3.1", - "https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/master/MecAppSupportApi.yaml#L574#/definitions/MecAppSuptApiSubscriptionLinkList" //Outdated + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.6", + "ETSI GS MEC 011 3.2.1, clause 7.2.3.3.1" Config Id Config_MEC_1 @@ -28,27 +28,25 @@ Package MEC_MEC011_SRV_APPSUB { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; + instance_id indicating value APP_INSTANCE_ID; and + the IUT entity having a subscriptions containing + subscription_id indicating value SUBSCRIPTION_ID; } - // MEC 011 2.2.1, clause 5.2.6 + // MEC 011 3.2.1, clause 5.2.6 Expected behaviour ensure that { when { the IUT entity receives a vGET containing - uri indicating value "mec_app_support/v1/applications/{APP_INSTANCE_ID}/subscriptions" - ; + uri indicating value "mec_app_support/v2/applications/{APP_INSTANCE_ID}/subscriptions"; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 7.2.3.3.1 + // MEC 011 3.2.1, clause 7.2.3.3.1 the IUT entity sends a HTTP_RESPONSE containing status_code set to "200 OK" body containing - SubscriptionLinkList set to any_value - ; - ; + SubscriptionLinkList set to any_value;; to the MEC_APP entity } } @@ -59,10 +57,11 @@ Package MEC_MEC011_SRV_APPSUB { TP Id "TP_MEC_MEC011_SRV_APPSUB_001_NF" Test objective - "Check that the IUT responds with an error when - a request for an unknown URI is sent by a MEC Application" + "Check that the IUT responds with an error when a request for an unknown URI is sent by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 7.2.3.3.1" + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.6", + "ETSI GS MEC 011 3.2.1, clause 7.2.3.3.1" Config Id Config_MEC_1 @@ -71,24 +70,21 @@ Package MEC_MEC011_SRV_APPSUB { Initial conditions with { the IUT entity being_in idle_state and the IUT entity not having a apps_instance containing - instance_id indicating value NON_EXISTENT_APP_INSTANCE_ID - ; + instance_id indicating value NON_EXISTENT_APP_INSTANCE_ID; } - // MEC 011 2.2.1, clause 5.2.6 + // MEC 011 3.2.1, clause 5.2.6 Expected behaviour ensure that { when { the IUT entity receives a vGET containing - uri indicating value "mec_app_support/v1/applications/{NON_EXISTENT_APP_INSTANCE_ID}/subscriptions" - ; + uri indicating value "mec_app_support/v2/applications/{NON_EXISTENT_APP_INSTANCE_ID}/subscriptions"; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 7.2.3.3.1 + // MEC 011 3.2.1, clause 7.2.3.3.1 the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; + status_code set to "404 Not Found"; to the MEC_APP entity } } @@ -99,11 +95,11 @@ Package MEC_MEC011_SRV_APPSUB { TP Id "TP_MEC_MEC011_SRV_APPSUB_002_OK" Test objective - "Check that the IUT acknowledges the subscription by a MEC Application - to notifications on termination events" + "Check that the IUT acknowledges the subscription by a MEC Application to notifications on termination events" - Reference "ETSI GS MEC 011 2.2.1, clause 7.2.3.3.4", - "https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/master/MecAppSupportApi.yaml#L383#/definitions/AppTerminationNotificationSubscription" //Outdated + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.6", + "ETSI GS MEC 011 3.2.1, clause 7.2.3.3.4" Config Id Config_MEC_1 @@ -112,37 +108,31 @@ Package MEC_MEC011_SRV_APPSUB { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; + instance_id indicating value APP_INSTANCE_ID; and + the IUT entity not having any subscriptions } - // MEC 011 2.2.1, clause 7.2.3.3.4 + // MEC 011 3.2.1, clause 7.2.3.3.4 Expected behaviour ensure that { when { the IUT entity receives a vPOST containing - uri indicating value "mec_app_support/v1/applications/{APP_INSTANCE_ID}/subscriptions" + uri indicating value "mec_app_support/v2/applications/{APP_INSTANCE_ID}/subscriptions" body containing AppTerminationNotificationSubscription containing subscriptionType indicating value "AppTerminationNotificationSubscription", - callbackReference indicating value some_uri - ; - ; - ; + callbackReference indicating value some_uri;;; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 7.2.3.3.4 + // MEC 011 3.2.1, clause 7.1.4.2 the IUT entity sends a HTTP_RESPONSE containing status_code set to "201 Created", Location set to LOCATION, body containing AppTerminationNotificationSubscription containing subscriptionType set to "AppTerminationNotificationSubscription", - callbackReference set to some_uri - ; - ; - ; + callbackReference set to some_uri;;; to the MEC_APP entity } } @@ -153,10 +143,11 @@ Package MEC_MEC011_SRV_APPSUB { TP Id "TP_MEC_MEC011_SRV_APPSUB_002_BR" Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 7.2.3.3.4" + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.6", + "ETSI GS MEC 011 3.2.1, clause 7.2.3.3.4" Config Id Config_MEC_1 @@ -165,31 +156,26 @@ Package MEC_MEC011_SRV_APPSUB { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; + instance_id indicating value APP_INSTANCE_ID; and + the IUT entity not having any subscriptions } - // MEC 011 2.2.1, clause 5.2.6.2 + // MEC 011 3.2.1, clause 5.2.6.2 Expected behaviour ensure that { when { the IUT entity receives a vPOST containing - uri indicating value "mec_app_support/v1/applications/{APP_INSTANCE_ID}/subscriptions" + uri indicating value "mec_app_support/v2/applications/{APP_INSTANCE_ID}/subscriptions" body containing AppTerminationNotificationSubscription containing - // Unknown value should trigger an error response. - subscriptionType indicating value INVALID_SUBSCRIPTION_TYPE, - callbackReference indicating value some_uri - ; - ; - ; + subscriptionType indicating value "INVALID_SUBSCRIPTION_TYPE", // Unknown value should trigger an error response. + callbackReference indicating value some_uri;;; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 7.2.3.3.4 + // MEC 011 3.2.1, clause 7.2.3.3.4 the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; + status_code set to "400 Bad Request"; to the MEC_APP entity } } @@ -200,11 +186,11 @@ Package MEC_MEC011_SRV_APPSUB { TP Id "TP_MEC_MEC011_SRV_APPSUB_003_OK" Test objective - "Check that the IUT responds with the information on a specific subscription - when queried by a MEC Application" + "Check that the IUT responds with the information on a specific subscription when queried by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 7.2.4.3.1", - "https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/master/MecAppSupportApi.yaml#L383#/definitions/AppTerminationNotificationSubscription" //Outdated + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.6", + "ETSI GS MEC 011 3.2.1, clause 7.2.4.3.1" Config Id Config_MEC_1 @@ -213,32 +199,26 @@ Package MEC_MEC011_SRV_APPSUB { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; and + instance_id indicating value APP_INSTANCE_ID; and the IUT entity having a subscriptions containing - subscription_id indicating value SUBSCRIPTION_ID - ; + subscription_id indicating value SUBSCRIPTION_ID; } - // MEC 011 2.2.1, clause 5.2.6 + // MEC 011 3.2.1, clause 5.2.6 Expected behaviour ensure that { when { the IUT entity receives a vGET containing - uri indicating value "mec_app_support/v1/applications/{APP_INSTANCE_ID}/subscriptions/{SUBSCRIPTION_ID}" - ; + uri indicating value "mec_app_support/v2/applications/{APP_INSTANCE_ID}/subscriptions/{SUBSCRIPTION_ID}"; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 7.2.4.3.1 + // MEC 011 3.2.1, clause 7.2.4.3.1 the IUT entity sends a HTTP_RESPONSE containing status_code set to "200 OK" body containing AppTerminationNotificationSubscription containing - subscriptionType set to "AppTerminationNotificationSubscription" - ; - ; - ; + subscriptionType set to "AppTerminationNotificationSubscription";;; to the MEC_APP entity } } @@ -249,11 +229,11 @@ Package MEC_MEC011_SRV_APPSUB { TP Id "TP_MEC_MEC011_SRV_APPSUB_003_NF" Test objective - "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" + "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" - Reference "ETSI GS MEC 011 2.2.1, clause 7.2.4.3.1" + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.6", + "ETSI GS MEC 011 3.2.1, clause 7.2.4.3.1" Config Id Config_MEC_1 @@ -262,27 +242,24 @@ Package MEC_MEC011_SRV_APPSUB { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; and + instance_id indicating value APP_INSTANCE_ID; and the IUT entity not having a subscriptions containing subscription_id indicating value NON_EXISTENT_SUBSCRIPTION_ID ; } - // MEC 011 2.2.1, clause 5.2.6 + // MEC 011 3.2.1, clause 5.2.6 Expected behaviour ensure that { when { the IUT entity receives a vGET containing - uri indicating value "mec_app_support/v1/applications/{APP_INSTANCE_ID}/subscriptions/{NON_EXISTENT_SUBSCRIPTION_ID}" - ; + uri indicating value "mec_app_support/v2/applications/{APP_INSTANCE_ID}/subscriptions/{NON_EXISTENT_SUBSCRIPTION_ID}"; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 7.2.4.3.1 + // MEC 011 3.2.1, clause 7.2.4.3.1 the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; + status_code set to "404 Not Found"; to the MEC_APP entity } } @@ -293,10 +270,11 @@ Package MEC_MEC011_SRV_APPSUB { TP Id "TP_MEC_MEC011_SRV_APPSUB_004_OK" Test objective - "Check that the IUT acknowledges the unsubscribe from app termination - event notifications when commanded by a MEC Application" + "Check that the IUT acknowledges the unsubscribe from app termination event notifications when commanded by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 7.2.4.3.5" + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.6", + "ETSI GS MEC 011 3.2.1, clause 7.2.4.3.5" Config Id Config_MEC_1 @@ -305,27 +283,23 @@ Package MEC_MEC011_SRV_APPSUB { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; and + instance_id indicating value APP_INSTANCE_ID; and the IUT entity having a subscriptions containing - subscription_id indicating value SUBSCRIPTION_ID - ; + subscription_id indicating value SUBSCRIPTION_ID; } - // MEC 011 2.2.1, clause 5.2.6 + // MEC 011 3.2.1, clause 5.2.6 Expected behaviour ensure that { when { the IUT entity receives a vDELETE containing - uri indicating value "mec_app_support/v1/applications/{APP_INSTANCE_ID}/subscriptions/{SUBSCRIPTION_ID}" - ; + uri indicating value "mec_app_support/v2/applications/{APP_INSTANCE_ID}/subscriptions/{SUBSCRIPTION_ID}"; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 7.2.4.3.5 + // MEC 011 3.2.1, clause 7.2.4.3.5 the IUT entity sends a HTTP_RESPONSE containing - status_code set to "204 No Content" - ; + status_code set to "204 No Content"; to the MEC_APP entity } } @@ -336,11 +310,11 @@ Package MEC_MEC011_SRV_APPSUB { TP Id "TP_MEC_MEC011_SRV_APPSUB_004_NF" Test objective - "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" + "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" - Reference "ETSI GS MEC 011 2.2.1, clause 7.2.4.3.5" + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.6", + "ETSI GS MEC 011 3.2.1, clause 7.2.4.3.5" Config Id Config_MEC_1 @@ -349,27 +323,23 @@ Package MEC_MEC011_SRV_APPSUB { Initial conditions with { the IUT entity being_in idle_state and the IUT entity not having a apps_instance containing - instance_id indicating value NON_EXISTENT_APP_INSTANCE_ID - ; and + instance_id indicating value NON_EXISTENT_APP_INSTANCE_ID; and the IUT entity having a subscriptions containing - subscription_id indicating value SUBSCRIPTION_ID - ; + subscription_id indicating value SUBSCRIPTION_ID; } - // MEC 011 2.2.1, clause 5.2.6 + // MEC 011 3.2.1, clause 5.2.6 Expected behaviour ensure that { when { the IUT entity receives a vDELETE containing - uri indicating value "mec_app_support/v1/applications/{NON_EXISTENT_APP_INSTANCE_ID}/subscriptions/{SUBSCRIPTION_ID}" - ; + uri indicating value "mec_app_support/v2/applications/{NON_EXISTENT_APP_INSTANCE_ID}/subscriptions/{SUBSCRIPTION_ID}"; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 7.2.4.3.5 + // MEC 011 3.2.1, clause 7.2.4.3.5 the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; + status_code set to "404 Not Found"; to the MEC_APP entity } } diff --git a/Test Purposes/MEC011/SRV/CONFTASK/ConfirmTasks.tplan2 b/Test Purposes/MEC011/SRV/CONFTASK/ConfirmTasks.tplan2 index 0cbee430b86e849aee35c76a7cb35df18e6ded99..67ac08e05eee9064c00684aaaba22bf0bb3358c8 100644 --- a/Test Purposes/MEC011/SRV/CONFTASK/ConfirmTasks.tplan2 +++ b/Test Purposes/MEC011/SRV/CONFTASK/ConfirmTasks.tplan2 @@ -1,5 +1,5 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters */ @@ -19,8 +19,10 @@ Package MEC_MEC011_SRV_CONFTASK { Test objective "Check that the IUT responds that it has completed the application level termination" - Reference "ETSI GS MEC 011 2.2.1, clause 7.2.11.3.4", - "https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/master/MecAppSupportApi.yaml#L320#/definitions/AppTerminationConfirmation" //Outdated + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.3", + "ETSI GS MEC 011 3.2.1, clause 7.1.4.3", + "ETSI GS MEC 011 3.2.1, clause 7.2.11.3.4" Config Id Config_MEC_1 @@ -29,29 +31,24 @@ Package MEC_MEC011_SRV_CONFTASK { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; + instance_id indicating value APP_INSTANCE_ID; } - // MEC 011 2.2.1, clause 5.2.3 + // MEC 011 3.2.1, clause 5.2.3 Expected behaviour ensure that { when { the IUT entity receives a vPOST containing - uri indicating value "mec_app_support/v1/applications/{APP_INSTANCE_ID}/confirm_termination" + uri indicating value "mec_app_support/v2/applications/{APP_INSTANCE_ID}/confirm_termination" body containing AppTerminationConfirmation containing - operationAction indicating value "TERMINATING" - ; - ; - ; + operationAction indicating value "TERMINATING";;; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 7.2.11.3.4 + // MEC 011 3.2.1, clause 7.2.11.3.4 the IUT entity sends a HTTP_RESPONSE containing - status_code set to "204 No Content" - ; + status_code set to "204 No Content"; to the MEC_APP entity } } @@ -62,10 +59,12 @@ Package MEC_MEC011_SRV_CONFTASK { TP Id "TP_MEC_MEC011_SRV_CONFTASK_001_NF" Test objective - "Check that the IUT responds with an error when - a request for an operationAction is sent to an unknown application" + "Check that the IUT responds with an error when a request for an operationAction is sent to an unknown application" - Reference "ETSI GS MEC 011 2.2.1, clause 7.2.11.3.4" + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.3", + "ETSI GS MEC 011 3.2.1, clause 7.1.4.3", + "ETSI GS MEC 011 3.2.1, clause 7.2.11.3.4" Config Id Config_MEC_1 @@ -74,29 +73,24 @@ Package MEC_MEC011_SRV_CONFTASK { Initial conditions with { the IUT entity being_in idle_state and the IUT entity not having a apps_instance containing - instance_id indicating value NON_EXSITENT_APP_INSTANCE_ID - ; + instance_id indicating value NON_EXSITENT_APP_INSTANCE_ID; } - // MEC 011 2.2.1, clause 5.2.8 + // MEC 011 3.2.1, clause 5.2.8 Expected behaviour ensure that { when { the IUT entity receives a vPOST containing - uri indicating value "mec_app_support/v1/applications/{NON_EXSITENT_APP_INSTANCE_ID}/confirm_termination" + uri indicating value "mec_app_support/v2/applications/{NON_EXSITENT_APP_INSTANCE_ID}/confirm_termination" body containing AppTerminationConfirmation containing - operationAction indicating value "TERMINATING" - ; - ; - ; + operationAction indicating value "TERMINATING";;; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 7.2.10.3.1 + // MEC 011 3.2.1, clause 7.2.10.3.1 the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; + status_code set to "404 Not Found"; to the MEC_APP entity } } @@ -108,8 +102,10 @@ Package MEC_MEC011_SRV_CONFTASK { Test objective "Check that the IUT responds that the MEC application is up and running" - Reference "ETSI GS MEC 011 2.2.1, clause 7.2.12.3.4", - "https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/master/MecAppSupportApi.yaml#L311#/definitions/AppReadyConfirmation" //Outdated + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.3", + "ETSI GS MEC 011 3.2.1, clause 7.1.4.3", + "ETSI GS MEC 011 3.2.1, clause 7.2.12.3.4" Config Id Config_MEC_1 @@ -118,29 +114,24 @@ Package MEC_MEC011_SRV_CONFTASK { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; + instance_id indicating value APP_INSTANCE_ID; } - // MEC 011 2.2.1, clause 5.2.2 + // MEC 011 3.2.1, clause 5.2.2 Expected behaviour ensure that { when { the IUT entity receives a vPOST containing - uri indicating value "mec_app_support/v1/applications/{APP_INSTANCE_ID}/confirm_ready" + uri indicating value "mec_app_support/v2/applications/{APP_INSTANCE_ID}/confirm_ready" body containing AppReadyConfirmation containing - indication indicating value "READY" - ; - ; - ; + indication indicating value "READY";;; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 7.2.12.3.4 + // MEC 011 3.2.1, clause 7.2.12.3.4 the IUT entity sends a HTTP_RESPONSE containing - status_code set to "204 No Content" - ; + status_code set to "204 No Content"; to the MEC_APP entity } } @@ -151,10 +142,12 @@ Package MEC_MEC011_SRV_CONFTASK { TP Id "TP_MEC_MEC011_SRV_CONFTASK_002_NF" Test objective - "Check that the IUT responds with an error when - a request for an indication is sent to an unknown application" + "Check that the IUT responds with an error when a request for an indication is sent to an unknown application" - Reference "ETSI GS MEC 011 2.2.1, clause 7.2.12.3.4" + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.3", + "ETSI GS MEC 011 3.2.1, clause 7.1.4.3", + "ETSI GS MEC 011 3.2.1, clause 7.2.12.3.4" Config Id Config_MEC_1 @@ -163,31 +156,26 @@ Package MEC_MEC011_SRV_CONFTASK { Initial conditions with { the IUT entity being_in idle_state and the IUT entity not having a apps_instance containing - instance_id indicating value NON_EXSITENT_APP_INSTANCE_ID - ; + instance_id indicating value NON_EXSITENT_APP_INSTANCE_ID; } - // MEC 011 2.2.1, clause 5.2.8 + // MEC 011 3.2.1, clause 5.2.8 Expected behaviour ensure that { when { the IUT entity receives a vPOST containing - uri indicating value "mec_app_support/v1/applications/{NON_EXSITENT_APP_INSTANCE_ID}/confirm_ready" + uri indicating value "mec_app_support/v2/applications/{NON_EXSITENT_APP_INSTANCE_ID}/confirm_ready" body containing AppReadyConfirmation containing - indication indicating value "READY" - ; - ; - ; + indication indicating value "READY";;; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 7.2.12.3.4 + // MEC 011 3.2.1, clause 7.2.12.3.4 the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; + status_code set to "404 Not Found"; to the MEC_APP entity } } - } + } } diff --git a/Test Purposes/MEC011/SRV/DNS/PlatDnsRules.tplan2 b/Test Purposes/MEC011/SRV/DNS/PlatDnsRules.tplan2 index bcc9fa89b6f092ade6a895f2bf44b8e487f4fe06..da9f712fdb6d76c45d5a7884e0146f2d1ffdb917 100644 --- a/Test Purposes/MEC011/SRV/DNS/PlatDnsRules.tplan2 +++ b/Test Purposes/MEC011/SRV/DNS/PlatDnsRules.tplan2 @@ -1,5 +1,5 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters */ @@ -15,11 +15,12 @@ Package MEC_MEC011_SRV_DNS { TP Id "TP_MEC_MEC011_SRV_DNS_001_OK" Test objective - "Check that the IUT responds with a list of active DNS rules - when queried by a MEC Application" + "Check that the IUT responds with a list of active DNS rules when queried by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 7.2.9.3.1", - "https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/master/MecAppSupportApi.yaml#L507#/definitions/DnsRule" //Outdated + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.8", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.3", + "ETSI GS MEC 011 3.2.1, clause 7.2.9.3.1" Config Id Config_MEC_1 @@ -28,27 +29,62 @@ Package MEC_MEC011_SRV_DNS { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; + instance_id indicating value APP_INSTANCE_ID; } - // MEC 011 2.2.1, clause 5.2.8 + // MEC 011 3.2.1, clause 5.2.8 Expected behaviour ensure that { when { the IUT entity receives a vGET containing - uri indicating value "mec_app_support/v1/applications/{APP_INSTANCE_ID}/dns_rules" - ; + uri indicating value "mec_app_support/v2/applications/{APP_INSTANCE_ID}/dns_rules"; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 7.2.9.3.1 + // MEC 011 3.2.1, clause 7.2.9.3.1 the IUT entity sends a HTTP_RESPONSE containing status_code set to "200 OK" body containing - DnsRule set to any_value //@TODO: Should be a list of DnsRules. How can this be expressed in TDL? - ; - ; + DnsRule set to any_value;; //@TODO: Should be a list of DnsRules. How can this be expressed in TDL? + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC011_SRV_DNS_001_NF" + + Test objective + "Check that the IUT responds with a list of active DNS rules when queried by a MEC Application" + + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.8", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.3", + "ETSI GS MEC 011 3.2.1, clause 7.2.9.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity not having a apps_instance containing + instance_id indicating value NON_EXISTANT_APP_INSTANCE_ID; + } + + // MEC 011 3.2.1, clause 5.2.8 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "mec_app_support/v2/applications/{NON_EXISTANT_APP_INSTANCE_ID}/dns_rules"; + from the MEC_APP entity + } + then { + // MEC 011 3.2.1, clause 7.2.9.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; to the MEC_APP entity } } @@ -59,11 +95,12 @@ Package MEC_MEC011_SRV_DNS { TP Id "TP_MEC_MEC011_SRV_DNS_002_OK" Test objective - "Check that the IUT responds with the information on a specific DNS rule - when queried by a MEC Application" + "Check that the IUT responds with the information on a specific DNS rule when queried by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 7.2.10.3.1", - "https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/master/MecAppSupportApi.yaml#L507#/definitions/DnsRule" //Outdated + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.8", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.3", + "ETSI GS MEC 011 3.2.1, clause 7.2.10.3.1" Config Id Config_MEC_1 @@ -72,32 +109,26 @@ Package MEC_MEC011_SRV_DNS { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; and + instance_id indicating value APP_INSTANCE_ID; and the IUT entity having a dns_rules containing - rule_id indicating value DNS_RULE_ID - ; + rule_id indicating value DNS_RULE_ID; } - // MEC 011 2.2.1, clause 5.2.8 + // MEC 011 3.2.1, clause 5.2.8 Expected behaviour ensure that { when { the IUT entity receives a vGET containing - uri indicating value "mec_app_support/v1/applications/{APP_INSTANCE_ID}/dns_rules/{DNS_RULE_ID}" - ; + uri indicating value "mec_app_support/v2/applications/{APP_INSTANCE_ID}/dns_rules/{DNS_RULE_ID}"; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 7.2.10.3.1 + // MEC 011 3.2.1, clause 7.2.10.3.1 the IUT entity sends a HTTP_RESPONSE containing status_code set to "200 OK" body containing DnsRule containing - dnsRuleId set to DNS_RULE_ID - ; - ; - ; + dnsRuleId set to DNS_RULE_ID;;; to the MEC_APP entity } } @@ -108,10 +139,12 @@ Package MEC_MEC011_SRV_DNS { TP Id "TP_MEC_MEC011_SRV_DNS_002_NF" Test objective - "Check that the IUT responds with an error when - a request for an unknown URI is sent by a MEC Application" + "Check that the IUT responds with an error when a request for an unknown URI is sent by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 7.2.10.3.1" + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.8", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.3", + "ETSI GS MEC 011 3.2.1, clause 7.2.10.3.1" Config Id Config_MEC_1 @@ -120,27 +153,23 @@ Package MEC_MEC011_SRV_DNS { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; and + instance_id indicating value APP_INSTANCE_ID; and the IUT entity not having a dns_rules containing - rule_id indicating value NON_EXISTENT_DNS_RULE_ID - ; + rule_id indicating value NON_EXISTENT_DNS_RULE_ID; } - // MEC 011 2.2.1, clause 5.2.8 + // MEC 011 3.2.1, clause 5.2.8 Expected behaviour ensure that { when { the IUT entity receives a vGET containing - uri indicating value "mec_app_support/v1/applications/{APP_INSTANCE_ID}/dns_rules/{NON_EXISTENT_DNS_RULE_ID}" - ; + uri indicating value "mec_app_support/v2/applications/{APP_INSTANCE_ID}/dns_rules/{NON_EXISTENT_DNS_RULE_ID}"; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 7.2.10.3.1 + // MEC 011 3.2.1, clause 7.2.10.3.1 the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; + status_code set to "404 Not Found"; to the MEC_APP entity } } @@ -151,11 +180,12 @@ Package MEC_MEC011_SRV_DNS { TP Id "TP_MEC_MEC011_SRV_DNS_003_OK" Test objective - "Check that the IUT updates a specific DNS rule - when commanded by a MEC Application" + "Check that the IUT updates a specific DNS rule when commanded by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 7.2.10.3.2", - "https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/master/MecAppSupportApi.yaml#L507#/definitions/DnsRule" //Outdated + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.8", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.3", + "ETSI GS MEC 011 3.2.1, clause 7.2.10.3.2" Config Id Config_MEC_1 @@ -164,38 +194,31 @@ Package MEC_MEC011_SRV_DNS { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; and + instance_id indicating value APP_INSTANCE_ID; and the IUT entity having a dns_rules containing - rule_id indicating value DNS_RULE_ID - ; + rule_id indicating value DNS_RULE_ID; } - // MEC 011 2.2.1, clause 5.2.8 + // MEC 011 3.2.1, clause 5.2.8 Expected behaviour ensure that { when { the IUT entity receives a vPUT containing - uri indicating value "mec_app_support/v1/applications/{APP_INSTANCE_ID}/dns_rules/{DNS_RULE_ID}", + uri indicating value "mec_app_support/v2/applications/{APP_INSTANCE_ID}/dns_rules/{DNS_RULE_ID}", if_match indicating value PROPER_ETAG body containing dnsRuleId indicating value DNS_RULE_NAME, - ipAddress indicating value SOME_IP_ADDRESS - ; - ; + ipAddress indicating value SOME_IP_ADDRESS;; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 7.2.10.3.2 + // MEC 011 3.2.1, clause 7.2.10.3.2 the IUT entity sends a HTTP_RESPONSE containing status_code set to "200 OK" body containing DnsRule containing dnsRuleId set to DNS_RULE_NAME, - ipAddress set to SOME_IP_ADDRESS - ; - ; - ; + ipAddress set to SOME_IP_ADDRESS;;; to the MEC_APP entity } } @@ -206,10 +229,12 @@ Package MEC_MEC011_SRV_DNS { TP Id "TP_MEC_MEC011_SRV_DNS_003_BR" Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 7.2.10.3.2" + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.8", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.3", + "ETSI GS MEC 011 3.2.1, clause 7.2.10.3.2" Config Id Config_MEC_1 @@ -218,33 +243,27 @@ Package MEC_MEC011_SRV_DNS { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; and + instance_id indicating value APP_INSTANCE_ID ; and the IUT entity having a dns_rules containing - rule_id indicating value DNS_RULE_ID - ; + rule_id indicating value DNS_RULE_ID; } - // MEC 011 2.2.1, clause 5.2.8 + // MEC 011 3.2.1, clause 5.2.8 Expected behaviour ensure that { when { the IUT entity receives a vPUT containing - uri indicating value "mec_app_support/v1/applications/{APP_INSTANCE_ID}/dns_rules/{DNS_RULE_ID}", + uri indicating value "mec_app_support/v2/applications/{APP_INSTANCE_ID}/dns_rules/{DNS_RULE_ID}", if_match indicating value PROPER_ETAG body containing dnsRuleId indicating value DNS_RULE_NAME, - // Unknown parameter value should trigger an error response. - state indicating value UNKNOWN_VALUE - ; - ; + state indicating value UNKNOWN_VALUE;; // Unknown parameter value should trigger an error response. from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 7.2.10.3.2 + // MEC 011 3.2.1, clause 7.2.10.3.2 the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; + status_code set to "400 Bad Request"; to the MEC_APP entity } } @@ -255,10 +274,12 @@ Package MEC_MEC011_SRV_DNS { TP Id "TP_MEC_MEC011_SRV_DNS_003_NF" Test objective - "Check that the IUT responds with an error when - a request for an unknown URI is sent by a MEC Application" + "Check that the IUT responds with an error when a request for an unknown URI is sent by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 7.2.10.3.2" + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.8", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.3", + "ETSI GS MEC 011 3.2.1, clause 7.2.10.3.2" Config Id Config_MEC_1 @@ -267,47 +288,42 @@ Package MEC_MEC011_SRV_DNS { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; and + instance_id indicating value APP_INSTANCE_ID; and the IUT entity not having a dns_rules containing - rule_id indicating value NON_EXISTENT_DNS_RULE_ID - ; + rule_id indicating value NON_EXISTENT_DNS_RULE_ID; } - // MEC 011 2.2.1, clause 5.2.8 + // MEC 011 3.2.1, clause 5.2.8 Expected behaviour ensure that { when { the IUT entity receives a vPUT containing - uri indicating value "mec_app_support/v1/applications/{APP_INSTANCE_ID}/dns_rules/{NON_EXISTENT_DNS_RULE_ID}", + uri indicating value "mec_app_support/v2/applications/{APP_INSTANCE_ID}/dns_rules/{NON_EXISTENT_DNS_RULE_ID}", if_match indicating value PROPER_ETAG body containing dnsRuleId indicating value DNS_RULE_NAME, - ipAddress indicating value SOME_IP_ADDRESS - ; - ; + ipAddress indicating value SOME_IP_ADDRESS;; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 7.2.10.3.2 + // MEC 011 3.2.1, clause 7.2.10.3.2 the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; + status_code set to "404 Not Found"; to the MEC_APP entity } } } -/* - * @TODO: Removed cause the ETag is not a mandatory header attribute Test Purpose { TP Id "TP_MEC_MEC011_SRV_DNS_003_PF" Test objective - "Check that the IUT responds with an error when - a request sent by a MEC Application doesn't comply with a required condition" + "Check that the IUT responds with an error when a request sent by a MEC Application doesn't comply with a required condition" - Reference "ETSI GS MEC 011 2.2.1, clause 7.2.10.3.2" + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.8", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.3", + "ETSI GS MEC 011 3.2.1, clause 7.2.10.3.2" Config Id Config_MEC_1 @@ -316,35 +332,30 @@ Package MEC_MEC011_SRV_DNS { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; and + instance_id indicating value APP_INSTANCE_ID; and the IUT entity having a dns_rules containing - rule_id indicating value DNS_RULE_ID - ; + rule_id indicating value DNS_RULE_ID; } - // MEC 011 2.2.1, clause 5.2.8 + // MEC 011 3.2.1, clause 5.2.8 Expected behaviour ensure that { when { the IUT entity receives a vPUT containing - uri indicating value "mec_app_support/v1/applications/{APP_INSTANCE_ID}/dns_rules/{DNS_RULE_ID}", + uri indicating value "mec_app_support/v2/applications/{APP_INSTANCE_ID}/dns_rules/{DNS_RULE_ID}", if_match indicating value INVALID_ETAG body containing dnsRuleId indicating value DNS_RULE_NAME, - ipAddress indicating value SOME_IP_ADDRESS - ; - ; + ipAddress indicating value SOME_IP_ADDRESS;; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 7.2.10.3.2 + // MEC 011 3.2.1, clause 7.2.10.3.2 the IUT entity sends a HTTP_RESPONSE containing - status_code set to "412 Precondition Failed" - ; + status_code set to "412 Precondition Failed"; to the MEC_APP entity } } } - */ + } diff --git a/Test Purposes/MEC011/SRV/LIV/Liveness.tplan2 b/Test Purposes/MEC011/SRV/LIV/Liveness.tplan2 deleted file mode 100644 index f300c33f51e6a950dcb48684215f7188ba68c3f5..0000000000000000000000000000000000000000 --- a/Test Purposes/MEC011/SRV/LIV/Liveness.tplan2 +++ /dev/null @@ -1,212 +0,0 @@ -/* -Copyright (c) ETSI 2018-2021. -Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters -*/ - -Package MEC_MEC011_SRV_LIV { - - import all from MEC_Common; - - - /* - * MEC SERVICE LIVENESS (MSL) - */ - - Test Purpose { - TP Id "TP_MEC_MEC011_SRV_MSL_001_OK" - - Test objective - "Check that the IUT responds with the liveness of a MEC service instance - when queried by a MEC Application" - - Reference "ETSI GS MEC 011 2.2.1, clause 8.2.10.3.1" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a services_running containing - service_id indicating value SERVICE_ID, - _links containing - self set to "link/to/this/resource", - liveness set to "link/to/individual/mecServiceLiveness" - ; - ; - } - - // MEC 011 2.2.1, clause 5.2.12 - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "link/to/individual/mecServiceLiveness" - ; - from the MEC_APP entity - } - then { - // MEC 011 2.2.1, clause 8.2.10.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" - body containing - ServiceLivenessInfo containing - ServiceState set to "ACTIVE" - ; - ; - ; - to the MEC_APP entity - } - } - } - - -Test Purpose { - TP Id "TP_MEC_MEC011_SRV_MSL_001_NF" - - Test objective - "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" - - Reference "ETSI GS MEC 011 2.2.1, clause 8.2.10.3.1" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a services_running containing - service_id indicating value SERVICE_ID, - _links containing - self set to "link/to/this/resource", - liveness set to "link/to/individual/mecServiceLiveness" - ; - ; - } - - // MEC 011 2.2.1, clause 5.2.5 - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "not_existing_link/to/individual/mecServiceLiveness" - ; - from the MEC_APP entity - } - then { - // MEC 011 2.2.1, clause 8.2.10.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; - to the MEC_APP entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC011_SRV_MSL_002_OK" - - Test objective - "Check that the IUT updates the liveness of a MEC service instance - when requested by a MEC Application" - - Reference "ETSI GS MEC 011 2.2.1, clause 8.2.10.3.3" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a services_running containing - service_id indicating value SERVICE_ID, - state set to "SUSPENDED", - _links containing - self set to "link/to/this/resource", - liveness set to "link/to/individual/mecServiceLiveness" - ; - ; - } - - // MEC 011 2.2.1, clause 5.2.12 - Expected behaviour - ensure that { - when { - the IUT entity receives a vPATCH containing - Uri indicating value "link/to/individual/mecServiceLiveness", - body containing - ServiceLivenessUpdate containing - state set to "ACTIVE" - ; - ; - ; - from the MEC_APP entity - } - then { - // MEC 011 2.2.1, clause 8.2.10.3.3 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" - body containing - ServiceLivenessInfo containing - state set to "ACTIVE" - ; - ; - ; - to the MEC_APP entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC011_SRV_MSL_002_BR" - - Test objective - "Check that the IUT responds with an error when - incorrect parameters were sent by a MEC Application" - - Reference "ETSI GS MEC 011 2.2.1, clause 8.2.10.3.3" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a services_running containing - service_id indicating value SERVICE_ID, - state set to "INACTIVE", - _links containing - self set to "link/to/this/resource", - liveness set to "link/to/individual/mecServiceLiveness" - ; - ; - } - - // MEC 011 2.2.1, clause 5.2.12 - Expected behaviour - ensure that { - when { - the IUT entity receives a vPATCH containing - Uri indicating value "link/to/individual/mecServiceLiveness", - body containing - ServiceLivenessInfo containing - state set to "INACTIVE" - ; - ; - ; - from the MEC_APP entity - } - then { - // MEC 011 2.2.1, clause 8.2.10.3.3 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; - to the MEC_APP entity - } - } - } - - -} diff --git a/Test Purposes/MEC011/SRV/MSL/Liveness.tplan2 b/Test Purposes/MEC011/SRV/MSL/Liveness.tplan2 new file mode 100644 index 0000000000000000000000000000000000000000..1130dc91eb89bcd0e8abe7796f4911a00a5c0f2a --- /dev/null +++ b/Test Purposes/MEC011/SRV/MSL/Liveness.tplan2 @@ -0,0 +1,288 @@ +/* +Copyright (c) ETSI 2018-2023. +Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters +*/ + +Package MEC_MEC011_SRV_LIV { + + import all from MEC_Common; + + + /* + * MEC SERVICE LIVENESS (MSL) + */ + + Test Purpose { + TP Id "TP_MEC_MEC011_SRV_MSL_001_OK" + + Test objective + "Check that the IUT responds with the liveness of a MEC service instance when queried by a MEC Application" + + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.12", + "ETSI GS MEC 011 3.2.1, clause 8.1.2.4", + "ETSI GS MEC 011 3.2.1, clause 8.2.10.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a services_running containing + service_id indicating value SERVICE_ID, + _links containing + self set to "link/to/this/resource", + liveness set to "link/to/individual/mecServiceLiveness";; + } + + // MEC 011 3.2.1, clause 5.2.12 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "link/to/individual/mecServiceLiveness"; + from the MEC_APP entity + } + then { + // MEC 011 3.2.1, clause 8.2.10.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + ServiceLivenessInfo containing + ServiceState set to "ACTIVE";;; + to the MEC_APP entity + } + } + } + + +Test Purpose { + TP Id "TP_MEC_MEC011_SRV_MSL_001_NF" + + Test objective + "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" + + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.12", + "ETSI GS MEC 011 3.2.1, clause 8.1.2.4", + "ETSI GS MEC 011 3.2.1, clause 8.2.10.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a services_running containing + service_id indicating value SERVICE_ID, + _links containing + self set to "link/to/this/resource", + liveness set to "link/to/individual/mecServiceLiveness";; + } + + // MEC 011 3.2.1, clause 5.2.5 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "not_existing_link/to/individual/mecServiceLiveness"; + from the MEC_APP entity + } + then { + // MEC 011 3.2.1, clause 8.2.10.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC011_SRV_MSL_002_OK_01" + + Test objective + "Check that the IUT updates the liveness of a MEC service instance when requested by a MEC Application" + + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.12", + "ETSI GS MEC 011 3.2.1, clause 8.1.2.5", + "ETSI GS MEC 011 3.2.1, clause 8.2.10.3.3" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a services_running containing + service_id indicating value SERVICE_ID, + state set to "SUSPENDED", + _links containing + self set to "link/to/this/resource", + liveness set to "link/to/individual/mecServiceLiveness";; + } + + // MEC 011 3.2.1, clause 5.2.12 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPATCH containing + Uri indicating value "link/to/individual/mecServiceLiveness", + body containing + ServiceLivenessUpdate containing + state set to "ACTIVE";;; + from the MEC_APP entity + } + then { + // MEC 011 3.2.1, clause 8.2.10.3.3 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + ServiceLivenessInfo containing + state set to "ACTIVE";;; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC011_SRV_MSL_002_OK_02" + + Test objective + "Check that the IUT updates the liveness of a MEC service instance when requested by a MEC Application" + + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.12", + "ETSI GS MEC 011 3.2.1, clause 8.1.2.5", + "ETSI GS MEC 011 3.2.1, clause 8.2.10.3.3" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a services_running containing + service_id indicating value SERVICE_ID, + state set to "ACTIVE", + _links containing + self set to "link/to/this/resource", + liveness set to "link/to/individual/mecServiceLiveness";; + } + + // MEC 011 3.2.1, clause 5.2.12 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPATCH containing + Uri indicating value "link/to/individual/mecServiceLiveness", + body containing + ServiceLivenessUpdate containing + state set to "ACTIVE";;; + from the MEC_APP entity + } + then { + // MEC 011 3.2.1, clause 8.2.10.3.3 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "204 No Content"; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC011_SRV_MSL_002_BR" + + Test objective + "Check that the IUT responds with an error when incorrect parameters were sent by a MEC Application" + + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.12", + "ETSI GS MEC 011 3.2.1, clause 8.1.2.5", + "ETSI GS MEC 011 3.2.1, clause 8.2.10.3.3" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a services_running containing + service_id indicating value SERVICE_ID, + state set to "INACTIVE", + _links containing + self set to "link/to/this/resource", + liveness set to "link/to/individual/mecServiceLiveness";; + } + + // MEC 011 3.2.1, clause 5.2.12 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPATCH containing + Uri indicating value "link/to/individual/mecServiceLiveness", + body containing + ServiceLivenessInfo containing + state set to "INACTIVE";;; + from the MEC_APP entity + } + then { + // MEC 011 3.2.1, clause 8.2.10.3.3 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC011_SRV_MSL_002_NF" + + Test objective + "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" + + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.12", + "ETSI GS MEC 011 3.2.1, clause 8.1.2.5", + "ETSI GS MEC 011 3.2.1, clause 8.2.10.3.3" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a services_running containing + service_id indicating value SERVICE_ID, + state set to "INACTIVE", + _links containing + self set to "link/to/this/resource", + liveness set to "link/to/individual/mecServiceLiveness";; + } + + // MEC 011 3.2.1, clause 5.2.12 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPATCH containing + Uri indicating value "not_existing_link/to/individual/mecServiceLiveness", + body containing + ServiceLivenessInfo containing + state set to "ACTIVE";;; + from the MEC_APP entity + } + then { + // MEC 011 3.2.1, clause 8.2.10.3.3 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } + } + } + +// TODO How to test HTTP error 409 Conflict? + +} diff --git a/Test Purposes/MEC011/SRV/REGAPPS/RegisterAppsServices.tplan2 b/Test Purposes/MEC011/SRV/REGAPPS/RegisterAppsServices.tplan2 new file mode 100644 index 0000000000000000000000000000000000000000..95691384a55f1983a247dac02a50508b47bd870d --- /dev/null +++ b/Test Purposes/MEC011/SRV/REGAPPS/RegisterAppsServices.tplan2 @@ -0,0 +1,690 @@ +/* +Copyright (c) ETSI 2018-2023. +Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters +*/ + +Package MEC_MEC011_SRV_REGAPPS { + + import all from MEC_Common; + + + /* + * REGistration APPlicationS (REGAPPS) + */ + Test Purpose { + TP Id "TP_MEC_MEC011_SRV_REGAPPS_001_OK_01" + + Test objective + "Check that the IUT acknowledges the registration by a MEC Application to the MEC platform" + + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.13", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.6", + "ETSI GS MEC 011 3.2.1, clause 7.2.13.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity not having a apps_instance containing + appName indicating value APP_NAME; + } + + // MEC 011 3.2.1, clause 5.2.13 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/mec_app_support/v2/registrations", + body containing + AppInfo containing + appName indicating value APP_NAME;;; + from the MEC_APP entity + } + then { + // MEC 011 3.2.1, clause 7.2.13.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status set to "201 Created", + headers containing + Location indicating value "{RESOURCE_ID}";, + body containing + AppInfo containing + appName indicating value APP_NAME;;; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC011_SRV_REGAPPS_001_OK_02" + + Test objective + "Check that the IUT acknowledges the registration by a MEC Application to the MEC platform" + + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.13", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.6", + "ETSI GS MEC 011 3.2.1, clause 7.2.13.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity not having a apps_instance containing + appName indicating value APP_NAME, + appInstanceID indicating value APP_INSTANCE_ID; + } + + // MEC 011 3.2.1, clause 5.2.13 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/mec_app_support/v2/registrations", + body containing + AppInfo containing + appName indicating value APP_NAME, + appInstanceID indicating value APP_INSTANCE_ID;;; + from the MEC_APP entity + } + then { + // MEC 011 3.2.1, clause 7.2.13.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status set to "201 Created", + headers containing + Location indicating value "{RESOURCE_ID}";, + body containing + AppInfo containing + appName indicating value APP_NAME, + appInstanceID indicating value APP_INSTANCE_ID;;; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC011_SRV_REGAPPS_001_OK_03" + + Test objective + "Check that the IUT acknowledges the registration by a MEC Application instanciated by the MEC platform" + + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.13", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.6", + "ETSI GS MEC 011 3.2.1, clause 7.2.13.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a apps_instance containing + appName indicating value APP_NAME, + appInstanceID indicating value APP_INSTANCE_ID, + appDId indicating value APP_D_ID; + } + + // MEC 011 3.2.1, clause 5.2.13 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/mec_app_support/v2/registrations", + body containing + AppInfo containing + appName indicating value APP_NAME, + appInstanceID indicating value APP_INSTANCE_ID, + appDId indicating value APP_D_ID, + endpoint indicating value any_value;;; + from the MEC_APP entity + } + then { + // MEC 011 3.2.1, clause 7.2.13.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status set to "201 Created", + headers containing + Location indicating value "{RESOURCE_ID}";, + body containing + AppInfo containing + appName indicating value APP_NAME, + appInstanceID indicating value APP_INSTANCE_ID, + appDId indicating value APP_D_ID, + endpoint indicating value any_value;;; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC011_SRV_REGAPPS_001_BR_01" + + Test objective + "Check that the IUT responds with an error message when the IUT received a registration with missing fields from a MEC Application instanciated by the MEC platform" + + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.13", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.6", + "ETSI GS MEC 011 3.2.1, clause 7.2.13.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having an app_instance containing + appName indicating value APP_NAME, + appInstanceID indicating value APP_INSTANCE_ID, + appDId indicating value APP_D_ID; + } + + // MEC 011 3.2.1, clause 5.2.13 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/mec_app_support/v2/registrations", + body containing + AppInfo containing + appName indicating value APP_NAME, + appInstanceID indicating value APP_INSTANCE_ID, + appDId indicating value omit;;; + from the MEC_APP entity + } + then { + // MEC 011 3.2.1, clause 7.2.13.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status set to "400 Bad Request"; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC011_SRV_REGAPPS_001_BR_02" + + Test objective + "Check that the IUT responds with an error message when the IUT received by a MEC Application registration with missing endpoint" + + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.13", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.6", + "ETSI GS MEC 011 3.2.1, clause 7.2.13.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having an app_instance containing + appName indicating value APP_NAME_REGISTERED, + appInstanceID indicating value APP_INSTANCE_ID; + } + + // MEC 011 3.2.1, clause 5.2.13 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/mec_app_support/v2/registrations", + body containing + AppInfo containing + appName indicating value APP_NAME, + appInstanceID indicating value APP_INSTANCE_ID, + isInsByMec indicating value false, + endpoint indicating value omit;;; + from the MEC_APP entity + } + then { + // MEC 011 3.2.1, clause 7.2.13.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status set to "400 Bad Request"; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC011_SRV_REGAPPS_001_BR_03" + + Test objective + "Check that the IUT responds with an error message when the IUT received by a MEC Application registration with unexpected appServiceRequired" + + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.13", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.6", + "ETSI GS MEC 011 3.2.1, clause 7.2.13.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having an app_instance containing + appName indicating value APP_NAME_REGISTERED, + appDId indicating value APP_D_ID; + } + + // MEC 011 3.2.1, clause 5.2.13 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/mec_app_support/v2/registrations", + body containing + AppInfo containing + appName indicating value APP_NAME, + appIappServiceRequirednstanceID indicating value APP_D_ID, + appServiceRequired indicating value any_value;;; + from the MEC_APP entity + } + then { + // MEC 011 3.2.1, clause 7.2.13.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status set to "400 Bad Request"; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC011_SRV_REGAPPS_001_BR_04" + + Test objective + "Check that the IUT responds with an error message when the IUT received by a MEC Application registration with unexpected appServiceOptional" + + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.13", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.6", + "ETSI GS MEC 011 3.2.1, clause 7.2.13.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having an app_instance containing + appName indicating value APP_NAME_REGISTERED, + appDId indicating value APP_D_ID; + } + + // MEC 011 3.2.1, clause 5.2.13 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/mec_app_support/v2/registrations", + body containing + AppInfo containing + appName indicating value APP_NAME, + appIappServiceRequirednstanceID indicating value APP_D_ID, + appServiceOptional indicating value any_value;;; + from the MEC_APP entity + } + then { + // MEC 011 3.2.1, clause 7.2.13.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status set to "400 Bad Request"; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC011_SRV_REGAPPS_001_BR_05" + + Test objective + "Check that the IUT responds with an error message when the IUT received by a MEC Application registration with unexpected appFeatureRequired" + + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.13", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.6", + "ETSI GS MEC 011 3.2.1, clause 7.2.13.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having an app_instance containing + appName indicating value APP_NAME_REGISTERED, + appDId indicating value APP_D_ID; + } + + // MEC 011 3.2.1, clause 5.2.13 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/mec_app_support/v2/registrations", + body containing + AppInfo containing + appName indicating value APP_NAME, + appIappServiceRequirednstanceID indicating value APP_D_ID, + appFeatureRequired indicating value any_value;;; + from the MEC_APP entity + } + then { + // MEC 011 3.2.1, clause 7.2.13.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status set to "400 Bad Request"; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC011_SRV_REGAPPS_001_BR_06" + + Test objective + "Check that the IUT responds with an error message when the IUT received by a MEC Application registration with unexpected appFeatureOptional" + + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.13", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.6", + "ETSI GS MEC 011 3.2.1, clause 7.2.13.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having an app_instance containing + appName indicating value APP_NAME_REGISTERED, + appDId indicating value APP_D_ID; + } + + // MEC 011 3.2.1, clause 5.2.13 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/mec_app_support/v2/registrations", + body containing + AppInfo containing + appName indicating value APP_NAME, + appIappServiceRequirednstanceID indicating value APP_D_ID, + appFeatureOptional indicating value any_value;;; + from the MEC_APP entity + } + then { + // MEC 011 3.2.1, clause 7.2.13.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status set to "400 Bad Request"; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC011_SRV_REGAPPS_002_OK" + + Test objective + "Check that the IUT responds with the AppInfo description when queried by a MEC Application" + + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.13", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.6", + "ETSI GS MEC 011 3.2.1, clause 7.2.14.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a apps_instance containing + appInstanceId indicating value APP_INSTANCE_ID; + } + + // MEC 011 3.2.1, clause 5.2.13 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/mec_app_support/v2/registrations/{APP_INSTANCE_ID}"; + from the MEC_APP entity + } + then { + // MEC 011 3.2.1, clause 7.2.14.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status set to "200 OK", + body containing + AppInfo containing + appName indicating value APP_NAME, + appInstanceId indicating value APP_INSTANCE_ID;;; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC011_SRV_REGAPPS_002_NF" + + Test objective + "Check that the IUT responds with an error when when it receives a request for returning an AppInfo with a wrong ID" + + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.13", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.6", + "ETSI GS MEC 011 3.2.1, clause 7.2.14.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity not having a apps_instance containing + appInstanceId indicating value APP_INSTANCE_ID; + } + + // MEC 011 3.2.1, clause 5.2.13 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/mec_app_support/v2/registrations/{NOT_EXISTING_APP_INSTANCE_ID}"; + from the MEC_APP entity + } + then { + // MEC 011 3.2.1, clause 7.2.14.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status set to "404 Not Found"; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC011_SRV_REGAPPS_003_OK" + + Test objective + "Check that the IUT responds with 204 No Content when queried to update MEC Application registration" + + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.13", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.6", + "ETSI GS MEC 011 3.2.1, clause 7.2.14.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a apps_instance containing + appName indicating value APP_NAME, + appInstanceId indicating value APP_INSTANCE_ID; + } + + // MEC 011 3.2.1, clause 5.2.13 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "/mec_app_support/v2/registrations/{APP_INSTANCE_ID}", + body containing + AppInfo containing + appName indicating value APP_NAME, + appInstanceId indicating value APP_INSTANCE_ID, + appCategory indicating value any_value;;; + from the MEC_APP entity + } + then { + // MEC 011 3.2.1, clause 7.2.14.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status set to "204 No Content"; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC011_SRV_REGAPPS_003_NF" + + Test objective + "Check that the IUT responds with an error when queried to update MEC Application registration with a wrong ID" + + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.13", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.6", + "ETSI GS MEC 011 3.2.1, clause 7.2.14.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity not having a apps_instance containing + appName indicating value APP_NAME, + appInstanceId indicating value APP_INSTANCE_ID; + } + + // MEC 011 3.2.1, clause 5.2.13 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "/mec_app_support/v2/registrations/{NOT_EXISTING_APP_INSTANCE_ID}", + body containing + AppInfo containing + appName indicating value APP_NAME, + appInstanceId indicating value APP_INSTANCE_ID, + appCategory indicating value any_value;;; + from the MEC_APP entity + } + then { + // MEC 011 3.2.1, clause 7.2.14.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status set to "404 Not Found"; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC011_SRV_REGAPPS_004_OK" + + Test objective + "Check that the IUT responds with 204 No Content when queried to delete an existing MEC Application registration" + + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.13", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.6", + "ETSI GS MEC 011 3.2.1, clause 7.2.14.3.5" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a apps_instance containing + appName indicating value APP_NAME, + appInstanceId indicating value APP_INSTANCE_ID; + } + + // MEC 011 3.2.1, clause 5.2.13 + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "/mec_app_support/v2/registrations/{APP_INSTANCE_ID}"; + from the MEC_APP entity + } + then { + // MEC 011 3.2.1, clause 7.2.14.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status set to "204 No Content"; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC011_SRV_REGAPPS_004_NF" + + Test objective + "Check that the IUT responds with an error when queried to delete an unknown MEC Application registration" + + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.13", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.6", + "ETSI GS MEC 011 3.2.1, clause 7.2.14.3.5" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity not having a apps_instance containing + appName indicating value APP_NAME, + appInstanceId indicating value APP_INSTANCE_ID; + } + + // MEC 011 3.2.1, clause 5.2.13 + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "/mec_app_support/v2/registrations/{NOT_EXISTING_APP_INSTANCE_ID}"; + from the MEC_APP entity + } + then { + // MEC 011 3.2.1, clause 7.2.14.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status set to "404 Not Found"; + to the MEC_APP entity + } + } + } + + +} diff --git a/Test Purposes/MEC011/SRV/SAQ/PlatServices.tplan2 b/Test Purposes/MEC011/SRV/SAQ/PlatServices.tplan2 index e30737e2979d1220ebb9883c5bf20806ae21ee29..cacb9d6b56fe748e5dd0fdf30845d43a9acb46f9 100644 --- a/Test Purposes/MEC011/SRV/SAQ/PlatServices.tplan2 +++ b/Test Purposes/MEC011/SRV/SAQ/PlatServices.tplan2 @@ -1,5 +1,5 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters */ @@ -15,11 +15,12 @@ Package MEC_MEC011_SRV_SAQ { TP Id "TP_MEC_MEC011_SRV_SAQ_001_OK" Test objective - "Check that the IUT responds with a list of available MEC services - when queried by a MEC Application" + "Check that the IUT responds with a list of available MEC services when queried by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 8.2.3.3.1", - "https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/master/MecServiceMgmtApi.yaml#L722#/definitions/ServiceInfo" //Outdated + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.5", + "ETSI GS MEC 011 3.2.1, clause 8.1.2.2", + "ETSI GS MEC 011 3.2.1, clause 8.2.3.3.1" Config Id Config_MEC_1 @@ -29,23 +30,20 @@ Package MEC_MEC011_SRV_SAQ { the IUT entity being_in idle_state } - // MEC 011 2.2.1, clause 5.2.5 + // MEC 011 3.2.1, clause 5.2.5 Expected behaviour ensure that { when { the IUT entity receives a vGET containing - uri indicating value"/mec_service_mgmt/v1/services" - ; + uri indicating value"/mec_service_mgmt/v1/services"; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 8.2.3.3.1 + // MEC 011 3.2.1, clause 8.2.3.3.1 the IUT entity sends a HTTP_RESPONSE containing status_code set to "200 OK" body containing - ServiceInfo set to any_value // @TODO: It should be a list of ServiceInfos. How to express it in TDL? - ; - ; + ServiceInfo set to any_value;; // @TODO: It should be a list of ServiceInfos. How to express it in TDL? to the MEC_APP entity } } @@ -56,10 +54,12 @@ Package MEC_MEC011_SRV_SAQ { TP Id "TP_MEC_MEC011_SRV_SAQ_001_BR" Test objective - "Check that the IUT responds with an error when - incorrect parameters were sent by a MEC Application" + "Check that the IUT responds with an error when incorrect parameters were sent by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 8.2.3.3.1" + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.5", + "ETSI GS MEC 011 3.2.1, clause 8.1.2.2", + "ETSI GS MEC 011 3.2.1, clause 8.2.3.3.1" Config Id Config_MEC_1 @@ -69,24 +69,20 @@ Package MEC_MEC011_SRV_SAQ { the IUT entity being_in idle_state } - // MEC 011 2.2.1, clause 5.2.5 + // MEC 011 3.2.1, clause 5.2.5 Expected behaviour ensure that { when { the IUT entity receives a vGET containing uri indicating value"/mec_service_mgmt/v1/services" query_parameters containing - // Wrong parameter name should trigger an error response. - instance_id indicating value any_value - ; - ; + instance_id indicating value any_value;; // Wrong parameter name should trigger an error response. from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 8.2.3.3.1 + // MEC 011 3.2.1, clause 8.2.3.3.1 the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; + status_code set to "400 Bad Request"; to the MEC_APP entity } } @@ -97,11 +93,12 @@ Package MEC_MEC011_SRV_SAQ { TP Id "TP_MEC_MEC011_SRV_SAQ_002_OK" Test objective - "Check that the IUT responds with the information on a specific service - when queried by a MEC Application" + "Check that the IUT responds with the information on a specific service when queried by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 8.2.4.3.1", - "https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/master/MecServiceMgmtApi.yaml#L722#/definitions/ServiceInfo" //Outdated + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.5", + "ETSI GS MEC 011 3.2.1, clause 8.1.2.2", + "ETSI GS MEC 011 3.2.1, clause 8.2.4.3.1" Config Id Config_MEC_1 @@ -110,21 +107,19 @@ Package MEC_MEC011_SRV_SAQ { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a services_running containing - service_id indicating value SERVICE_ID - ; + service_id indicating value SERVICE_ID; } - // MEC 011 2.2.1, clause 5.2.5 + // MEC 011 3.2.1, clause 5.2.5 Expected behaviour ensure that { when { the IUT entity receives a vGET containing - uri indicating value"/mec_service_mgmt/v1/services/{SERVICE_ID}" - ; + uri indicating value"/mec_service_mgmt/v1/services/{SERVICE_ID}"; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 8.2.4.3.1 + // MEC 011 3.2.1, clause 8.2.4.3.1 the IUT entity sends a HTTP_RESPONSE containing status_code set to "200 OK" body containing @@ -132,11 +127,7 @@ Package MEC_MEC011_SRV_SAQ { serInstanceId set to SERVICE_ID, _links containing self set to "link/to/resource", - liveness set to "ACTIVE" - ; - ; - ; - ; + liveness set to "ACTIVE";;;; to the MEC_APP entity } } @@ -147,11 +138,12 @@ Package MEC_MEC011_SRV_SAQ { TP Id "TP_MEC_MEC011_SRV_SAQ_002_NF" Test objective - "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" + "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" - Reference "ETSI GS MEC 011 2.2.1, clause 8.2.4.3.1" + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.5", + "ETSI GS MEC 011 3.2.1, clause 8.1.2.2", + "ETSI GS MEC 011 3.2.1, clause 8.2.4.3.1" Config Id Config_MEC_1 @@ -160,24 +152,21 @@ Package MEC_MEC011_SRV_SAQ { Initial conditions with { the IUT entity being_in idle_state and the IUT entity not having a services_running containing - service_id indicating value NON_EXISTENT_SERVICE_ID - ; + service_id indicating value NON_EXISTENT_SERVICE_ID; } - // MEC 011 2.2.1, clause 5.2.5 + // MEC 011 3.2.1, clause 5.2.5 Expected behaviour ensure that { when { the IUT entity receives a vGET containing - uri indicating value"/mec_service_mgmt/v1/services/{NON_EXISTENT_SERVICE_ID}" - ; + uri indicating value"/mec_service_mgmt/v1/services/{NON_EXISTENT_SERVICE_ID}"; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 8.2.4.3.1 + // MEC 011 3.2.1, clause 8.2.4.3.1 the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; + status_code set to "404 Not Found"; to the MEC_APP entity } } diff --git a/Test Purposes/MEC011/SRV/SRVSUB/PlatSrvSubscriptions.tplan2 b/Test Purposes/MEC011/SRV/SRVSUB/PlatSrvSubscriptions.tplan2 index 5f34ea25a2cefabeb7bbaf680a1dd487d7acb4a2..6dfa2c89c74931b5e0877f764bab8df0b48262a0 100644 --- a/Test Purposes/MEC011/SRV/SRVSUB/PlatSrvSubscriptions.tplan2 +++ b/Test Purposes/MEC011/SRV/SRVSUB/PlatSrvSubscriptions.tplan2 @@ -1,5 +1,5 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters */ Package MEC_MEC011_SRV_SRVSUB { @@ -14,11 +14,12 @@ Package MEC_MEC011_SRV_SRVSUB { TP Id "TP_MEC_MEC011_SRV_SRVSUB_001_OK" Test objective - "Check that the IUT responds with a list of subscriptions for notifications - on services availability when queried by a MEC Application" + "Check that the IUT responds with a list of subscriptions for notifications on services availability when queried by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 8.2.8.3.1", - "https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/master/MecServiceMgmtApi.yaml#L408#/definitions/MecServiceMgmtApiSubscriptionLinkList" //Outdated + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.6", + "ETSI GS MEC 011 3.2.1, clause 8.1.3", + "ETSI GS MEC 011 3.2.1, clause 8.2.8.3.1" Config Id Config_MEC_1 @@ -27,31 +28,25 @@ Package MEC_MEC011_SRV_SRVSUB { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; + instance_id indicating value APP_INSTANCE_ID; } - // MEC 011 2.2.1, clause 5.2.6 + // MEC 011 3.2.1, clause 5.2.6 Expected behaviour ensure that { when { the IUT entity receives a vGET containing - uri indicating value "mec_service_mgmt/v1/applications/{APP_INSTANCE_ID}/subscriptions" - ; + uri indicating value "/mec_service_mgmt/v1/applications/{APP_INSTANCE_ID}/subscriptions"; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 8.2.8.3.1 + // MEC 011 3.2.1, clause 8.2.8.3.1 the IUT entity sends a HTTP_RESPONSE containing status_code set to "200 OK" body containing SubscriptionLinkList containing - _links containing - self set to any_value - ; - ; - ; - ; + links containing + self set to any_value;;;; to the MEC_APP entity } } @@ -62,10 +57,12 @@ Package MEC_MEC011_SRV_SRVSUB { TP Id "TP_MEC_MEC011_SRV_SRVSUB_001_NF" Test objective - "Check that the IUT responds with an error when - a request for an unknown URI is sent by a MEC Application" + "Check that the IUT responds with an error when a request for an unknown URI is sent by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 8.2.8.3.1" + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.6", + "ETSI GS MEC 011 3.2.1, clause 8.1.3", + "ETSI GS MEC 011 3.2.1, clause 8.2.8.3.1" Config Id Config_MEC_1 @@ -74,24 +71,21 @@ Package MEC_MEC011_SRV_SRVSUB { Initial conditions with { the IUT entity being_in idle_state and the IUT entity not having a apps_instance containing - instance_id indicating value NON_EXISTENT_APP_INSTANCE_ID - ; + instance_id indicating value NON_EXISTENT_APP_INSTANCE_ID; } - // MEC 011 2.2.1, clause 5.2.6 + // MEC 011 3.2.1, clause 5.2.6 Expected behaviour ensure that { when { the IUT entity receives a vGET containing - uri indicating value "mec_service_mgmt/v1/applications/{NON_EXISTENT_APP_INSTANCE_ID}/subscriptions" - ; + uri indicating value "/mec_service_mgmt/v1/applications/{NON_EXISTENT_APP_INSTANCE_ID}/subscriptions"; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 8.2.8.3.1 + // MEC 011 3.2.1, clause 8.2.8.3.1 the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; + status_code set to "404 Not Found"; to the MEC_APP entity } } @@ -102,11 +96,12 @@ Package MEC_MEC011_SRV_SRVSUB { TP Id "TP_MEC_MEC011_SRV_SRVSUB_002_OK" Test objective - "Check that the IUT acknowledges the subscription by a MEC Application - to notifications on service availability events" + "Check that the IUT acknowledges the subscription by a MEC Application to notifications on service availability events" - Reference "ETSI GS MEC 011 2.2.1, clause 8.2.8.3.4", - "https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/master/MecServiceMgmtApi.yaml#L508#/definitions/SerAvailabilityNotificationSubscription" //Outdated + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.6", + "ETSI GS MEC 011 3.2.1, clause 8.1.3", + "ETSI GS MEC 011 3.2.1, clause 8.2.8.3.4" Config Id Config_MEC_1 @@ -115,37 +110,30 @@ Package MEC_MEC011_SRV_SRVSUB { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; + instance_id indicating value APP_INSTANCE_ID; } - // MEC 011 2.2.1, clause 5.2.6.2 + // MEC 011 3.2.1, clause 5.2.6.2 Expected behaviour ensure that { when { the IUT entity receives a vPOST containing - uri indicating value "mec_service_mgmt/v1/applications/{APP_INSTANCE_ID}/subscriptions" + uri indicating value "/mec_service_mgmt/v1/applications/{APP_INSTANCE_ID}/subscriptions" body containing SerAvailabilityNotificationSubscription containing subscriptionType indicating value "SerAvailabilityNotificationSubscription", - callbackReference indicating value some_uri - ; - ; - ; + callbackReference indicating value some_uri;;; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 8.2.8.3.4 + // MEC 011 3.2.1, clause 8.2.8.3.4 the IUT entity sends a HTTP_RESPONSE containing status_code set to "201 Created", Location set to LOCATION, body containing SerAvailabilityNotificationSubscription containing subscriptionType set to "SerAvailabilityNotificationSubscription", - callbackReference set to some_uri - ; - ; - ; + callbackReference set to some_uri;;; to the MEC_APP entity } } @@ -156,10 +144,12 @@ Package MEC_MEC011_SRV_SRVSUB { TP Id "TP_MEC_MEC011_SRV_SRVSUB_002_BR" Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 8.2.8.3.4" + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.6", + "ETSI GS MEC 011 3.2.1, clause 8.1.3", + "ETSI GS MEC 011 3.2.1, clause 8.2.8.3.4" Config Id Config_MEC_1 @@ -168,31 +158,25 @@ Package MEC_MEC011_SRV_SRVSUB { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; + instance_id indicating value APP_INSTANCE_ID; } - // MEC 011 2.2.1, clause 5.2.6.2 + // MEC 011 3.2.1, clause 5.2.6.2 Expected behaviour ensure that { when { the IUT entity receives a vPOST containing - uri indicating value "mec_service_mgmt/v1/applications/{APP_INSTANCE_ID}/subscriptions" + uri indicating value "/mec_service_mgmt/v1/applications/{APP_INSTANCE_ID}/subscriptions" body containing SerAvailabilityNotificationSubscription containing - // Unknown value should trigger an error response. - subscriptionType indicating value INVALID_SUBSCRIPTION, - callbackReference indicating value some_uri - ; - ; - ; + subscriptionType indicating value INVALID_SUBSCRIPTION, // Unknown value should trigger an error response. + callbackReference indicating value some_uri;;; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 8.2.8.3.4 + // MEC 011 3.2.1, clause 8.2.8.3.4 the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; + status_code set to "400 Bad Request"; to the MEC_APP entity } } @@ -203,11 +187,12 @@ Package MEC_MEC011_SRV_SRVSUB { TP Id "TP_MEC_MEC011_SRV_SRVSUB_003_OK" Test objective - "Check that the IUT responds with the information on a specific subscription - when queried by a MEC Application" + "Check that the IUT responds with the information on a specific subscription when queried by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 8.2.9.3.1", - "https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/master/MecServiceMgmtApi.yaml#L508#/definitions/SerAvailabilityNotificationSubscription" //Outdated + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.6", + "ETSI GS MEC 011 3.2.1, clause 8.1.3", + "ETSI GS MEC 011 3.2.1, clause 8.2.9.3.1" Config Id Config_MEC_1 @@ -216,32 +201,26 @@ Package MEC_MEC011_SRV_SRVSUB { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; and + instance_id indicating value APP_INSTANCE_ID; and the IUT entity having a subscriptions containing - subscription_id indicating value SUBSCRIPTION_ID - ; + subscription_id indicating value SUBSCRIPTION_ID; } - // MEC 011 2.2.1, clause 5.2.6 + // MEC 011 3.2.1, clause 5.2.6 Expected behaviour ensure that { when { the IUT entity receives a vGET containing - uri indicating value "mec_service_mgmt/v1/applications/{APP_INSTANCE_ID}/subscriptions/{SUBSCRIPTION_ID}" - ; + uri indicating value "/mec_service_mgmt/v1/applications/{APP_INSTANCE_ID}/subscriptions/{SUBSCRIPTION_ID}"; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 8.2.9.3.1 + // MEC 011 3.2.1, clause 8.2.9.3.1 the IUT entity sends a HTTP_RESPONSE containing status_code set to "200 OK" body containing SerAvailabilityNotificationSubscription containing - subscriptionType set to "SerAvailabilityNotificationSubscription" - ; - ; - ; + subscriptionType set to "SerAvailabilityNotificationSubscription";;; to the MEC_APP entity } } @@ -252,11 +231,12 @@ Package MEC_MEC011_SRV_SRVSUB { TP Id "TP_MEC_MEC011_SRV_SRVSUB_003_NF" Test objective - "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" + "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" - Reference "ETSI GS MEC 011 2.2.1, clause 8.2.9.3.1" + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.6", + "ETSI GS MEC 011 3.2.1, clause 8.1.3", + "ETSI GS MEC 011 3.2.1, clause 8.2.9.3.1" Config Id Config_MEC_1 @@ -265,27 +245,23 @@ Package MEC_MEC011_SRV_SRVSUB { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; and + instance_id indicating value APP_INSTANCE_ID; and the IUT entity not having a subscriptions containing - subscription_id indicating value NON_EXISTENT_SUBSCRIPTION_ID - ; + subscription_id indicating value NON_EXISTENT_SUBSCRIPTION_ID; } - // MEC 011 2.2.1, clause 5.2.6 + // MEC 011 3.2.1, clause 5.2.6 Expected behaviour ensure that { when { the IUT entity receives a vGET containing - uri indicating value "mec_service_mgmt/v1/applications/{APP_INSTANCE_ID}/subscriptions/{NON_EXISTENT_SUBSCRIPTION_ID}" - ; + uri indicating value "/mec_service_mgmt/v1/applications/{APP_INSTANCE_ID}/subscriptions/{NON_EXISTENT_SUBSCRIPTION_ID}"; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 8.2.9.3.1 + // MEC 011 3.2.1, clause 8.2.9.3.1 the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; + status_code set to "404 Not Found"; to the MEC_APP entity } } @@ -299,7 +275,10 @@ Package MEC_MEC011_SRV_SRVSUB { "Check that the IUT acknowledges the unsubscribe from service availability event notifications when commanded by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 8.2.9.3.5" + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.6", + "ETSI GS MEC 011 3.2.1, clause 8.1.3", + "ETSI GS MEC 011 3.2.1, clause 8.2.9.3.5" Config Id Config_MEC_1 @@ -308,27 +287,23 @@ Package MEC_MEC011_SRV_SRVSUB { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; and + instance_id indicating value APP_INSTANCE_ID; and the IUT entity having a subscriptions containing - subscription_id indicating value SUBSCRIPTION_ID - ; + subscription_id indicating value SUBSCRIPTION_ID; } - // MEC 011 2.2.1, clause 5.2.6 + // MEC 011 3.2.1, clause 5.2.6 Expected behaviour ensure that { when { the IUT entity receives a vDELETE containing - uri indicating value "mec_service_mgmt/v1/applications/{APP_INSTANCE_ID}/subscriptions/{SUBSCRIPTION_ID}" - ; + uri indicating value "/mec_service_mgmt/v1/applications/{APP_INSTANCE_ID}/subscriptions/{SUBSCRIPTION_ID}"; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 8.2.9.3.5 + // MEC 011 3.2.1, clause 8.2.9.3.5 the IUT entity sends a HTTP_RESPONSE containing - status_code set to "204 No Content" - ; + status_code set to "204 No Content"; to the MEC_APP entity } } @@ -339,11 +314,12 @@ Package MEC_MEC011_SRV_SRVSUB { TP Id "TP_MEC_MEC011_SRV_SRVSUB_004_NF" Test objective - "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" + "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" - Reference "ETSI GS MEC 011 2.2.1, clause 8.2.9.3.5" + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.6", + "ETSI GS MEC 011 3.2.1, clause 8.1.3", + "ETSI GS MEC 011 3.2.1, clause 8.2.9.3.5" Config Id Config_MEC_1 @@ -352,27 +328,23 @@ Package MEC_MEC011_SRV_SRVSUB { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; and + instance_id indicating value APP_INSTANCE_ID; and the IUT entity not having a subscriptions containing - subscription_id indicating value NOT_EXISTENT_SUBSCRIPTION_ID - ; + subscription_id indicating value NOT_EXISTENT_SUBSCRIPTION_ID; } - // MEC 011 2.2.1, clause 5.2.6 + // MEC 011 3.2.1, clause 5.2.6 Expected behaviour ensure that { when { the IUT entity receives a vDELETE containing - uri indicating value "mec_service_mgmt/v1/applications/{APP_INSTANCE_ID}/subscriptions/{NON_EXISTENT_SUBSCRIPTION_ID}" - ; + uri indicating value "/mec_service_mgmt/v1/applications/{APP_INSTANCE_ID}/subscriptions/{NON_EXISTENT_SUBSCRIPTION_ID}"; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 8.2.9.3.5 + // MEC 011 3.2.1, clause 8.2.9.3.5 the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; + status_code set to "404 Not Found"; to the MEC_APP entity } } diff --git a/Test Purposes/MEC011/SRV/TIME/PlatTiming.tplan2 b/Test Purposes/MEC011/SRV/TIME/PlatTiming.tplan2 index 90378764ed66c83575cb0dbf13d123d3bcdcfe8a..0a62e7f08cb299a1118f232fdaea3538215aa87d 100644 --- a/Test Purposes/MEC011/SRV/TIME/PlatTiming.tplan2 +++ b/Test Purposes/MEC011/SRV/TIME/PlatTiming.tplan2 @@ -1,5 +1,5 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters */ @@ -18,8 +18,10 @@ Package MEC_MEC011_SRV_TIME { "Check that the IUT responds with timing capabilities when queried by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 7.2.5.3.1", - "https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/master/MecAppSupportApi.yaml#L758#/definition/TimingCaps" //Outdated + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.10.3", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.4", + "ETSI GS MEC 011 3.2.1, clause 7.2.5.3.1" Config Id Config_MEC_1 @@ -29,23 +31,20 @@ Package MEC_MEC011_SRV_TIME { the IUT entity being_in idle_state } - // MEC 011 2.2.1, clause 5.2.10.3 + // MEC 011 3.2.1, clause 5.2.10.3 Expected behaviour ensure that { when { the IUT entity receives a vGET containing - uri indicating value "mec_app_support/v1/timing/timing_caps" - ; + uri indicating value "mec_app_support/v2/timing/timing_caps"; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 7.2.5.3.1 + // MEC 011 3.2.1, clause 7.2.5.3.1 the IUT entity sends a HTTP_RESPONSE containing status_code set to "200 OK" body containing - TimingCaps set to any_value - ; - ; + TimingCaps set to any_value;; to the MEC_APP entity } } @@ -56,11 +55,12 @@ Package MEC_MEC011_SRV_TIME { TP Id "TP_MEC_MEC011_SRV_TIME_002_OK" Test objective - "Check that the IUT responds with current time - when queried by a MEC Application" + "Check that the IUT responds with current time when queried by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 7.2.6.3.1", - "https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/master/MecAppSupportApi.yaml#L410#/definitions/CurrentTime" //Outdated + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.10.2", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.5", + "ETSI GS MEC 011 3.2.1, clause 7.2.5.3.1" Config Id Config_MEC_1 @@ -70,27 +70,23 @@ Package MEC_MEC011_SRV_TIME { the IUT entity being_in idle_state } - // MEC 011 2.2.1, clause 5.2.10.2 + // MEC 011 3.2.1, clause 5.2.10.2 Expected behaviour ensure that { when { the IUT entity receives a vGET containing - uri indicating value "mec_app_support/v1/timing/current_time" - ; + uri indicating value "mec_app_support/v2/timing/current_time"; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 7.2.6.3.1 + // MEC 011 3.2.1, clause 7.2.6.3.1 the IUT entity sends a HTTP_RESPONSE containing status_code set to "200 OK" body containing CurrentTime containing - seconds set to CURRENT_TIME_SECONDS, - nanoSeconds set to CURRENT_TIME_NANOSECONDS, - timeSourceStatus set to TIME_SOURCE_STATUS - ; - ; - ; + seconds set to CURRENT_TIME_SECONDS, + nanoSeconds set to CURRENT_TIME_NANOSECONDS, + timeSourceStatus set to TIME_SOURCE_STATUS;;; to the MEC_APP entity } } diff --git a/Test Purposes/MEC011/SRV/TRAF/PlatTrafficRules.tplan2 b/Test Purposes/MEC011/SRV/TRAF/PlatTrafficRules.tplan2 index e934d16fdc902d9ff55c30ca127fdef747ddf963..cb5b747c96c9ba8a0feb869259f4127bb723895e 100644 --- a/Test Purposes/MEC011/SRV/TRAF/PlatTrafficRules.tplan2 +++ b/Test Purposes/MEC011/SRV/TRAF/PlatTrafficRules.tplan2 @@ -1,5 +1,5 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters */ @@ -14,11 +14,12 @@ Package MEC_MEC011_SRV_TRAF { TP Id "TP_MEC_MEC011_SRV_TRAF_001_OK" Test objective - "Check that the IUT responds with a list of available traffic rules - when queried by a MEC Application" + "Check that the IUT responds with a list of available traffic rules when queried by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 7.2.7.3.1", - "https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/master/MecAppSupportApi.yaml#L1352#/definitions/TrafficRule" //Outdated + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.7", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.2", + "ETSI GS MEC 011 3.2.1, clause 7.2.7.3.1" Config Id Config_MEC_1 @@ -27,27 +28,23 @@ Package MEC_MEC011_SRV_TRAF { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; + instance_id indicating value APP_INSTANCE_ID; } - // MEC 011 2.2.1, clause 5.2.7 + // MEC 011 3.2.1, clause 5.2.7 Expected behaviour ensure that { when { the IUT entity receives a vGET containing - uri indicating value "mec_app_support/v1/applications/{APP_INSTANCE_ID}/traffic_rules" - ; + uri indicating value "mec_app_support/v2/applications/{APP_INSTANCE_ID}/traffic_rules"; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 7.2.7.3.1 + // MEC 011 3.2.1, clause 7.2.7.3.1 the IUT entity sends a HTTP_RESPONSE containing status_code set to "200 OK" body containing - TrafficRule set to any_value //@TODO: Should be a list of TrafficRules. How can this be expressed in TDL - ; - ; + TrafficRule set to any_value;; //@TODO: Should be a list of TrafficRules. How can this be expressed in TDL to the MEC_APP entity } } @@ -58,10 +55,12 @@ Package MEC_MEC011_SRV_TRAF { TP Id "TP_MEC_MEC011_SRV_TRAF_001_NF" Test objective - "Check that the IUT responds with an error when - a request for an unknown URI is sent by a MEC Application" + "Check that the IUT responds with an error when a request for an unknown URI is sent by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 7.2.7.3.1" + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.7", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.2", + "ETSI GS MEC 011 3.2.1, clause 7.2.7.3.1" Config Id Config_MEC_1 @@ -70,24 +69,21 @@ Package MEC_MEC011_SRV_TRAF { Initial conditions with { the IUT entity being_in idle_state and the IUT entity not having a apps_instance containing - instance_id indicating value NON_EXISTENT_APP_INSTANCE_ID - ; + instance_id indicating value NON_EXISTENT_APP_INSTANCE_ID; } - // MEC 011 2.2.1, clause 5.2.7 + // MEC 011 3.2.1, clause 5.2.7 Expected behaviour ensure that { when { the IUT entity receives a vGET containing - uri indicating value "mec_app_support/v1/applications/{NON_EXISTENT_APP_INSTANCE_ID}/traffic_rules" - ; + uri indicating value "mec_app_support/v2/applications/{NON_EXISTENT_APP_INSTANCE_ID}/traffic_rules"; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 7.2.7.3.1 + // MEC 011 3.2.1, clause 7.2.7.3.1 the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; + status_code set to "404 Not Found"; to the MEC_APP entity } } @@ -101,8 +97,10 @@ Package MEC_MEC011_SRV_TRAF { "Check that the IUT responds with the information on a specific traffic rule when queried by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 7.2.8.3.1", - "https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/master/MecAppSupportApi.yaml#L1352#/definitions/TrafficRule" //Outdated + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.7", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.2", + "ETSI GS MEC 011 3.2.1, clause 7.2.8.3.1" Config Id Config_MEC_1 @@ -111,47 +109,85 @@ Package MEC_MEC011_SRV_TRAF { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; and + instance_id indicating value APP_INSTANCE_ID; and the IUT entity having a traffic_rules containing - rule_id indicating value TRAFFIC_RULE_ID - ; + rule_id indicating value TRAFFIC_RULE_ID; } - // MEC 011 2.2.1, clause 5.2.7 + // MEC 011 3.2.1, clause 5.2.7 Expected behaviour ensure that { when { the IUT entity receives a vGET containing - uri indicating value "mec_app_support/v1/applications/{APP_INSTANCE_ID}/traffic_rules/{TRAFFIC_RULE_ID}" - ; + uri indicating value "mec_app_support/v2/applications/{APP_INSTANCE_ID}/traffic_rules/{TRAFFIC_RULE_ID}"; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 7.2.8.3.1 + // MEC 011 3.2.1, clause 7.2.8.3.1 the IUT entity sends a HTTP_RESPONSE containing status_code set to "200 OK" body containing TrafficRule containing - trafficRuleId set to TRAFFIC_RULE_ID - ; - ; - ; + trafficRuleId set to TRAFFIC_RULE_ID;;; to the MEC_APP entity } } } + Test Purpose { + TP Id "TP_MEC_MEC011_SRV_TRAF_002_NF" + + Test objective + "Check that the IUT responds with an error when a request for an unknown traffic rule + when queried by a MEC Application" + + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.7", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.2", + "ETSI GS MEC 011 3.2.1, clause 7.2.8.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a apps_instance containing + instance_id indicating value APP_INSTANCE_ID; and + the IUT entity having a traffic_rules containing + rule_id indicating value UNKNOWN_TRAFFIC_RULE_ID; + } + + // MEC 011 3.2.1, clause 5.2.7 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "mec_app_support/v2/applications/{APP_INSTANCE_ID}/traffic_rules/{UNKNOWN_TRAFFIC_RULE_ID}"; + from the MEC_APP entity + } + then { + // MEC 011 3.2.1, clause 7.2.8.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } + } + } + + + Test Purpose { TP Id "TP_MEC_MEC011_SRV_TRAF_003_OK" Test objective - "Check that the IUT updates a specific traffic rule - when commanded by a MEC Application" + "Check that the IUT updates a specific traffic rule when commanded by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 7.2.8.3.2", - "https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/master/MecAppSupportApi.yaml#L1352#/definitions/TrafficRule" //Outdated + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.7", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.2", + "ETSI GS MEC 011 3.2.1, clause 7.2.8.3.2" Config Id Config_MEC_1 @@ -160,52 +196,45 @@ Package MEC_MEC011_SRV_TRAF { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; and + instance_id indicating value APP_INSTANCE_ID; and the IUT entity having a traffic_rules containing - rule_id indicating value TRAFFIC_RULE_ID - ; + rule_id indicating value TRAFFIC_RULE_ID; } - // MEC 011 2.2.1, clause 5.2.7 + // MEC 011 3.2.1, clause 5.2.7 Expected behaviour ensure that { when { the IUT entity receives a vPUT containing - uri indicating value "mec_app_support/v1/applications/{APP_INSTANCE_ID}/traffic_rules/{TRAFFIC_RULE_ID}", + uri indicating value "mec_app_support/v2/applications/{APP_INSTANCE_ID}/traffic_rules/{TRAFFIC_RULE_ID}", body containing TrafficRule containing - action indicating value "DROP" - ; - ; - ; + action indicating value "DROP";;; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 7.2.8.3.2 + // MEC 011 3.2.1, clause 7.2.8.3.2 the IUT entity sends a HTTP_RESPONSE containing status_code set to "200 OK" body containing TrafficRule containing trafficRuleId set to TRAFFIC_RULE_ID, - action set to "DROP" - ; - ; - ; + action set to "DROP";;; to the MEC_APP entity } } } - Test Purpose { TP Id "TP_MEC_MEC011_SRV_TRAF_003_BR" Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 7.2.8.3.2" + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.7", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.2", + "ETSI GS MEC 011 3.2.1, clause 7.2.8.3.2" Config Id Config_MEC_1 @@ -214,33 +243,26 @@ Package MEC_MEC011_SRV_TRAF { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; and + instance_id indicating value APP_INSTANCE_ID; and the IUT entity having a traffic_rules containing - rule_id indicating value TRAFFIC_RULE_ID - ; + rule_id indicating value TRAFFIC_RULE_ID; } - // MEC 011 2.2.1, clause 5.2.7 + // MEC 011 3.2.1, clause 5.2.7 Expected behaviour ensure that { when { the IUT entity receives a vPUT containing - uri indicating value "mec_app_support/v1/applications/{APP_INSTANCE_ID}/traffic_rules/{TRAFFIC_RULE_ID}", + uri indicating value "mec_app_support/v2/applications/{APP_INSTANCE_ID}/traffic_rules/{TRAFFIC_RULE_ID}", body containing TrafficRule containing - // Invalid parameter value should trigger an error response. - action indicating value UNKNOWN_VALUE - ; - ; - ; + action indicating value UNKNOWN_VALUE;;; // Invalid parameter value should trigger an error response. from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 7.2.8.3.2 + // MEC 011 3.2.1, clause 7.2.8.3.2 the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; + status_code set to "400 Bad Request"; to the MEC_APP entity } } @@ -251,10 +273,12 @@ Package MEC_MEC011_SRV_TRAF { TP Id "TP_MEC_MEC011_SRV_TRAF_003_NF" Test objective - "Check that the IUT responds with an error when - a request for an unknown URI is sent by a MEC Application" + "Check that the IUT responds with an error when a request for an unknown URI is sent by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 7.2.8.3.2" + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.7", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.2", + "ETSI GS MEC 011 3.2.1, clause 7.2.8.3.2" Config Id Config_MEC_1 @@ -263,49 +287,41 @@ Package MEC_MEC011_SRV_TRAF { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; and + instance_id indicating value APP_INSTANCE_ID; and the IUT entity not having a traffic_rules containing - rule_id indicating value NON_EXISTENT_TRAFFIC_RULE_ID - ; + rule_id indicating value NON_EXISTENT_TRAFFIC_RULE_ID; } - // MEC 011 2.2.1, clause 5.2.7 + // MEC 011 3.2.1, clause 5.2.7 Expected behaviour ensure that { when { the IUT entity receives a vPUT containing - uri indicating value "mec_app_support/v1/applications/{APP_INSTANCE_ID}/traffic_rules/{NON_EXISTENT_TRAFFIC_RULE_ID}", + uri indicating value "mec_app_support/v2/applications/{APP_INSTANCE_ID}/traffic_rules/{NON_EXISTENT_TRAFFIC_RULE_ID}", body containing TrafficRule containing - action indicating value "DROP" - ; - ; - ; + action indicating value "DROP";;; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 7.2.8.3.2 + // MEC 011 3.2.1, clause 7.2.8.3.2 the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; + status_code set to "404 Not Found"; to the MEC_APP entity } } } -/* - - //@TODO: Commented as ETag is not mandatory - Test Purpose { TP Id "TP_MEC_MEC011_SRV_TRAF_003_PF" Test objective - "Check that the IUT responds with an error when - a request sent by a MEC Application doesn't comply with a required condition" + "Check that the IUT responds with an error when a request sent by a MEC Application doesn't comply with a required condition" - Reference "ETSI GS MEC 011 2.2.1, clause 7.2.8.3.2" + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.7", + "ETSI GS MEC 011 3.2.1, clause 7.1.2.2", + "ETSI GS MEC 011 3.2.1, clause 7.2.8.3.2" Config Id Config_MEC_1 @@ -314,36 +330,30 @@ Package MEC_MEC011_SRV_TRAF { Initial conditions with { the IUT entity being_in idle_state and the IUT entity having a apps_instance containing - instance_id indicating value APP_INSTANCE_ID - ; and + instance_id indicating value APP_INSTANCE_ID; and the IUT entity having a traffic_rules containing - rule_id indicating value TRAFFIC_RULE_ID - ; + rule_id indicating value TRAFFIC_RULE_ID; } - // MEC 011 2.2.1, clause 5.2.7 + // MEC 011 3.2.1, clause 5.2.7 Expected behaviour ensure that { when { the IUT entity receives a vPUT containing - uri indicating value "mec_app_support/v1/applications/{APP_INSTANCE_ID}/traffic_rules/{TRAFFIC_RULE_ID}", - if_match indicating value INVALID_ETAG + uri indicating value "mec_app_support/v2/applications/{APP_INSTANCE_ID}/traffic_rules/{TRAFFIC_RULE_ID}", + if_match indicating value INVALID_ETAG, body containing TrafficRule containing - action indicating value "DROP" - ; - ; - ; + action indicating value "DROP";;; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 7.2.8.3.2 + // MEC 011 3.2.1, clause 7.2.8.3.2 the IUT entity sends a HTTP_RESPONSE containing - status_code set to "412 Precondition Failed" - ; + status_code set to "412 Precondition Failed"; to the MEC_APP entity } } } -*/ + } diff --git a/Test Purposes/MEC011/SRV/TRANS/PlatTransport.tplan2 b/Test Purposes/MEC011/SRV/TRANS/PlatTransport.tplan2 index 5d7ee30b6a97572a037896010e91101ffb299169..805e771ea919ac40d29795e2097a03edc2c51028 100644 --- a/Test Purposes/MEC011/SRV/TRANS/PlatTransport.tplan2 +++ b/Test Purposes/MEC011/SRV/TRANS/PlatTransport.tplan2 @@ -1,5 +1,5 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters */ @@ -15,11 +15,12 @@ Package MEC_MEC011_SRV_TRANS { TP Id "TP_MEC_MEC011_SRV_TRANS_001_OK" Test objective - "Check that the IUT responds with a list of available transports - when queried by a MEC Application" + "Check that the IUT responds with a list of available transports when queried by a MEC Application" - Reference "ETSI GS MEC 011 2.2.1, clause 8.2.5.3.1", - "https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/master/MecServiceMgmtApi.yaml#L783#/definitions/TransportInfo" //Outdated + Reference + "ETSI GS MEC 011 3.2.1, clause 5.2.9", + "ETSI GS MEC 011 3.2.1, clause 8.1.2.3", + "ETSI GS MEC 011 3.2.1, clause 8.2.5.3.1" Config Id Config_MEC_1 @@ -29,23 +30,20 @@ Package MEC_MEC011_SRV_TRANS { the IUT entity being_in idle_state } - // MEC 011 2.2.1, clause 5.2.9 + // MEC 011 3.2.1, clause 5.2.9 Expected behaviour ensure that { when { the IUT entity receives a vGET containing - uri indicating value "mec_service_mgmt/v1/transports" - ; + uri indicating value "/mec_service_mgmt/v1/transports"; from the MEC_APP entity } then { - // MEC 011 2.2.1, clause 8.2.5.3.1 + // MEC 011 3.2.1, clause 8.2.5.3.1 the IUT entity sends a HTTP_RESPONSE containing status_code set to "200 OK" body containing - TransportInfo set to any_value // @TODOL Should be a TransportInfo list. How to express this in TDL? - ; - ; + TransportInfo set to any_value;; // @TODOL Should be a TransportInfo list. How to express this in TDL? to the MEC_APP entity } } diff --git a/Test Purposes/MEC012/SRV/RNIS/RnisAllSubscriptions_BV.tplan2 b/Test Purposes/MEC012/SRV/RNIS/RnisAllSubscriptions.tplan2 similarity index 54% rename from Test Purposes/MEC012/SRV/RNIS/RnisAllSubscriptions_BV.tplan2 rename to Test Purposes/MEC012/SRV/RNIS/RnisAllSubscriptions.tplan2 index dd24cfc9c92b0abf10b4e0efdb11d96bbb4f9f80..44f81c5e3aa0314bd1c518a2640558eda928a34a 100644 --- a/Test Purposes/MEC012/SRV/RNIS/RnisAllSubscriptions_BV.tplan2 +++ b/Test Purposes/MEC012/SRV/RNIS/RnisAllSubscriptions.tplan2 @@ -1,12 +1,86 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters */ -Package MEC_MEC012_SRV_RNIS_SUBS_BV { +Package MEC_MEC012_SRV_RNIS_SUBS { import all from MEC_Common; - + + Test Purpose { + TP Id "TP_MEC_MEC012_SRV_RNIS_011_BR" // Negative test: Trying to get a 400 Bad Request using incorrect parameters (Not existent subscriptionType) + + Test objective + "Check that the RNIS service responds with an error when it receives a request to get all RNIS subscriptions with a wrong subscription type" + + Reference "ETSI GS MEC 012 2.2.1, clause 7.6.3.1", + "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml" + Config Id Config_MEC_1 + PICS Selection PIC_RNIS_ALL_SUBSCRIPTIONS + + Initial conditions with { + the IUT entity having a RNIS_subscription containing + subscriptionHref indicating value SUBSCRIPTION_HREF_VALUE, + subscriptionType indicating value SUBSCRIPTION_TYPE + ; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/rni/v2/subscriptions", + query_parameters containing + subscriptionType indicating value "wrongSubscriptionType" //wrong subscription type + ; + ; from the MEC_SUB entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "400 Bad Request" + ; to the MEC_SUB entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC012_SRV_RNIS_012_BR" // 400 Bad Request + + Test objective + "Check that the RNIS service responds with an error when it receives a request to create a new RNIS subscription with a wrong format" + + Reference "ETSI GS MEC 012 2.2.1, clause 7.6.3.4", + "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/CellChangeSubscription" + Config Id Config_MEC_1 + PICS Selection PIC_RNIS_ALL_SUBSCRIPTIONS + + Initial conditions with { + the IUT entity being_in idle_state + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/rni/v2/subscriptions", + body containing + CellChangeSubscription containing + subscritionType indicating value "CelCangeSubscription", //wrong subscription type + callbackReference indicating value any_value, + filterCriteriaAssocHo indicating value any_value, + expiryDeadline set to any_value + ; + ; + ; from the MEC_SUB entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "400 Bad Request" + ; to the MEC_SUB entity + } + } + } + Test Purpose { TP Id "TP_MEC_MEC012_SRV_RNIS_011_OK" @@ -23,7 +97,7 @@ Package MEC_MEC012_SRV_RNIS_SUBS_BV { - ca_reconf Carrier Aggregation Reconfig - s1_bearer S1 Bearer Notification " - Reference "ETSI GS MEC 012 2.1.1, clause 7.6.3.1", + Reference "ETSI GS MEC 012 2.2.1, clause 7.6.3.1", "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/SubscriptionLinkList" Config Id Config_MEC_1 PICS Selection PIC_RNIS_ALL_SUBSCRIPTIONS @@ -60,7 +134,7 @@ Package MEC_MEC012_SRV_RNIS_SUBS_BV { } } } - + Test Purpose { TP Id "TP_MEC_MEC012_SRV_RNIS_012_OK" @@ -77,7 +151,7 @@ Package MEC_MEC012_SRV_RNIS_SUBS_BV { - S1BearerSubscription - NrMeasRepUeSubscription" - Reference "ETSI GS MEC 012 2.1.1, clause 7.6.3.4" + Reference "ETSI GS MEC 012 2.2.1, clause 7.6.3.4" Config Id Config_MEC_1 PICS Selection PIC_RNIS_ALL_SUBSCRIPTIONS @@ -106,11 +180,14 @@ Package MEC_MEC012_SRV_RNIS_SUBS_BV { CellChangeSubscription containing subscriptionType indicating value SUBSCRIPTION_TYPE, callbackReference indicating value CALLBACK_URI, - attribute _links + _links containing + self indicating value URI_TO_SUBSCRIPTION + ; ; ; ; to the MEC_SUB entity } } } + } diff --git a/Test Purposes/MEC012/SRV/RNIS/RnisAllSubscriptions_BO_BI.tplan2 b/Test Purposes/MEC012/SRV/RNIS/RnisAllSubscriptions_BO_BI.tplan2 deleted file mode 100644 index 392f9dc1d5983208de16b48085ab7d6a02c79fd1..0000000000000000000000000000000000000000 --- a/Test Purposes/MEC012/SRV/RNIS/RnisAllSubscriptions_BO_BI.tplan2 +++ /dev/null @@ -1,84 +0,0 @@ -/* -Copyright (c) ETSI 2018-2021. -Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters -*/ - -Package MEC_MEC012_SRV_RNIS_SUBS_BI { - - import all from MEC_Common; - - Test Purpose { - TP Id "TP_MEC_MEC012_SRV_RNIS_011_BR" // Negative test: Trying to get a 400 Bad Request using incorrect parameters (Not existent subscriptionType) - - Test objective - "Check that the RNIS service responds with an error when it receives a request to get all RNIS subscriptions with a wrong subscription type" - - Reference "ETSI GS MEC 012 2.1.1, clause 7.6.3.1", - "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml" - Config Id Config_MEC_1 - PICS Selection PIC_RNIS_ALL_SUBSCRIPTIONS - - Initial conditions with { - the IUT entity having a RNIS_subscription containing - subscriptionHref indicating value SUBSCRIPTION_HREF_VALUE, - subscriptionType indicating value SUBSCRIPTION_TYPE - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "/rni/v2/subscriptions", - query_parameters containing - subscriptionType indicating value "wrongSubscriptionType" //wrong subscription type - ; - ; from the MEC_SUB entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "400 Bad Request" - ; to the MEC_SUB entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC012_SRV_RNIS_012_BR" // 400 Bad Request - - Test objective - "Check that the RNIS service responds with an error when it receives a request to create a new RNIS subscription with a wrong format" - - Reference "ETSI GS MEC 012 2.1.1, clause 7.6.3.4", - "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/CellChangeSubscription" - Config Id Config_MEC_1 - PICS Selection PIC_RNIS_ALL_SUBSCRIPTIONS - - Initial conditions with { - the IUT entity being_in idle_state - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "/rni/v2/subscriptions", - body containing - CellChangeSubscription containing - subscritionType indicating value "CelCangeSubscription", //wrong subscription type - callbackReference indicating value any_value, - attribute filterCriteriaAssocHo, - expiryDeadline set to any_value - ; - ; - ; from the MEC_SUB entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "400 Bad Request" - ; to the MEC_SUB entity - } - } - } - -} diff --git a/Test Purposes/MEC012/SRV/RNIS/RnisNotifications.tplan2 b/Test Purposes/MEC012/SRV/RNIS/RnisNotifications.tplan2 index 033cc2f3fba9ed63a9219aea768983abb4abb9f9..04d6bc5a5536da28fdbe0e74dbc1e0e8bc77d0a7 100644 --- a/Test Purposes/MEC012/SRV/RNIS/RnisNotifications.tplan2 +++ b/Test Purposes/MEC012/SRV/RNIS/RnisNotifications.tplan2 @@ -1,5 +1,5 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters */ @@ -11,10 +11,10 @@ Package MEC_MEC012_SRV_RNIS_NOTIF_BV { TP Id "TP_MEC_MEC012_SRV_RNIS_001_OK" Test objective - "Check that the RNIS service sends an RNIS notification about cell change + "Check that the RNIS service sends an RNIS notification about cell change if the RNIS service has an associated subscription and the event is generated" - Reference "ETSI GS MEC 012 2.1.1, clause 6.4.2", + Reference "ETSI GS MEC 012 2.2.1, clause 6.4.2", "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml" Config Id Config_MEC_1 PICS Selection PIC_RNIS_NOTIFICATIONS @@ -60,7 +60,7 @@ Package MEC_MEC012_SRV_RNIS_NOTIF_BV { "Check that the RNIS service sends an RNIS notification about RAB establishment if the RNIS service has an associated subscription and the event is generated" - Reference "ETSI GS MEC 012 2.1.1, clause 6.4.3", + Reference "ETSI GS MEC 012 2.2.1, clause 6.4.3", "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml" Config Id Config_MEC_1 PICS Selection PIC_RNIS_NOTIFICATIONS @@ -92,7 +92,7 @@ Package MEC_MEC012_SRV_RNIS_NOTIF_BV { erabId set to any_value, erabQosParameters containing qci set to QCI, - attribute qosInformation + qosInformation set to any_value ; ; ; to the MEC_SUB entity @@ -108,7 +108,7 @@ Package MEC_MEC012_SRV_RNIS_NOTIF_BV { "Check that the RNIS service sends an RNIS notification about RAB modification if the RNIS service has an associated subscription and the event is generated" - Reference "ETSI GS MEC 012 2.1.1, clause 6.4.4", + Reference "ETSI GS MEC 012 2.2.1, clause 6.4.4", "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml" Config Id Config_MEC_1 PICS Selection PIC_RNIS_NOTIFICATIONS @@ -150,7 +150,7 @@ Package MEC_MEC012_SRV_RNIS_NOTIF_BV { "Check that the RNIS service sends an RNIS notification about RAB release if the RNIS service has an associated subscription and the event is generated" - Reference "ETSI GS MEC 012 2.1.1, clause 6.4.5", + Reference "ETSI GS MEC 012 2.2.1, clause 6.4.5", "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml" Config Id Config_MEC_1 PICS Selection PIC_RNIS_NOTIFICATIONS @@ -193,7 +193,7 @@ Package MEC_MEC012_SRV_RNIS_NOTIF_BV { "Check that the RNIS service sends an RNIS notification about UE measurement report if the RNIS service has an associated subscription and the event is generated" - Reference "ETSI GS MEC 012 2.1.1, clause 6.4.6", + Reference "ETSI GS MEC 012 2.2.1, clause 6.4.6", "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml" Config Id Config_MEC_1 PICS Selection PIC_RNIS_NOTIFICATIONS @@ -237,7 +237,7 @@ Package MEC_MEC012_SRV_RNIS_NOTIF_BV { "Check that the RNIS service sends an RNIS notification about UE timing advance if the RNIS service has an associated subscription and the event is generated" - Reference "ETSI GS MEC 012 2.1.1, clause 6.4.7", + Reference "ETSI GS MEC 012 2.2.1, clause 6.4.7", "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml" Config Id Config_MEC_1 PICS Selection PIC_RNIS_NOTIFICATIONS @@ -280,7 +280,7 @@ Package MEC_MEC012_SRV_RNIS_NOTIF_BV { "Check that the RNIS service sends an RNIS notification about UE carrier aggregation reconfiguration if the RNIS service has an associated subscription and the event is generated" - Reference "ETSI GS MEC 012 2.1.1, clause 6.4.8", + Reference "ETSI GS MEC 012 2.2.1, clause 6.4.8", "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml" Config Id Config_MEC_1 PICS Selection PIC_RNIS_NOTIFICATIONS @@ -323,7 +323,7 @@ Package MEC_MEC012_SRV_RNIS_NOTIF_BV { "Check that the RNIS service sends an RNIS notification about S1-U bearer if the RNIS service has an associated subscription and the event is generated" - Reference "ETSI GS MEC 012 2.1.1, clause 6.4.10", + Reference "ETSI GS MEC 012 2.2.1, clause 6.4.10", "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml" Config Id Config_MEC_1 PICS Selection PIC_RNIS_NOTIFICATIONS @@ -368,7 +368,7 @@ Package MEC_MEC012_SRV_RNIS_NOTIF_BV { "Check that the RNIS service sends an RNIS notification about 5G NR UE measurement report if the RNIS service has an associated subscription and the event is generated" - Reference "ETSI GS MEC 012 2.1.1, clause 6.4.11", + Reference "ETSI GS MEC 012 2.2.1, clause 6.4.11", "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml" Config Id Config_MEC_1 PICS Selection PIC_RNIS_NOTIFICATIONS @@ -377,7 +377,9 @@ Package MEC_MEC012_SRV_RNIS_NOTIF_BV { the IUT entity having a RNIS_subscription containing subscriptionType indicating value "NrMeasRepUeSubscription", callbackReference indicating value CALLBACK_URI, - filterCriteriaNrMrs indicating value FILTER_CRITERIA //the attributes of filterCriteriaNrMrs are FFS - ref. clause 6.3.11 + filterCriteriaNrMrs containing //the attributes of filterCriteriaNrMrs are FFS - ref. clause 6.3.11 + associateId indicating value ASSOCIATE_ID + ; ; } @@ -385,7 +387,7 @@ Package MEC_MEC012_SRV_RNIS_NOTIF_BV { ensure that { when { the IUT entity generates a nr_measurement_repost_event containing - associateId set to ASSOCIATE_ID; //TBD - how to link this with the filter criteria + associateId set to ASSOCIATE_ID; } then { the IUT entity sends a vPOST containing @@ -407,7 +409,7 @@ Package MEC_MEC012_SRV_RNIS_NOTIF_BV { "Check that the RNIS service sends an RNIS notification on subscription expiration if the RNIS service has an associated subscription and the event is generated" - Reference "ETSI GS MEC 012 2.1.1, clause 6.4.9", + Reference "ETSI GS MEC 012 2.2.1, clause 6.4.9", "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml" Config Id Config_MEC_1 PICS Selection PIC_RNIS_NOTIFICATIONS diff --git a/Test Purposes/MEC012/SRV/RNIS/RnisQuery_BO_BI.tplan2 b/Test Purposes/MEC012/SRV/RNIS/RnisQuery.tplan2 similarity index 59% rename from Test Purposes/MEC012/SRV/RNIS/RnisQuery_BO_BI.tplan2 rename to Test Purposes/MEC012/SRV/RNIS/RnisQuery.tplan2 index 5216e45c7ad328de516a8fc6458ebeed416a27a6..1d203f34893f8c83f0c46b0a2e1d1a0f99ac3a4f 100644 --- a/Test Purposes/MEC012/SRV/RNIS/RnisQuery_BO_BI.tplan2 +++ b/Test Purposes/MEC012/SRV/RNIS/RnisQuery.tplan2 @@ -1,9 +1,9 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters */ -Package MEC_MEC012_SRV_RNIS_QUERY_BI { +Package MEC_MEC012_SRV_RNIS_QUERY { import all from MEC_Common; @@ -13,7 +13,7 @@ Package MEC_MEC012_SRV_RNIS_QUERY_BI { Test objective "Check that the RNIS service returns an error when the RAB information is requested with a malformatted message" - Reference "ETSI GS MEC 012 2.1.1, clause 7.3.3.1", + Reference "ETSI GS MEC 012 2.2.1, clause 7.3.3.1", "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/RabInfo" Config Id Config_MEC_1 @@ -51,7 +51,7 @@ Package MEC_MEC012_SRV_RNIS_QUERY_BI { Test objective "Check that the RNIS service returns an error when the RAB information for a not existing element is requested" - Reference "ETSI GS MEC 012 2.1.1, clause 7.3.3.1", + Reference "ETSI GS MEC 012 2.2.1, clause 7.3.3.1", "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/RabInfo" Config Id Config_MEC_1 @@ -69,9 +69,9 @@ Package MEC_MEC012_SRV_RNIS_QUERY_BI { ensure that { when { the IUT entity receives a vGET containing - uri indicating value "/rnis/v2/query/rab_info", + uri indicating value "/rnis/v2/queries/rab_info", query_parameters containing - cell_id indicating value CELL_ID + cell_id indicating value NOT_EXISTING_CELL_ID ; ; from the RNIS_CLIENT entity } @@ -89,7 +89,7 @@ Package MEC_MEC012_SRV_RNIS_QUERY_BI { Test objective "Check that the RNIS service returns an error when the PLMN information is requested with a malformatted message" - Reference "ETSI GS MEC 012 2.1.1, clause 7.4.3.1", + Reference "ETSI GS MEC 012 2.2.1, clause 7.4.3.1", "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/PlmnInfo" Config Id Config_MEC_1 @@ -125,7 +125,7 @@ Package MEC_MEC012_SRV_RNIS_QUERY_BI { Test objective "Check that the RNIS service returns an error when the PLMN information for a not existing element is requested" - Reference "ETSI GS MEC 012 2.1.1, clause 7.4.3.1", + Reference "ETSI GS MEC 012 2.2.1, clause 7.4.3.1", "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/PlmnInfo" Config Id Config_MEC_1 @@ -141,7 +141,7 @@ Package MEC_MEC012_SRV_RNIS_QUERY_BI { ensure that { when { the IUT entity receives a vGET containing - uri indicating value "/rnis/v2/query/plmn_info", + uri indicating value "/rnis/v2/queries/plmn_info", query_parameters containing appInstanceId indicating value NOT_EXISTENT_APP_INSTANCE_ID ; @@ -161,7 +161,7 @@ Package MEC_MEC012_SRV_RNIS_QUERY_BI { Test objective "Check that the RNIS service returns an error when the S1 bearer information is requested with a malformatted message" - Reference "ETSI GS MEC 012 2.1.1, clause 7.5.3.1", + Reference "ETSI GS MEC 012 2.2.1, clause 7.5.3.1", "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/S1BearerInfo" Config Id Config_MEC_1 @@ -200,7 +200,7 @@ Package MEC_MEC012_SRV_RNIS_QUERY_BI { Test objective "Check that the RNIS service returns an error when the S1 bearer information for a not existing element is requested" - Reference "ETSI GS MEC 012 2.1.1, clause 7.5.3.1", + Reference "ETSI GS MEC 012 2.2.1, clause 7.5.3.1", "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/S1BearerInfo" Config Id Config_MEC_1 @@ -218,7 +218,7 @@ Package MEC_MEC012_SRV_RNIS_QUERY_BI { ensure that { when { the IUT entity receives a vGET containing - uri indicating value "/rnis/v2/query/s1_bearer_info", + uri indicating value "/rnis/v2/queries/s1_bearer_info", query_parameters containing cell_id indicating value NOT_EXISTENT_CELL_ID ; @@ -238,7 +238,7 @@ Package MEC_MEC012_SRV_RNIS_QUERY_BI { Test objective "Check that the RNIS service returns an error when the L2 measurements information is requested with a malformatted message" - Reference "ETSI GS MEC 012 2.1.1, clause 7.5a.3.1", + Reference "ETSI GS MEC 012 2.2.1, clause 7.5a.3.1", "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml" Config Id Config_MEC_1 @@ -276,7 +276,7 @@ Package MEC_MEC012_SRV_RNIS_QUERY_BI { Test objective "Check that the RNIS service returns an error when the L2 measurements information for a not existing element is requested" - Reference "ETSI GS MEC 012 2.1.1, clause 7.5a.3.1", + Reference "ETSI GS MEC 012 2.2.1, clause 7.5a.3.1", "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml" //TODO: not yet available in OpenAPI spec. To be added later Config Id Config_MEC_1 @@ -294,7 +294,7 @@ Package MEC_MEC012_SRV_RNIS_QUERY_BI { ensure that { when { the IUT entity receives a vGET containing - uri indicating value "/rnis/v2/query/layer2_meas", + uri indicating value "/rnis/v2/queries/layer2_meas", query_parameters containing cell_id indicating value NOT_EXISTENT_CELL_ID ; @@ -307,5 +307,188 @@ Package MEC_MEC012_SRV_RNIS_QUERY_BI { } } } + + Test Purpose { + TP Id "TP_MEC_MEC012_SRV_RNIS_016_OK" + + Test objective + "Check that the RNIS service returns the RAB information when requested" + + Reference "ETSI GS MEC 012 2.2.1, clause 7.3.3.1", + "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/RabInfo" + + Config Id Config_MEC_1 + PICS Selection PIC_RNIS_QUERY + + Initial conditions with { + the IUT entity having a RabInfo containing + cellUserInfo containing + ecgi indicating value CELL_ID + ; + ; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/rni/v2/queries/rab_info", + query_parameters containing + cell_id indicating value CELL_ID + ; + ; from the RNIS_CLIENT entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "200 OK", + body containing + RabInfo containing + appInstanceId set to any_value, + requestId set to any_value, + cellUserInfo containing + ecgi indicating value CELL_ID, + ueInfo indicating value any_value + ; + ; + ; + ; to the RNIS_CLIENT entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC012_SRV_RNIS_017_OK" + + Test objective + "Check that the RNIS service returns the PLMN information when requested" + + Reference "ETSI GS MEC 012 2.2.1, clause 7.4.3.1", + "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/PlmnInfo" + + Config Id Config_MEC_1 + PICS Selection PIC_RNIS_QUERY + + Initial conditions with { + the IUT entity having a PlmnInfo containing + appInstanceId indicating value APP_INSTANCE_ID + ; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/rni/v2/queries/plmn_info", + query_parameters containing + app_ins_id indicating value APP_INSTANCE_ID + ; + ; from the RNIS_CLIENT entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "200 OK", + body containing + PlmnInfo containing + appInstanceId indicating value APP_INSTANCE_ID, + plmn indicating value any_value + ; + ; + ; to the RNIS_CLIENT entity + } + } + } + Test Purpose { + TP Id "TP_MEC_MEC012_SRV_RNIS_018_OK" + + Test objective + "Check that the RNIS service returns the S1 bearer information" + + Reference "ETSI GS MEC 012 2.2.1, clause 7.5.3.1", + "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/S1BearerInfo" + + Config Id Config_MEC_1 + PICS Selection PIC_RNIS_QUERY + + Initial conditions with { + the IUT entity having a S1BearerInfo containing + s1UeInfo containing + ecgi indicating value CELL_ID + ; + ; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/rni/v2/queries/s1_bearer_info", + query_parameters containing + cell_id indicating value CELL_ID + ; + ; from the RNIS_CLIENT entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "200 OK", + body containing + S1BearerInfo containing + s1UeInfo containing + tempUeId indicating value any_value, + associateId indicating value any_value, + ecgi indicating value CELL_ID, + s1BearerInfoDetailed indicating value any_value + ; + ; + ; + ; to the RNIS_CLIENT entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC012_SRV_RNIS_019_OK" + + Test objective + "Check that the RNIS service returns the L2 measurements information" + + Reference "ETSI GS MEC 012 2.2.1, clause 7.5a.3.1", + "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml" //TODO: not yet available in OpenAPI spec. To be added later + + Config Id Config_MEC_1 + PICS Selection PIC_RNIS_QUERY + + Initial conditions with { + the IUT entity having a L2_Meas_information containing + cellInfo containing + ecgi indicating value CELL_ID + ; + ; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/rni/v2/queries/layer2_meas", + query_parameters containing + cell_id indicating value CELL_ID + ; + ; from the RNIS_CLIENT entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "200 OK", + body containing + L2_Meas_information containing + cellInfo containing + ecgi indicating value CELL_ID + ; + ; + ; + ; to the RNIS_CLIENT entity + } + } + } } diff --git a/Test Purposes/MEC012/SRV/RNIS/RnisQuery_BV.tplan2 b/Test Purposes/MEC012/SRV/RNIS/RnisQuery_BV.tplan2 deleted file mode 100644 index 46e375afb9e8399d353cda700fbd2856bbe19e49..0000000000000000000000000000000000000000 --- a/Test Purposes/MEC012/SRV/RNIS/RnisQuery_BV.tplan2 +++ /dev/null @@ -1,193 +0,0 @@ -/* -Copyright (c) ETSI 2018-2021. -Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters -*/ - -Package MEC_MEC012_SRV_RNIS_QUERY_BV { - - import all from MEC_Common; - - Test Purpose { - TP Id "TP_MEC_MEC012_SRV_RNIS_016_OK" - - Test objective - "Check that the RNIS service returns the RAB information when requested" - - Reference "ETSI GS MEC 012 2.1.1, clause 7.3.3.1", - "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/RabInfo" - - Config Id Config_MEC_1 - PICS Selection PIC_RNIS_QUERY - - Initial conditions with { - the IUT entity having a RabInfo containing - cellUserInfo containing - ecgi indicating value CELL_ID - ; - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "/rni/v2/queries/rab_info", - query_parameters containing - cell_id indicating value CELL_ID - ; - ; from the RNIS_CLIENT entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "200 OK", - body containing - RabInfo containing - appInstanceId set to any_value, - requestId set to any_value, - cellUserInfo containing - ecgi indicating value CELL_ID, - attribute ueInfo - ; - ; - ; - ; to the RNIS_CLIENT entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC012_SRV_RNIS_017_OK" - - Test objective - "Check that the RNIS service returns the PLMN information when requested" - - Reference "ETSI GS MEC 012 2.1.1, clause 7.4.3.1", - "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/PlmnInfo" - - Config Id Config_MEC_1 - PICS Selection PIC_RNIS_QUERY - - Initial conditions with { - the IUT entity having a PlmnInfo containing - appInstanceId indicating value APP_INSTANCE_INFO - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "/rni/v2/queries/plmn_info", - query_parameters containing - app_ins_id indicating value APP_INS_ID - ; - ; from the RNIS_CLIENT entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "200 OK", - body containing - PlmnInfo containing - appInstanceId indicating value APP_INS_ID, - attribute plmn - ; - ; - ; to the RNIS_CLIENT entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC012_SRV_RNIS_018_OK" - - Test objective - "Check that the RNIS service returns the S1 bearer information" - - Reference "ETSI GS MEC 012 2.1.1, clause 7.5.3.1", - "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/S1BearerInfo" - - Config Id Config_MEC_1 - PICS Selection PIC_RNIS_QUERY - - Initial conditions with { - the IUT entity having a S1BearerInfo containing - s1UeInfo containing - ecgi indicating value CELL_ID - ; - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "/rni/v2/queries/s1_bearer_info", - query_parameters containing - cell_id indicating value CELL_ID - ; - ; from the RNIS_CLIENT entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "200 OK", - body containing - S1BearerInfo containing - s1UeInfo containing - attribute tempUeId, - attribute associateId, - ecgi indicating value CELL_ID, - attribute s1BearerInfoDetailed - ; - ; - ; - ; to the RNIS_CLIENT entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC012_SRV_RNIS_019_OK" - - Test objective - "Check that the RNIS service returns the L2 measurements information" - - Reference "ETSI GS MEC 012 2.1.1, clause 7.5a.3.1", - "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml" //TODO: not yet available in OpenAPI spec. To be added later - - Config Id Config_MEC_1 - PICS Selection PIC_RNIS_QUERY - - Initial conditions with { - the IUT entity having a L2_Meas_information containing - cellInfo containing - ecgi indicating value CELL_ID - ; - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "/rni/v2/queries/layer2_meas", - query_parameters containing - cell_id indicating value CELL_ID - ; - ; from the RNIS_CLIENT entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "200 OK", - body containing - L2_Meas_information containing - cellInfo containing - ecgi indicating value CELL_ID - ; - ; - ; - ; to the RNIS_CLIENT entity - } - } - } -} diff --git a/Test Purposes/MEC012/SRV/RNIS/RnisSpecificSubscription_BO_BI.tplan2 b/Test Purposes/MEC012/SRV/RNIS/RnisSpecificSubscription.tplan2 similarity index 50% rename from Test Purposes/MEC012/SRV/RNIS/RnisSpecificSubscription_BO_BI.tplan2 rename to Test Purposes/MEC012/SRV/RNIS/RnisSpecificSubscription.tplan2 index 2efcf176550ee08fbba10abfd764f47a96862d54..beb7d79272e6cc4c3ed2ab58d435db5c6ab94ace 100644 --- a/Test Purposes/MEC012/SRV/RNIS/RnisSpecificSubscription_BO_BI.tplan2 +++ b/Test Purposes/MEC012/SRV/RNIS/RnisSpecificSubscription.tplan2 @@ -1,8 +1,8 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters */ -Package MEC_MEC012_SRV_RNIS_SUB_BI { +Package MEC_MEC012_SRV_RNIS_SUB { import all from MEC_Common; @@ -12,7 +12,7 @@ Package MEC_MEC012_SRV_RNIS_SUB_BI { Test objective "Check that the RNIS service responds with error when a not existing RNIS subscription is requested" - Reference "ETSI GS MEC 012 2.1.1, clause 7.8.3.1", + Reference "ETSI GS MEC 012 2.2.1, clause 7.8.3.1", "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml" Config Id Config_MEC_1 @@ -40,7 +40,7 @@ Package MEC_MEC012_SRV_RNIS_SUB_BI { } } } - + Test Purpose { // Negative test: 400 Bad request TP Id "TP_MEC_MEC012_SRV_RNIS_014_BR" @@ -48,7 +48,7 @@ Package MEC_MEC012_SRV_RNIS_SUB_BI { Test objective "Check that the RNIS service sends an error when it receives a malformed modify request for a RNIS subscription" - Reference "ETSI GS MEC 012 2.1.1, clause 7.8.3.2", + Reference "ETSI GS MEC 012 2.2.1, clause 7.8.3.2", "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/CellChangeSubscription" Config Id Config_MEC_1 PICS Selection PIC_RNIS_SPECIFIC_SUBSCRIPTION @@ -92,7 +92,7 @@ Package MEC_MEC012_SRV_RNIS_SUB_BI { Test objective "Check that the RNIS service responds with error when a modification for a not existing RNIS subscription is requested" - Reference "ETSI GS MEC 012 2.1.1, clause 7.8.3.2", + Reference "ETSI GS MEC 012 2.2.1, clause 7.8.3.2", "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml" Config Id Config_MEC_1 @@ -128,7 +128,7 @@ Package MEC_MEC012_SRV_RNIS_SUB_BI { Test objective "Check that the RNIS service responds with error when the deletion of a not existing RNIS subscription is requested" - Reference "ETSI GS MEC 012 2.1.1, clause 7.8.3.5", + Reference "ETSI GS MEC 012 2.2.1, clause 7.8.3.5", "https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml" Config Id Config_MEC_1 @@ -156,5 +156,148 @@ Package MEC_MEC012_SRV_RNIS_SUB_BI { } } } + + Test Purpose { + TP Id "TP_MEC_MEC012_SRV_RNIS_013_OK" + + Test objective + "Check that the RNIS service sends a RNIS subscription when requested. + Acceptable SUBSCRIPTION_TYPE are the following: + - CellChangeSubscription + - RabEstSubscription + - RabModSubscription + - RabRelSubscription + - MeasRepUeSubscription + - MeasTaSubscription + - CaReconfSubscription + - S1BearerSubscription + - NrMeasRepUeSubscription" + + Reference "ETSI GS MEC 012 2.2.1, clause 7.8.3.1" + + Config Id Config_MEC_1 + PICS Selection PIC_RNIS_SPECIFIC_SUBSCRIPTION + + Initial conditions with { + the IUT entity having a RNIS_subscription containing + subscriptionType indicating value SUBSCRIPTION_TYPE, + callbackReference indicating value CALLBACK_URI, + _links containing + self set to "/rni/v2/subscriptions/{SUBSCRIPTION_ID}" + ; + ; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/rni/v2/subscriptions/{SUBSCRIPTION_ID}" + ; from the MEC_SUB entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "200 OK", + body containing + subscription containing + subscriptionType indicating value SUBSCRIPTION_TYPE, + callbackReference indicating value CALLBACK_URI, + _links containing + self set to "/rni/v2/subscriptions/{SUBSCRIPTION_ID}" + ; + ; + ; + ; to the MEC_SUB entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC012_SRV_RNIS_014_OK" + + Test objective + "Check that the RNIS service modifies a RNIS subscription when requested" + + Reference "ETSI GS MEC 012 2.2.1, clause 7.8.3.2" + + Config Id Config_MEC_1 + PICS Selection PIC_RNIS_SPECIFIC_SUBSCRIPTION + + Initial conditions with { + the IUT entity having a RNIS_subscription containing + subscriptionType indicating value SUBSCRIPTION_TYPE, + callbackReference indicating value CALLBACK_URI, + _links containing + self set to "/rni/v2/subscriptions/{SUBSCRIPTION_ID}" + ; + ; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "/rni/v2/subscriptions/{SUBSCRIPTION_ID}", + body containing + subscription containing + subscriptionType indicating value SUBSCRIPTION_TYPE, + callbackReference indicating value NEW_CALLBACK_URI, + _links containing + self set to "/rni/v2/subscriptions/{SUBSCRIPTION_ID}" + ; + ; + ; + ; from the MEC_SUB entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "200 OK", + body containing + subscription containing + subscriptionType indicating value SUBSCRIPTION_TYPE, + callbackReference indicating value NEW_CALLBACK_URI, + _links containing + self set to "/rni/v2/subscriptions/{SUBSCRIPTION_ID}" + ; + ; + ; + ; to the MEC_SUB entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC012_SRV_RNIS_015_OK" + + Test objective + "Check that the RNIS service deletes a RNIS subscription when requested" + + Reference "ETSI GS MEC 012 2.2.1, clause 7.8.3.5" + Config Id Config_MEC_1 + PICS Selection PIC_RNIS_SPECIFIC_SUBSCRIPTION + + Initial conditions with { + the IUT entity having a RNIS_subscription containing + callbackReference indicating value CALLBACK_URI, + _links containing + self set to "/rni/v2/subscriptions/{SUBSCRIPTION_ID}" + ; + ; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "/rni/v2/subscriptions/{SUBSCRIPTION_ID}" + ; from the MEC_SUB entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "204 No Content" + ; to the MEC_SUB entity + } + } + } } diff --git a/Test Purposes/MEC012/SRV/RNIS/RnisSpecificSubscription_BV.tplan2 b/Test Purposes/MEC012/SRV/RNIS/RnisSpecificSubscription_BV.tplan2 deleted file mode 100644 index fe1d6ee533ce703bf9d475e9e0588a83dd667c62..0000000000000000000000000000000000000000 --- a/Test Purposes/MEC012/SRV/RNIS/RnisSpecificSubscription_BV.tplan2 +++ /dev/null @@ -1,155 +0,0 @@ -/* -Copyright (c) ETSI 2018-2021. -Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters -*/ - -Package MEC_MEC012_SRV_RNIS_SUB_BV { - - import all from MEC_Common; - - Test Purpose { - TP Id "TP_MEC_MEC012_SRV_RNIS_013_OK" - - Test objective - "Check that the RNIS service sends a RNIS subscription when requested. - Acceptable SUBSCRIPTION_TYPE are the following: - - CellChangeSubscription - - RabEstSubscription - - RabModSubscription - - RabRelSubscription - - MeasRepUeSubscription - - MeasTaSubscription - - CaReconfSubscription - - S1BearerSubscription - - NrMeasRepUeSubscription" - - Reference "ETSI GS MEC 012 2.1.1, clause 7.8.3.1" - - Config Id Config_MEC_1 - PICS Selection PIC_RNIS_SPECIFIC_SUBSCRIPTION - - Initial conditions with { - the IUT entity having a RNIS_subscription containing - subscriptionType indicating value SUBSCRIPTION_TYPE, - callbackReference indicating value CALLBACK_URI, - _links containing - self set to "/rni/v2/subscriptions/{SUBSCRIPTION_ID}" - ; - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "/rni/v2/subscriptions/{SUBSCRIPTION_ID}" - ; from the MEC_SUB entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "200 OK", - body containing - subscription containing - subscriptionType indicating value SUBSCRIPTION_TYPE, - callbackReference indicating value CALLBACK_URI, - _links containing - self set to "/rni/v2/subscriptions/{SUBSCRIPTION_ID}" - ; - ; - ; - ; to the MEC_SUB entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC012_SRV_RNIS_014_OK" - - Test objective - "Check that the RNIS service modifies a RNIS subscription when requested" - - Reference "ETSI GS MEC 012 2.1.1, clause 7.8.3.2" - - Config Id Config_MEC_1 - PICS Selection PIC_RNIS_SPECIFIC_SUBSCRIPTION - - Initial conditions with { - the IUT entity having a RNIS_subscription containing - subscriptionType indicating value SUBSCRIPTION_TYPE, - callbackReference indicating value CALLBACK_URI, - _links containing - self set to "/rni/v2/subscriptions/{SUBSCRIPTION_ID}" - ; - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPUT containing - uri indicating value "/rni/v2/subscriptions/{SUBSCRIPTION_ID}", - body containing - subscription containing - subscriptionType indicating value SUBSCRIPTION_TYPE, - callbackReference indicating value NEW_CALLBACK_URI, - _links containing - self set to "/rni/v2/subscriptions/{SUBSCRIPTION_ID}" - ; - ; - ; - ; from the MEC_SUB entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "200 OK", - body containing - subscription containing - subscriptionType indicating value SUBSCRIPTION_TYPE, - callbackReference indicating value NEW_CALLBACK_URI, - _links containing - self set to "/rni/v2/subscriptions/{SUBSCRIPTION_ID}" - ; - ; - ; - ; to the MEC_SUB entity - } - } - } - - - - Test Purpose { - TP Id "TP_MEC_MEC012_SRV_RNIS_015_OK" - - Test objective - "Check that the RNIS service deletes a RNIS subscription when requested" - - Reference "ETSI GS MEC 012 2.1.1, clause 7.8.3.5" - Config Id Config_MEC_1 - PICS Selection PIC_RNIS_SPECIFIC_SUBSCRIPTION - - Initial conditions with { - the IUT entity having a RNIS_subscription containing - callbackReference indicating value CALLBACK_URI, - _links containing - self set to "/rni/v2/subscriptions/{SUBSCRIPTION_ID}" - ; - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vDELETE containing - uri indicating value "/rni/v2/subscriptions/{SUBSCRIPTION_ID}" - ; from the MEC_SUB entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "204 No Content" - ; to the MEC_SUB entity - } - } - } -} diff --git a/Test Purposes/MEC013/SRV/RLOCLOOK/PlatRadioNodeLocation.tplan2 b/Test Purposes/MEC013/SRV/RLOCLOOK/PlatRadioNodeLocation.tplan2 index dda375e55ac9600132050006d2b2cdcab6e8f5c1..74b0022600fe845139661038542bc92fe522b814 100644 --- a/Test Purposes/MEC013/SRV/RLOCLOOK/PlatRadioNodeLocation.tplan2 +++ b/Test Purposes/MEC013/SRV/RLOCLOOK/PlatRadioNodeLocation.tplan2 @@ -1,99 +1,191 @@ /* -Copyright (c) ETSI 2018-2021. -Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters +Copyright (c) ETSI 2018-2023. + +This software is subject to copyrights owned by ETSI. Non-exclusive permission +is hereby granted, free of charge, to copy, reproduce and amend this file +under the following conditions: It is provided "as is", without warranty of any +kind, expressed or implied. + +ETSI shall never be liable for any claim, damages, or other liability arising +from its use or inability of use.This permission does not apply to any documentation +associated with this file for which ETSI keeps all rights reserved. The present +copyright notice shall be included in all copies of whole or part of this +file and shall not imply any sub-license right. */ Package MEC_MEC013_SRV_RLOCLOOK { - import all from MEC_Common; - - - /* - * Radio Node Location Lookup (RLOCLOOK) - */ - - Test Purpose { - TP Id "TP_MEC_MEC013_SRV_RLOCLOOK_001_OK" - - Test objective - "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" - - Reference "ETSI GS MEC 013 2.1.1, clause 7.3.7", - "https://forge.etsi.org/gitlab/mec/gs013-location-api/blob/master/LocationAPI.yaml#/definitions/AccessPointList" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a ue_location containing - zoneId indicating value ZONE_ID - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "location/v2/zones/{ZONE_ID}/accessPoints" - ; - from the MEC_APP entity + import all from MEC_Common; + + + /* + * Radio Node Location Lookup (RLOCLOOK) + */ + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_RLOCLOOK_001_OK" + + Test objective + "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" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.7", + "ETSI GS MEC 013 3.1.1 Clause 6.2.1", + "ETSI GS MEC 013 3.1.1 Clause 7.9.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a ue_location containing + zoneId indicating value ZONE_ID; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/queries/zones/{ZONE_ID}/accessPoints"; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.9.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + accessPointList containing + accessPointInfo containing + zoneId set to ZONE_ID;;;; + to the MEC_APP entity + } } - then { - // MEC 013, clause 7.3.7 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" - body containing - accessPointList containing - zoneId set to ZONE_ID - ; - ; - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_RLOCLOOK_001_NF" + + Test objective + "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" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.7", + "ETSI GS MEC 013 3.1.1 Clause 6.2.1", + "ETSI GS MEC 013 3.1.1 Clause 7.9.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity not having a ue_location containing + zoneId indicating value NON_EXISTENT_ZONE_ID; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/zones/{NON_EXISTENT_ZONE_ID}/accessPoints"; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.3.7 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC013_SRV_RLOCLOOK_001_NF" - - Test objective - "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" - - Reference "ETSI GS MEC 013 2.1.1, clause 7.3.7", - "https://forge.etsi.org/gitlab/mec/gs013-location-api/blob/master/LocationAPI.yaml#/definitions/AccessPointList" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity not having a ue_location containing - zoneId indicating value NON_EXISTENT_ZONE_ID - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "location/v2/zones/{NON_EXISTENT_ZONE_ID}/accessPoints" - ; - from the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_RLOCLOOK_002_OK" + + Test objective + "Check that the IUT responds with the radio nodes when queried by a MEC Application" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.7", + "ETSI GS MEC 013 3.1.1 Clause 6.2.1", + "ETSI GS MEC 013 3.1.1 Clause 7.10.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a ue_location containing + zoneId indicating value ZONE_ID, + accessPointId indicating value ACCESS_POINT_ID; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/queries/zones/{ZONE_ID}/accessPoints/{ACCESS_POINT_ID}"; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.10.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + accessPointInfo containing + zoneId indicating value ZONE_ID, + accessPointId indicating value ACCESS_POINT_ID;;; + to the MEC_APP entity + } } - then { - // MEC 013, clause 7.3.7 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_RLOCLOOK_002_NF" + + Test objective + "Check that the IUT responds with an error when the radio nodes does not exist" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.7", + "ETSI GS MEC 013 3.1.1 Clause 6.2.1", + "ETSI GS MEC 013 3.1.1 Clause 7.10.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity not having a ue_location containing + zoneId indicating value ZONE_ID, + accessPointId indicating value NON_EXISTING_ACCESS_POINT_ID; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/queries/zones/{ZONE_ID}/accessPoints/{NON_EXISTING_ACCESS_POINT_ID}"; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.10.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } } - } - } + } + + } diff --git a/Test Purposes/MEC013/SRV/UEAREALOOK/PlatUeAreaLookup.tplan2 b/Test Purposes/MEC013/SRV/UEAREALOOK/PlatUeAreaLookup.tplan2 new file mode 100644 index 0000000000000000000000000000000000000000..f68b09cc758df4692e668c3b1018bdc7fb642752 --- /dev/null +++ b/Test Purposes/MEC013/SRV/UEAREALOOK/PlatUeAreaLookup.tplan2 @@ -0,0 +1,251 @@ +/* +Copyright (c) ETSI 2018-2023. + +This software is subject to copyrights owned by ETSI. Non-exclusive permission +is hereby granted, free of charge, to copy, reproduce and amend this file +under the following conditions: It is provided "as is", without warranty of any +kind, expressed or implied. + +ETSI shall never be liable for any claim, damages, or other liability arising +from its use or inability of use.This permission does not apply to any documentation +associated with this file for which ETSI keeps all rights reserved. The present +copyright notice shall be included in all copies of whole or part of this +file and shall not imply any sub-license right. +*/ + +Package MEC_MEC013_SRV_UEAREALOOK { + + import all from MEC_Common; + + + /* + * UE Area Subscribe (UEAREALOOK) + */ + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEAREALOOK_001_OK_01" + + Test objective + "Check that the IUT responds with a list of UE area subscriptions + when queried by a MEC Application - No filter" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.2", + "ETSI GS MEC 013 3.1.1 Clause 6.3.3", + "ETSI GS MEC 013 3.1.1 Clause 7.16.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a subscriptions containing + subscriptionType indicating value "UserAreaSubscription", + subscriptionId indicating value SUBSCRIPTION_ID, + _links containing + self indicating value LINKS_SELF;; + } + + // MEC 013, clause 5.3.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/subscriptions/area"; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.16.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + notificationSubscriptionList containing + subscription containing + href indicating value any_value, + subscriptionType indicating value "UserAreaSubscription";, + resourceURL indicating value LINKS_SELF;;; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEAREALOOK_001_OK_02" + + Test objective + "Check that the IUT responds with a list of UE area subscriptions + when queried by a MEC Application - event filter" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.2", + "ETSI GS MEC 013 3.1.1 Clause 6.3.3", + "ETSI GS MEC 013 3.1.1 Clause 7.16.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a subscriptions containing + subscriptionId indicating value SUBSCRIPTION_ID, + _links containing + self indicating value LINKS_SELF;; + } + + // MEC 013, clause 5.3.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/subscriptions/area", + query_parameters containing + subscription_type indicating value "event";; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.16.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + notificationSubscriptionList containing + subscription containing + href indicating value any_value, + subscriptionType indicating value "UserAreaSubscription";, + resourceURL indicating value LINKS_SELF;;; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEAREALOOK_001_BR" + + Test objective + "Check that the IUT responds with an error when a + request with incorrect parameters is sent by a MEC Application - Invalid filter" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.2", + "ETSI GS MEC 013 3.1.1 Clause 6.3.8", + "ETSI GS MEC 013 3.1.1 Clause 6.4.8", + "ETSI GS MEC 013 3.1.1 Clause 7.16.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state + } + + // MEC 013, clause 5.3.5 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/subscriptions/area", + query_parameters containing + subscription_type indicating value "dummy";; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.5.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEAREALOOK_002_OK" + + Test objective + "Check that the IUT acknowledges the change of UE area subscription request + when commanded by a MEC Application" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 6.3.8", + "ETSI GS MEC 013 3.1.1 Clause 6.4.8", + "ETSI GS MEC 013 3.1.1 Clause 7.17.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a subscriptions containing + subscriptionId indicating value SUBSCRIPTION_ID, + allbackReference indicating value CALLBACK_URL; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/subscriptions/area/{SUBSCRIPTION_ID}"; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.17.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + userAreaNotification containing + notificationType indicating value "UserAreaNotification", + address indicating value ACR_SOME_IP, + userLocationEvent indicating value USER_LOCATION_EVENT, + _links indicating value LINKS;;; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEAREALOOK_002_NF" + + Test objective + "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" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 6.3.8", + "ETSI GS MEC 013 3.1.1 Clause 6.4.8", + "ETSI GS MEC 013 3.1.1 Clause 7.17.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity not having a subscriptions containing + subscriptionId indicating value NON_EXISTING_SUBSCRIPTION_ID; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/subscriptions/area/{NON_EXISTING_SUBSCRIPTION_ID}"; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.17.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } + } + } + + +} diff --git a/Test Purposes/MEC013/SRV/UEAREASUB/PlatUeAreaSubscription.tplan2 b/Test Purposes/MEC013/SRV/UEAREASUB/PlatUeAreaSubscription.tplan2 index 1d7862c025ce18056fa2d07870e237ed146772a2..997c4ac0150d07fa7e718166fd112061c8159917 100644 --- a/Test Purposes/MEC013/SRV/UEAREASUB/PlatUeAreaSubscription.tplan2 +++ b/Test Purposes/MEC013/SRV/UEAREASUB/PlatUeAreaSubscription.tplan2 @@ -1,6 +1,16 @@ /* -Copyright (c) ETSI 2018-2021. -Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters +Copyright (c) ETSI 2018-2023. + +This software is subject to copyrights owned by ETSI. Non-exclusive permission +is hereby granted, free of charge, to copy, reproduce and amend this file +under the following conditions: It is provided "as is", without warranty of any +kind, expressed or implied. + +ETSI shall never be liable for any claim, damages, or other liability arising +from its use or inability of use.This permission does not apply to any documentation +associated with this file for which ETSI keeps all rights reserved. The present +copyright notice shall be included in all copies of whole or part of this +file and shall not imply any sub-license right. */ Package MEC_MEC013_SRV_UEAREASUB { @@ -13,191 +23,306 @@ Package MEC_MEC013_SRV_UEAREASUB { */ Test Purpose { - TP Id "TP_MEC_MEC013_SRV_UEAREASUB_001_OK" + TP Id "TP_MEC_MEC013_SRV_UEAREASUB_001_OK" - Test objective - "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" - - Reference "ETSI GS MEC 013 2.1.1, clause 7.3.11" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state - } - - // MEC 013, clause 5.3.11 - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "location/v2/subscriptions/area/circle", - body containing - circleNotificationSubscription containing - clientCorrelator indicating value CLIENT_ID, - callbackReference indicating value CALLBACK_URL, - address indicating value IP_ADDRESS - ; - ; - ; - from the MEC_APP entity - } - then { - // MEC 013, clause 7.3.11.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "201 Created" - body containing - circleNotificationSubscription containing - clientCorrelator indicating value CLIENT_ID, - callbackReference indicating value CALLBACK_URL, - address indicating value IP_ADDRESS - ; - ; - ; - to the MEC_APP entity - and - // MEC 013, clause 7.3.11.3 - the IUT entity sends a vPOST containing - uri indicating value CALLBACK_URL, - body containing - subscriptionNotification containing - terminalLocation containing - address set to IP_ADDRESS - ; - ; - ; - ; - to the MEC_APP entity + Test objective + "Check that the IUT acknowledges the creation of UE area subscription request + when commanded by a MEC Application" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.11", + "ETSI GS MEC 013 3.1.1 Clause 6.3.8", + "ETSI GS MEC 013 3.1.1 Clause 6.4.8", + "ETSI GS MEC 013 3.1.1 Clause 7.16.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state + } + + // MEC 013, clause 5.3.11 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "location/v3/subscriptions/area" + body containing + userAreaSubscription containing + subscriptionType indicating value "UserAreaSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value CALLBACK_URL, + areaDefine indicating value AREA, + addressList containing + address indicating value ACR_SOME_IP;, + trackingAccuracy indicating value TRACKING_ACCURACY_THRESHOLD;;; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.16.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "201 Created" + body containing + userAreaNotification containing + notificationType indicating value "UserAreaNotification", + address indicating value ACR_SOME_IP, + userLocationEvent indicating value USER_LOCATION_EVENT, + _links indicating value LINKS;;; + to the MEC_APP entity + // MEC 013, clause 5.3.4 + and the IUT entity sends a vPOST containing + Uri set to CALLBACK_URL + body containing + userAreaNotification containing + notificationType indicating value "UserAreaNotification", + address indicating value ACR_SOME_IP, + userLocationEvent indicating value any_value, + _links indicating value LINKS;;; + to the MEC_APP entity + } } - } - } + } Test Purpose { - TP Id "TP_MEC_MEC013_SRV_UEAREASUB_001_BR" + TP Id "TP_MEC_MEC013_SRV_UEAREASUB_001_BR" - Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" - - Reference "ETSI GS MEC 013 2.1.1, clause 7.3.11" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state - } - - // MEC 013, clause 5.3.11 - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "location/v2/subscriptions/area/circle", - body containing - circleNotificationSubscription containing - clientCorrelator indicating value CLIENT_ID, - // Wrong name should trigger an error response. - callback indicating value CALLBACK_URL, - address indicating value IP_ADDRESS - ; - ; - ; - from the MEC_APP entity - } - then { - // MEC 013, clause 7.3.11.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; - to the MEC_APP entity + Test objective + "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" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.11", + "ETSI GS MEC 013 3.1.1 Clause 6.3.8", + "ETSI GS MEC 013 3.1.1 Clause 6.4.8", + "ETSI GS MEC 013 3.1.1 Clause 7.16.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state + } + + // MEC 013, clause 5.3.11 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "location/v3/subscriptions/area" + body containing + userAreaSubscription containing + subscriptionType indicating value "UserAreaSubscription", + clientCorrelator indicating value CLIENT_ID, + areaDefine indicating value AREA, + addressList containing + address indicating value ACR_SOME_IP;, + trackingAccuracy indicating value TRACKING_ACCURACY_THRESHOLD;;; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.5.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } } - } - } + } - Test Purpose { - TP Id "TP_MEC_MEC013_SRV_UEAREASUB_002_OK" - - Test objective - "Check that the IUT acknowledges the cancellation of UE area change notifications - when commanded by a MEC Application" - - Reference "ETSI GS MEC 013 2.1.1, clause 7.3.6" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a subscriptions containing - subscriptionId indicating value SUBSCRIPTION_ID - ; - } - - // MEC 013, clause 5.3.6 - Expected behaviour - ensure that { - when { - the IUT entity receives a vDELETE containing - uri indicating value "location/v2/subscriptions/area/circle/{SUBSCRIPTION_ID}" - ; - from the MEC_APP entity + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEAREASUB_002_OK" + + Test objective + "Check that the IUT acknowledges the change of UE area subscription request + when commanded by a MEC Application" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 6.3.8", + "ETSI GS MEC 013 3.1.1 Clause 6.4.8", + "ETSI GS MEC 013 3.1.1 Clause 7.17.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a subscriptions containing + subscriptionId indicating value SUBSCRIPTION_ID, + callbackReference indicating value CALLBACK_URL; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "location/v3/subscriptions/area/{SUBSCRIPTION_ID}" + body containing + userAreaSubscription containing + subscriptionType indicating value "UserAreaSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value NEW_CALLBACK_URL, + areaDefine indicating value AREA, + addressList containing + address indicating value ACR_SOME_IP;, + trackingAccuracy indicating value TRACKING_ACCURACY_THRESHOLD;;; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.17.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + userAreaSubscription containing + subscriptionType indicating value "UserAreaSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value NEW_CALLBACK_URL, + _links indicating value LINKS, + areaDefine indicating value AREA, + addressList containing + address indicating value ACR_SOME_IP;, + trackingAccuracy indicating value TRACKING_ACCURACY_THRESHOLD;;; + to the MEC_APP entity + } } - then { - // MEC 013, clause 7.3.6.6 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "204 No Content" - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEAREASUB_002_NF" + + Test objective + "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" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 6.3.8", + "ETSI GS MEC 013 3.1.1 Clause 6.4.8", + "ETSI GS MEC 013 3.1.1 Clause 7.17.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity not having a subscriptions containing + subscriptionId indicating value NON_EXISTING_SUBSCRIPTION_ID; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "location/v3/subscriptions/area/{NON_EXISTING_SUBSCRIPTION_ID}" + body containing + userAreaSubscription containing + subscriptionType indicating value "UserAreaSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value NEW_CALLBACK_URL, + areaDefine indicating value AREA, + addressList containing + address indicating value ACR_SOME_IP;, + trackingAccuracy indicating value TRACKING_ACCURACY_THRESHOLD;;; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.17.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } } + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEAREASUB_003_OK" + + Test objective + "Check that the IUT acknowledges the cancellation of UE area change notifications + when commanded by a MEC Application" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.6", + "ETSI GS MEC 013 3.1.1 Clause 6.3.8", + "ETSI GS MEC 013 3.1.1 Clause 6.4.8", + "ETSI GS MEC 013 3.1.1 Clause 7.17.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a subscriptions containing + subscriptionId indicating value SUBSCRIPTION_ID; + } + + // MEC 013, clause 5.3.6 + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "location/v3/subscriptions/area/{SUBSCRIPTION_ID}"; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.17.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "204 No Content"; + to the MEC_APP entity + } } - } + } Test Purpose { - TP Id "TP_MEC_MEC013_SRV_UEAREASUB_002_NF" + TP Id "TP_MEC_MEC013_SRV_UEAREASUB_003_NF" Test objective - "Check that the IUT responds with an error when - a request for an URI that cannot be mapped to a valid resource URI + "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" - Reference "ETSI GS MEC 013 2.1.1, clause 7.3.6" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity not having a subscriptions containing - subscriptionId indicating value NON_EXISTING_SUBSCRIPTION_ID - ; - } - - // MEC 013, clause 5.3.6 - Expected behaviour - ensure that { - when { - the IUT entity receives a vDELETE containing - uri indicating value "location/v2/subscriptions/area/circle/{NON_EXISTING_SUBSCRIPTION_ID}" - ; - from the MEC_APP entity - } - then { - // MEC 013, clause 7.3.6.6 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; - to the MEC_APP entity - } + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.6", + "ETSI GS MEC 013 3.1.1 Clause 6.3.8", + "ETSI GS MEC 013 3.1.1 Clause 6.4.8", + "ETSI GS MEC 013 3.1.1 Clause 7.17.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity not having a subscriptions containing + subscriptionId indicating value NON_EXISTING_SUBSCRIPTION_ID; + } + + // MEC 013, clause 5.3.6 + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "location/v3/subscriptions/area/{NON_EXISTING_SUBSCRIPTION_ID}"; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.17.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "204 No Content"; + to the MEC_APP entity + } } - } + } + + } diff --git a/Test Purposes/MEC013/SRV/UEDISTLOOK/PlatUeDistanceLookup.tplan2 b/Test Purposes/MEC013/SRV/UEDISTLOOK/PlatUeDistanceLookup.tplan2 index 8577c4be3db09fe9c70dcc65b34086ba7510abb6..2d4b5e81702ffe80a11bba9f953214ab7988574e 100644 --- a/Test Purposes/MEC013/SRV/UEDISTLOOK/PlatUeDistanceLookup.tplan2 +++ b/Test Purposes/MEC013/SRV/UEDISTLOOK/PlatUeDistanceLookup.tplan2 @@ -1,101 +1,208 @@ /* -Copyright (c) ETSI 2018-2021. -Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters +Copyright (c) ETSI 2018-2023. + +This software is subject to copyrights owned by ETSI. Non-exclusive permission +is hereby granted, free of charge, to copy, reproduce and amend this file +under the following conditions: It is provided "as is", without warranty of any +kind, expressed or implied. + +ETSI shall never be liable for any claim, damages, or other liability arising +from its use or inability of use.This permission does not apply to any documentation +associated with this file for which ETSI keeps all rights reserved. The present +copyright notice shall be included in all copies of whole or part of this +file and shall not imply any sub-license right. */ Package MEC_MEC013_SRV_UEDISTLOOK { - import all from MEC_Common; - - /* - * UE Distance Lookup (UEDISTLOOK) - */ - - Test Purpose { - TP Id "TP_MEC_MEC013_SRV_UEDISTLOOK_001_OK" - - Test objective - "Check that the IUT responds with the distance to a UE - when queried by a MEC Application" - - Reference "ETSI GS MEC 013 2.1.1, clause 7.3.9" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state - } - - // MEC 013, clause 5.3.9 - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "location/v2/queries", - query_parameters containing - address indicating value any_value, - latitude indicating value any_value, - longitude indicating value any_value - ; - ; - from the MEC_APP entity + import all from MEC_Common; + + /* + * UE Distance Lookup (UEDISTLOOK) + */ + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEDISTLOOK_001_OK" + + Test objective + "Check that the IUT responds with the list of UE distance subscriptions + to a UE when queried by a MEC Application" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.2", + "ETSI GS MEC 013 3.1.1 Clause 6.3.3", + "ETSI GS MEC 013 3.1.1 Clause 7.14.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a subscriptions containing + subscriptionType indicating value "UserDistanceSubscription", + subscriptionId indicating value SUBSCRIPTION_ID, + _links containing + self indicating value LINKS_SELF;; + } + + // MEC 013, clause 5.3.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/subscriptions/distance"; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.14.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + notificationSubscriptionList containing + subscription containing + href indicating value any_value, + subscriptionType indicating value "UserDistanceSubscription";, + resourceURL indicating value LINKS_SELF;;; + to the MEC_APP entity + } } - then { - // MEC 013, clause 7.3.9.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" - body containing - terminalDistance set to any_value - ; - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEDISTLOOK_001_BR" + + Test objective + "Check that the IUT responds with an error + when a request with incorrect parameters is sent by a MEC Application" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.2", + "ETSI GS MEC 013 3.1.1 Clause 6.3.3", + "ETSI GS MEC 013 3.1.1 Clause 7.14.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity not having any UserDistanceSubscription + } + + // MEC 013, clause 5.3.9 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing // Wrong URL structure: no URI query parameters supported + uri indicating value "location/v3/subscriptions/distance", + query_parameters containing + subscriptionType indicating value any_value + ;; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.14.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC013_SRV_UEDISTLOOK_001_BR" - - Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" - - Reference "ETSI GS MEC 013 2.1.1, clause 7.3.9" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state - } - - // MEC 013, clause 5.3.9 - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "location/v2/queries", - query_parameters containing - address indicating value any_value, - // Wrong name should trigger an error response. - lat indicating value any_value, - longitude indicating value any_value - ; - ; - from the MEC_APP entity + } + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEDISTLOOK_002_OK" + + Test objective + "Check that the IUT responds with the distance to a UE when queried by a MEC Application" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.2", + "ETSI GS MEC 013 3.1.1 Clause 6.3.9", + "ETSI GS MEC 013 3.1.1 Clause 6.4.9", + "ETSI GS MEC 013 3.1.1 Clause 7.15.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a subscriptions containing + subscriptionType indicating value "UserDistanceSubscription", + subscriptionId indicating value SUBSCRIPTION_ID, + _links containing + self indicating value LINKS_SELF;; + } + + // MEC 013, clause 5.3.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/subscriptions/distance/{SUBSCRIPTION_ID}"; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.15.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + userDistanceSubscription containing + subscriptionType indicating value "UserDistanceSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value CALLBACK_URL, + _links indicating value LINKS, + monitoredAddress indicating value MONITORED_IP_ADDRESS, + distance indicating value any_value, + trackingAccuracy indicating value any_value, + criteria indicating value any_value, + checkImmediate indicating value true;;; + to the MEC_APP entity + } } - then { - // MEC 013, clause 7.3.9.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEDISTLOOK_002_NF" + + Test objective + "" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.2", + "ETSI GS MEC 013 3.1.1 Clause 6.3.9", + "ETSI GS MEC 013 3.1.1 Clause 6.4.9", + "ETSI GS MEC 013 3.1.1 Clause 7.15.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity not having a subscriptions containing + subscriptionId indicating value NON_EXISTING_SUBSCRIPTION_ID; + } + + // MEC 013, clause 5.3.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/subscriptions/distance/{NON_EXISTING_SUBSCRIPTION_ID}"; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.15.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } } - } - } + } + } diff --git a/Test Purposes/MEC013/SRV/UEDISTSUB/PlatUeDistanceSubscription.tplan2 b/Test Purposes/MEC013/SRV/UEDISTSUB/PlatUeDistanceSubscription.tplan2 index 5c40726e19c7287456545c09bbbbe35ea27ce56b..bb967ed51414eb48df8793114d263abe07422a79 100644 --- a/Test Purposes/MEC013/SRV/UEDISTSUB/PlatUeDistanceSubscription.tplan2 +++ b/Test Purposes/MEC013/SRV/UEDISTSUB/PlatUeDistanceSubscription.tplan2 @@ -1,206 +1,225 @@ /* -Copyright (c) ETSI 2018-2021. -Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters +Copyright (c) ETSI 2018-2023. + +This software is subject to copyrights owned by ETSI. Non-exclusive permission +is hereby granted, free of charge, to copy, reproduce and amend this file +under the following conditions: It is provided "as is", without warranty of any +kind, expressed or implied. + +ETSI shall never be liable for any claim, damages, or other liability arising +from its use or inability of use.This permission does not apply to any documentation +associated with this file for which ETSI keeps all rights reserved. The present +copyright notice shall be included in all copies of whole or part of this +file and shall not imply any sub-license right. */ Package MEC_MEC013_SRV_UEDISTSUB { - import all from MEC_Common; - + import all from MEC_Common; + + + /* + * UE Distance Subscribe (UEDISTSUB) + */ + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEDISTSUB_001_OK" + + Test objective + "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" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.4", + "ETSI GS MEC 013 3.1.1 Clause 6.3.9", + "ETSI GS MEC 013 3.1.1 Clause 6.4.9", + "ETSI GS MEC 013 3.1.1 Clause 7.14.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state + } + + // MEC 013, clause 5.3.10 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "location/v3/subscriptions/distance", + body containing + userDistanceSubscription containing + subscriptionType indicating value "UserDistanceSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value CALLBACK_URL, + monitoredAddress indicating value MONITORED_IP_ADDRESS, + distance indicating value any_value, + trackingAccuracy indicating value any_value, + criteria indicating value any_value, + checkImmediate indicating value true;;; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.14.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "201 Created" + body containing + userDistanceSubscription containing + subscriptionType indicating value "UserDistanceSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value CALLBACK_URL, + _links indicating value LINKS, + monitoredAddress indicating value MONITORED_IP_ADDRESS, + distance indicating value any_value, + trackingAccuracy indicating value any_value, + criteria indicating value any_value, + checkImmediate indicating value true;;; + to the MEC_APP entity + // MEC 013, clause 7.14.3.4 + and the IUT entity sends a vPOST containing + Uri set to CALLBACK_URL + body containing + userDistanceNotification containing + subscriptionType indicating value "UserDistanceNotification", + monitoredUsers indicating value any_value, + distanceEvent indicating value any_value, + _links indicating value LINKS;;; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEDISTSUB_001_BR" + + Test objective + "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" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.4", + "ETSI GS MEC 013 3.1.1 Clause 6.3.9", + "ETSI GS MEC 013 3.1.1 Clause 6.4.9", + "ETSI GS MEC 013 3.1.1 Clause 7.14.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state + } + + // MEC 013, clause 5.3.10 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "location/v3/subscriptions/distance", + body containing + userDistanceSubscription containing + subscriptionType indicating value "UserDistanceSubscription", + clientCorrelator indicating value CLIENT_ID, + monitoredAddress indicating value MONITORED_IP_ADDRESS, + distance indicating value any_value, + trackingAccuracy indicating value any_value, + criteria indicating value any_value, + checkImmediate indicating value true;;; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.14.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } + } + } - /* - * UE Distance Subscribe (UEDISTSUB) - */ Test Purpose { - TP Id "TP_MEC_MEC013_SRV_UEDISTSUB_001_OK" - - Test objective - "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" - - Reference "ETSI GS MEC 013 2.1.1, clause 7.3.10" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state - } - - // MEC 013, clause 5.3.10 - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "location/v2/subscriptions/distance", - body containing - distanceNotificationSubscription containing - clientCorrelator indicating value CLIENT_ID, - callbackReference indicating value CALLBACK_URL, - monitoredAddress indicating value MONITORED_IP_ADDRESS, - referenceAddress indicating value IP_ADDRESS - ; - ; - ; - from the MEC_APP entity + TP Id "TP_MEC_MEC013_SRV_UEDISTSUB_002_OK" + + Test objective + "Check that the IUT acknowledges the cancellation of UE distance notifications + when commanded by a MEC Application" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.6", + "ETSI GS MEC 013 3.1.1 Clause 7.15.3.5" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a subscriptions containing + subscriptionId indicating value SUBSCRIPTION_ID; + } + + // MEC 013, clause 5.3.6 + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "location/v3/subscriptions/distance/{SUBSCRIPTION_ID}"; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.15.3.5 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "204 No Content"; + to the MEC_APP entity + } } - then { - // MEC 013, clause 7.3.10.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "201 Created" - body containing - distanceNotificationSubscription containing - clientCorrelator indicating value CLIENT_ID, - callbackReference indicating value CALLBACK_URL, - monitoredAddress indicating value MONITORED_IP_ADDRESS, - referenceAddress indicating value IP_ADDRESS - ; - ; - ; - to the MEC_APP entity - and - // MEC 013, clause 7.3.10.3 - the IUT entity sends a vPOST containing - Uri set to CALLBACK_URL - body containing - subscriptionNotification containing - terminalLocation containing - address set to IP_ADDRESS - ; - ; - ; - ; - to the MEC_APP entity - } - } - } + } Test Purpose { - TP Id "TP_MEC_MEC013_SRV_UEDISTSUB_001_BR" - - Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" - - Reference "ETSI GS MEC 013 2.1.1, clause 7.3.10" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state - } - - // MEC 013, clause 5.3.10 - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "location/v2/subscriptions/distance", - body containing - distanceNotificationSubscription containing - clientCorrelator indicating value CLIENT_ID, - callbackReference indicating value CALLBACK_URL, - monitoredAddress indicating value MONITORED_IP_ADDRESS, - // Wrong name should trigger an error response. - reference indicating value IP_ADDRESS - ; - ; - ; - from the MEC_APP entity - } - then { - // MEC 013, clause 7.3.10.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC013_SRV_UEDISTSUB_002_OK" - - Test objective - "Check that the IUT acknowledges the cancellation of UE distance notifications - when commanded by a MEC Application" - - Reference "ETSI GS MEC 013 2.1.1, clause 7.3.6" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a subscriptions containing - subscriptionId indicating value SUBSCRIPTION_ID - ; - } - - // MEC 013, clause 5.3.6 - Expected behaviour - ensure that { - when { - the IUT entity receives a vDELETE containing - uri indicating value "location/v2/subscriptions/distance/{SUBSCRIPTION_ID}" - ; - from the MEC_APP entity + TP Id "TP_MEC_MEC013_SRV_UEDISTSUB_002_NF" + + Test objective + "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" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.6", + "ETSI GS MEC 013 3.1.1 Clause 7.15.3.5" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity not having a subscriptions containing + subscriptionId indicating value NON_EXISTING_SUBSCRIPTION_ID + ; + } + + // MEC 013, clause 5.3.6 + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "location/v3/subscriptions/distance/{NON_EXISTING_SUBSCRIPTION_ID}"; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.15.3.5 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } } - then { - // MEC 013, clause 7.3.6.5 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "204 No Content" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC013_SRV_UEDISTSUB_002_NF" - - Test objective - "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" - - Reference "ETSI GS MEC 013 2.1.1, clause 7.3.6" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity not having a subscriptions containing - subscriptionId indicating value NON_EXISTING_SUBSCRIPTION_ID - ; - } - - // MEC 013, clause 5.3.6 - Expected behaviour - ensure that { - when { - the IUT entity receives a vDELETE containing - uri indicating value "location/v2/subscriptions/distance/{NON_EXISTING_SUBSCRIPTION_ID}" - ; - from the MEC_APP entity - } - then { - // MEC 013, clause 7.3.6.5 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; - to the MEC_APP entity - } - } - } + } + + } diff --git a/Test Purposes/MEC013/SRV/UEINFOLOOK/PlatUeInformationLookup.tplan2 b/Test Purposes/MEC013/SRV/UEINFOLOOK/PlatUeInformationLookup.tplan2 index 73d2f873740647e7290a05e0880e755c70e0a591..ebf8d3ddbc6427feb43eabbe2fb9a5975bc082f4 100644 --- a/Test Purposes/MEC013/SRV/UEINFOLOOK/PlatUeInformationLookup.tplan2 +++ b/Test Purposes/MEC013/SRV/UEINFOLOOK/PlatUeInformationLookup.tplan2 @@ -1,5 +1,5 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 201UEINFOLOOK8-2023. This software is subject to copyrights owned by ETSI. Non-exclusive permission is hereby granted, free of charge, to copy, reproduce and amend this file @@ -15,148 +15,279 @@ file and shall not imply any sub-license right. Package MEC_MEC013_SRV_UEINFLOOK { - import all from MEC_Common; - - - /* - * UE Information Lookup (UEINFOLOOK) - */ - - Test Purpose { - TP Id "TP_MEC_MEC013_SRV_UEINFLOOK_001_OK" - - Test objective - "Check that the IUT responds with the information pertaining to one or more UEs in a particular location - when queried by a MEC Application" - - Reference "ETSI GS MEC 013 2.1.1, clause 7.3.3", - "https://forge.etsi.org/gitlab/mec/gs013-location-api/blob/master/LocationAPI.yaml#/definitions/UserList" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a ue_location containing - address indicating value ACR_SOME_IP - ; - } - - - // MEC 013, clause 5.3.2 - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "location/v2/users", - query_parameters containing - address indicating value ACR_SOME_IP - ; - ; - from the MEC_APP entity + import all from MEC_Common; + + + /* + * UE Information Lookup () + */ + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEINFOLOOK_001_OK_01" + + Test objective + "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" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.2", + "ETSI GS MEC 013 3.1.1 Clause 6.2.2", + "ETSI GS MEC 013 3.1.1 Clause 6.2.5", + "ETSI GS MEC 013 3.1.1 Clause 7.4.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a ue_location containing + address indicating value ACR_SOME_IP; + } + + // MEC 013, clause 5.3.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/queries/users"; + from the MEC_APP entity + } then { + // MEC 013, clause 7.4.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + userList set to any_value;; + to the MEC_APP entity + } } - then { - // MEC 013, clause 7.3.3 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" - body containing - userList set to any_value - ; - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEINFOLOOK_001_OK_02" + + Test objective + "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" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.2", + "ETSI GS MEC 013 3.1.1 Clause 6.2.2", + "ETSI GS MEC 013 3.1.1 Clause 6.2.5", + "ETSI GS MEC 013 3.1.1 Clause 7.4.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a ue_location containing + address indicating value ACR_SOME_IP; + } + + // MEC 013, clause 5.3.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/queries/users", + query_parameters containing + address indicating value ACR_SOME_IP;; + from the MEC_APP entity + } then { + // MEC 013, clause 7.4.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + userList set to any_value;; + to the MEC_APP entity + } } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC013_SRV_UEINFLOOK_001_BR" - - Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" - - Reference "ETSI GS MEC 013 2.1.1, clause 7.3.3", - "https://forge.etsi.org/gitlab/mec/gs013-location-api/blob/master/LocationAPI.yaml#/definitions/UserList" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a ue_location containing - address indicating value ACR_SOME_IP - ; - } - - - // MEC 013, clause 5.3.2 - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "location/v2/users", - query_parameters containing - // Wrong name should trigger an error response. - addr indicating value ACR_SOME_IP - ; - ; - from the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEINFOLOOK_001_OK_03" + + Test objective + "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 several addresses" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.2", + "ETSI GS MEC 013 3.1.1 Clause 6.2.2", + "ETSI GS MEC 013 3.1.1 Clause 6.2.5", + "ETSI GS MEC 013 3.1.1 Clause 7.4.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a ue_location containing + address1 indicating value ACR_SOME_IP, + address2 indicating value ACR_IP_UE2, + address3 indicating value ACR_IP_UE3; + } + + // MEC 013, clause 5.3.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/queries/users", + query_parameters containing + address2 indicating value ACR_IP_UE2, + address3 indicating value ACR_IP_UE3;; + from the MEC_APP entity + } then { + // MEC 013, clause 7.4.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + userList containing + userLocation2, + userLocation3;;; + to the MEC_APP entity + } } - then { - // MEC 013, clause 7.3.3 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEINFOLOOK_001_OK_04" + + Test objective + "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 several zoneIds" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.2", + "ETSI GS MEC 013 3.1.1 Clause 6.2.2", + "ETSI GS MEC 013 3.1.1 Clause 6.2.5", + "ETSI GS MEC 013 3.1.1 Clause 7.4.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a ue_location containing + zoneId1 indicating value ZONE_ID1, + zoneId2 indicating value ZONE_ID2, + zoneId3 indicating value ZONE_ID3; + } + + // MEC 013, clause 5.3.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/queries/users", + query_parameters containing + zoneId1 indicating value ZONE_ID1, + zoneId3 indicating value ZONE_ID3;; + from the MEC_APP entity + } then { + // MEC 013, clause 7.4.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + userList containing + userLocation1, + userLocation3;;; + to the MEC_APP entity + } } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC013_SRV_UEINFLOOK_001_NF" - - Test objective - "Check that the IUT responds with an error when - a request for an unknown URI is sent by a MEC Application" - - Reference "ETSI GS MEC 013 2.1.1, clause 7.3.3", - "https://forge.etsi.org/gitlab/mec/gs013-location-api/blob/master/LocationAPI.yaml#/definitions/UserList" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a ue_location containing - address indicating value ACR_SOME_IP - ; - } - - - // MEC 013, clause 5.3.2 - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "location/v2/users", - query_parameters containing - address indicating value ACR_UNKNOWN_IP - ; - ; - from the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEINFOLOOK_001_BR" + + Test objective + "Check that the IUT responds with an error when + a request with incorrect parameters is sent by a MEC Application" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.2", + "ETSI GS MEC 013 3.1.1 Clause 6.2.2", + "ETSI GS MEC 013 3.1.1 Clause 6.2.5", + "ETSI GS MEC 013 3.1.1 Clause 7.4.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a ue_location containing + address indicating value ACR_SOME_IP; + } + + // MEC 013, clause 5.3.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/queries/users", + query_parameters containing + addr indicating value ACR_SOME_IP;; // Wrong name should trigger an error response. + from the MEC_APP entity + } + then { + // MEC 013, clause 7.4.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } } - then { - // MEC 013, clause 7.3.3 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEINFOLOOK_001_NF" + + Test objective + "Check that the IUT responds with an error when + a request for an unknown URI is sent by a MEC Application" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.2", + "ETSI GS MEC 013 3.1.1 Clause 6.2.2", + "ETSI GS MEC 013 3.1.1 Clause 6.2.5", + "ETSI GS MEC 013 3.1.1 Clause 7.4.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a ue_location containing + address indicating value ACR_SOME_IP; + } + + // MEC 013, clause 5.3.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/users", + query_parameters containing + address indicating value ACR_UNKNOWN_IP;; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.4.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } } - } - } + } } diff --git a/Test Purposes/MEC013/SRV/UEINFOSUB/PlatUeInformationSubscription.tplan2 b/Test Purposes/MEC013/SRV/UEINFOSUB/PlatUeInformationSubscription.tplan2 deleted file mode 100644 index c1ed9322e78d6ba371db2b212a8ae02f310c29b4..0000000000000000000000000000000000000000 --- a/Test Purposes/MEC013/SRV/UEINFOSUB/PlatUeInformationSubscription.tplan2 +++ /dev/null @@ -1,213 +0,0 @@ -/* -Copyright (c) ETSI 2018-2021. - -This software is subject to copyrights owned by ETSI. Non-exclusive permission -is hereby granted, free of charge, to copy, reproduce and amend this file -under the following conditions: It is provided "as is", without warranty of any -kind, expressed or implied. - -ETSI shall never be liable for any claim, damages, or other liability arising -from its use or inability of use.This permission does not apply to any documentation -associated with this file for which ETSI keeps all rights reserved. The present -copyright notice shall be included in all copies of whole or part of this -file and shall not imply any sub-license right. -*/ - -Package MEC_MEC013_SRV_UEINFOSUB { - - import all from MEC_Common; - - /* - * UE Information Subscription (UEINFOSUB) - */ - - Test Purpose { - TP Id "TP_MEC_MEC013_SRV_UEINFOSUB_001_OK" - - Test objective - "Check that the IUT acknowledges the UE information change subscription request - when commanded by a MEC Application and notifies it when the location changes" - - Reference "ETSI GS MEC 013 2.1.1, clause 7.3.5", - "https://forge.etsi.org/gitlab/mec/gs013-location-api/blob/master/LocationAPI.yaml#/definitions/zonalTrafficSubscription" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state - } - - // MEC 013, clause 5.3.5 - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "location/v2/subscriptions/zonalTraffic" - body containing - zonalTrafficSubscription containing - clientCorrelator indicating value CLIENT_ID, - callbackReference indicating value CALLBACK_URL, - zoneId indicating value ZONE_ID - ; - ; - ; - from the MEC_APP entity - } - then { - // MEC 013, clause 7.3.5.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "201 Created" - body containing - zonalTrafficSubscription containing - clientCorrelator indicating value CLIENT_ID, - callbackReference indicating value CALLBACK_URL, - zoneId indicating value ZONE_ID - ; - ; - ; - to the MEC_APP entity - and - // MEC 013, clause 7.3.5.3 - the IUT entity sends a vPOST containing - Uri set to CALLBACK_URL - body containing - zonalPresenceNotification containing - clientCorrelator set to CLIENT_ID, - zoneId indicating value ZONE_ID - ; - ; - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC013_SRV_UEINFOSUB_001_BR" - - Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" - - Reference "ETSI GS MEC 013 2.1.1, clause 7.3.5", - "https://forge.etsi.org/gitlab/mec/gs013-location-api/blob/master/LocationAPI.yaml#/definitions/zonalTrafficSubscription" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state - } - - // MEC 013, clause 5.3.5 - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "location/v2/subscriptions/zonalTraffic" - body containing - zonalTrafficSubscription containing - clientCorrelator indicating value CLIENT_ID, - callbackReference indicating value CALLBACK_URL, - // Wrong name should trigger an error response. - zone indicating value ZONE_ID - ; - ; - ; - from the MEC_APP entity - } - then { - // MEC 013, clause 7.3.5.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC013_SRV_UEINFOSUB_002_OK" - - Test objective - "Check that the IUT acknowledges the cancellation of UE information change notifications - when commanded by a MEC Application" - - Reference "ETSI GS MEC 013 2.1.1, clause 7.3.6" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a subscriptions containing - subscriptionId indicating value SUBSCRIPTION_ID - ; - } - - // MEC 013, clause 5.3.6 - Expected behaviour - ensure that { - when { - the IUT entity receives a vDELETE containing - uri indicating value "location/v2/subscriptions/zonalTraffic/{SUBSCRIPTION_ID}" - ; - from the MEC_APP entity - } - then { - // MEC 013, clause 7.3.6.3 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "204 No Content" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC013_SRV_UEINFOSUB_002_NF" - - Test objective - "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" - - Reference "ETSI GS MEC 013 2.1.1, clause 7.3.6" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity not having a subscriptions containing - subscriptionId indicating value NON_EXISTENT_SUBSCRIPTION_ID - ; - } - - // MEC 013, clause 5.3.6 - Expected behaviour - ensure that { - when { - the IUT entity receives a vDELETE containing - uri indicating value "location/v2/subscriptions/zonalTraffic/{NON_EXISTENT_SUBSCRIPTION_ID}" - ; - from the MEC_APP entity - } - then { - // MEC 013, clause 7.3.6.3 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; - to the MEC_APP entity - } - } - } -} diff --git a/Test Purposes/MEC013/SRV/UELOCLOOK/PlatUeLocationLookup.tplan2 b/Test Purposes/MEC013/SRV/UELOCLOOK/PlatUeLocationLookup.tplan2 index 7098f29e93188ba1edb357142cc46787d6604739..1702f9be7fb87a878dab2caafabc7662e29f2159 100644 --- a/Test Purposes/MEC013/SRV/UELOCLOOK/PlatUeLocationLookup.tplan2 +++ b/Test Purposes/MEC013/SRV/UELOCLOOK/PlatUeLocationLookup.tplan2 @@ -1,5 +1,5 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. This software is subject to copyrights owned by ETSI. Non-exclusive permission is hereby granted, free of charge, to copy, reproduce and amend this file @@ -15,146 +15,462 @@ file and shall not imply any sub-license right. Package MEC_MEC013_SRV_UELOCLOOK { - import all from MEC_Common; - - /* - * UE Location Lookup (UELOCLOOK) - */ - - Test Purpose { - TP Id "TP_MEC_MEC013_SRV_UELOCLOOK_001_OK" - - Test objective - "Check that the IUT responds with a list for the location of User Equipments - when queried by a MEC Application" - - Reference "ETSI GS MEC 013 2.1.1, clause 7.3.2", - "https://forge.etsi.org/gitlab/mec/gs013-location-api/blob/master/LocationAPI.yaml#/definitions/UserInfo" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a ue_location containing - zoneId indicating value ZONE_ID - ; - } - - // MEC 013, clause 5.3.2 - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "location/v2/users", - query_parameters containing - zoneId indicating value ZONE_ID - ; - ; - from the MEC_APP entity + import all from MEC_Common; + + /* + * UE Location Lookup (UELOCLOOK) + */ + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UELOCLOOK_001_OK" + + Test objective + "Check that the IUT responds with a list for the location of User Equipments + when queried by a MEC Application" + + Reference + "ETSI GS MEC 013 3.1.1, clause 5.3.2", + "ETSI GS MEC 013 3.1.1, clause 6.3.4", + "ETSI GS MEC 013 3.1.1, clause 7.5.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a ue_location containing + zoneId indicating value ZONE_ID + ; + } + + // MEC 013, clause 5.3.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/subscriptions/users"; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.5.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + notificationSubscriptionList;; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UELOCLOOK_002_OK_01" + + Test objective + "Check that the IUT responds with + the subscription when queried by a MEC Application - UE location Event" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.2", + "ETSI GS MEC 013 3.1.1 Clause 6.3.3", + "ETSI GS MEC 013 3.1.1 Clause 7.5.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a subscriptions containing + subscriptionType indicating value "UserLocationEventSubscription", + _links containing + self indicating value LINKS_SELF;, + subscriptionId indicating value SUBSCRIPTION_ID; and + the IUT entity having a subscriptions containing + subscriptionType indicating value "UserLocationPeriodicSubscription", + _links containing + self indicating value LINKS_SELF_1;, + subscriptionId indicating value SUBSCRIPTION_ID_1; + } + + // MEC 013, clause 5.3.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/subscriptions/users", + query_parameters containing + subscription_type indicating value "event";; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.5.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + notificationSubscriptionList containing + subscription containing + href indicating value any_value, + subscriptionType indicating value "UserLocationEventSubscription";, + resourceURL indicating value LINKS_SELF;;; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UELOCLOOK_002_OK_02" + + Test objective + "Check that the IUT responds with the subscription + when queried by a MEC Application - UE location Periodic" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.2", + "ETSI GS MEC 013 3.1.1 Clause 6.3.3", + "ETSI GS MEC 013 3.1.1 Clause 7.5.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a subscriptions containing + subscriptionType indicating value "UserLocationPeriodicSubscription", + _links containing + self indicating value LINKS_SELF;, + subscriptionId indicating value SUBSCRIPTION_ID; and + the IUT entity having a subscriptions containing + subscriptionType indicating value "UserLocationEventSubscription", + _links containing + self indicating value LINKS_SELF_1;, + subscriptionId indicating value SUBSCRIPTION_ID_1; + } + + // MEC 013, clause 5.3.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/subscriptions/users", + query_parameters containing + subscription_type indicating value "periodic";; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.5.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + notificationSubscriptionList containing + subscription containing + href indicating value any_value, + subscriptionType indicating value "UserLocationPeriodicSubscription";, + resourceURL indicating value LINKS_SELF;;; + to the MEC_APP entity + } } - then { - // MEC 013, clause 7.3.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" - body containing - userInfo containing - zoneId set to ZONE_ID - ; - ; - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UELOCLOOK_002_OK_03" + + Test objective + "Check that the IUT responds with the subscription + when queried by a MEC Application - UE location Event and address" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.2", + "ETSI GS MEC 013 3.1.1 Clause 6.3.3", + "ETSI GS MEC 013 3.1.1 Clause 7.5.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a subscriptions containing + subscriptionType indicating value "UserLocationPeriodicSubscription", + _links containing + self indicating value LINKS_SELF;, + subscriptionId indicating value SUBSCRIPTION_ID; and + the IUT entity having a subscriptions containing + subscriptionType indicating value "UserLocationEventSubscription", + _links containing + self indicating value LINKS_SELF_1;, + subscriptionId indicating value SUBSCRIPTION_ID_1; and + the IUT entity having a subscriptions containing + subscriptionType indicating value "UserLocationEventSubscription", + _links containing + self indicating value LINKS_SELF_2;, + subscriptionId indicating value SUBSCRIPTION_ID_2, + address indicating value ACR_SOME_IP; + } + + // MEC 013, clause 5.3.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/subscriptions/users", + query_parameters containing + subscription_type indicating value "event", + address indicating value ACR_SOME_IP;; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.5.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + notificationSubscriptionList containing + subscription containing + href indicating value any_value, + subscriptionType indicating value "UserLocationEventSubscription";, + resourceURL indicating value LINKS_SELF_2;;; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UELOCLOOK_002_BR" + + Test objective + "Check that the IUT responds with an error + when inconsistent request was sent by a MEC Application - Invalid filter" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.2", + "ETSI GS MEC 013 3.1.1 Clause 6.3.3", + "ETSI GS MEC 013 3.1.1 Clause 7.5.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a subscriptions containing + subscriptionType indicating value "UserLocationEventSubscription", + _links containing + self indicating value LINKS_SELF;, + subscriptionId indicating value SUBSCRIPTION_ID; and + the IUT entity having a subscriptions containing + subscriptionType indicating value "UserLocationPeriodicSubscription", + _links containing + self indicating value LINKS_SELF_1;, + subscriptionId indicating value SUBSCRIPTION_ID_1; + } + + // MEC 013, clause 5.3.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/subscriptions/users", + query_parameters containing + subscription_type indicating value "dummy";; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.5.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC013_SRV_UELOCLOOK_001_BR" - - Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" - - Reference "ETSI GS MEC 013 2.1.1, clause 7.3.2", - "https://forge.etsi.org/gitlab/mec/gs013-location-api/blob/master/LocationAPI.yaml#/definitions/UserInfo" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a ue_location containing - zoneId indicating value ZONE_ID - ; - } - - // MEC 013, clause 5.3.2 - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "location/v2/users", - query_parameters containing - // Wrong name should trigger an error response. - zone indicating value ZONE_ID - ; - ; - from the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UELOCLOOK_002_NF" + + Test objective + "Check that the IUT responds with an error + when inconsistent request was sent by a MEC Application" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.2", + "ETSI GS MEC 013 3.1.1 Clause 6.3.3", + "ETSI GS MEC 013 3.1.1 Clause 7.5.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity not having any subscriptions + } + + // MEC 013, clause 5.3.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/subscriptions/users"; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.5.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } } - then { - // MEC 013, clause 7.3.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UELOCLOOK_003_OK_01" + + Test objective + "Check that the IUT responds with the subscription + when queried by a MEC Application - UE location Event" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.2", + "ETSI GS MEC 013 3.1.1 Clause 6.3.3", + "ETSI GS MEC 013 3.1.1 Clause 6.3.4", + "ETSI GS MEC 013 3.1.1 Clause 6.4.4", + "ETSI GS MEC 013 3.1.1 Clause 7.6.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a subscriptions containing + subscriptionType indicating value "UserLocationEventSubscription", + subscriptionId indicating value SUBSCRIPTION_ID; + } + + // MEC 013, clause 5.3.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/subscriptions/users/{SUBSCRIPTION_ID}"; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.5.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + userLocationEventSubscription containing + subscriptionType indicating value "UserLocationEventSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value CALLBACK_URL, + _links indicating value LINKS, + address indicating value ACR_SOME_IP;;; + to the MEC_APP entity + } } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC013_SRV_UELOCLOOK_001_NF" - - Test objective - "Check that the IUT responds with an error when - a request for an unknown URI is sent by a MEC Application" - - Reference "ETSI GS MEC 013 2.1.1, clause 7.3.2", - "https://forge.etsi.org/gitlab/mec/gs013-location-api/blob/master/LocationAPI.yaml#/definitions/UserInfo" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity not having a ue_location containing - zoneId indicating value NON_EXISTENT_ZONE_ID - ; - } - - // MEC 013, clause 5.3.2 - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "location/v2/users", - query_parameters containing - zoneId indicating value NON_EXISTENT_ZONE_ID - ; - ; - from the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UELOCLOOK_003_OK_02" + + Test objective + "Check that the IUT responds with the subscription + when queried by a MEC Application - UE location Periodoc" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.2", + "ETSI GS MEC 013 3.1.1 Clause 6.3.3", + "ETSI GS MEC 013 3.1.1 Clause 6.3.5", + "ETSI GS MEC 013 3.1.1 Clause 6.4.5", + "ETSI GS MEC 013 3.1.1 Clause 7.6.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a subscriptions containing + subscriptionType indicating value "UserLocationPeriodicSubscription", + subscriptionId indicating value SUBSCRIPTION_ID; + } + + // MEC 013, clause 5.3.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/subscriptions/users/{SUBSCRIPTION_ID}"; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.5.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + userLocationEventSubscription containing + userLocationPeriodicSubscription containing + subscriptionType indicating value "UserLocationPeriodicSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value NEW_CALLBACK_URL, + _links indicating value LINKS, + address indicating value ACR_SOME_IP, + periodicEventInfo indicating value PERIODIC_EVENT_INFO;;;; + to the MEC_APP entity + } } - then { - // MEC 013, clause 7.3.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UELOCLOOK_003_NF" + + Test objective + "Check that the IUT responds with an error + when the non existing subscription is queried by a MEC Application" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.2", + "ETSI GS MEC 013 3.1.1 Clause 6.3.3", + "ETSI GS MEC 013 3.1.1 Clause 6.3.5", + "ETSI GS MEC 013 3.1.1 Clause 6.4.5", + "ETSI GS MEC 013 3.1.1 Clause 7.6.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a subscriptions containing + subscriptionType indicating value "UserLocationPeriodicSubscription", + subscriptionId indicating value SUBSCRIPTION_ID; + } + + // MEC 013, clause 5.3.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/subscriptions/users/{NON_EXISTING_SUBSCRIPTION_ID}"; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.5.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } } - } - } + } + + } diff --git a/Test Purposes/MEC013/SRV/UELOCSUB/PlatUeLocationSubscription.tplan2 b/Test Purposes/MEC013/SRV/UELOCSUB/PlatUeLocationSubscription.tplan2 index 34566e7d3a9e15c757264d6bde8e951fbde63614..dfe504e20a011f62cb7f21527fa2c4a35f4d7391 100644 --- a/Test Purposes/MEC013/SRV/UELOCSUB/PlatUeLocationSubscription.tplan2 +++ b/Test Purposes/MEC013/SRV/UELOCSUB/PlatUeLocationSubscription.tplan2 @@ -1,5 +1,5 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. This software is subject to copyrights owned by ETSI. Non-exclusive permission is hereby granted, free of charge, to copy, reproduce and amend this file @@ -15,200 +15,554 @@ file and shall not imply any sub-license right. Package MEC_MEC013_SRV_UELOCSUB { - import all from MEC_Common; - - /* - * UE Location Subscription (UELOCSUB) - */ - - Test Purpose { - TP Id "TP_MEC_MEC013_SRV_UELOCSUB_001_OK" - - Test objective - "Check that the IUT acknowledges the UE location change subscription request - when commanded by a MEC Application and notifies it when the location changes" - - Reference "ETSI GS MEC 013 2.1.1, clause 7.3.4", - "https://forge.etsi.org/gitlab/mec/gs013-location-api/blob/master/LocationAPI.yaml#/definitions/UserTrackingSubscription" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state - } - - // MEC 013, clause 5.3.4 - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "location/v2/subscriptions/userTracking" - body containing - userTrackingSubscription containing - clientCorrelator indicating value CLIENT_ID, - callbackReference indicating value CALLBACK_URL, - address indicating value IP_ADDRESS - ; - ; - ; - from the MEC_APP entity + import all from MEC_Common; + + /* + * UE Information Subscription (UELOCSUB) + */ + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UELOCSUB_001_OK_01" + + Test objective + "Check that the IUT acknowledges the subscription + by a MEC Application to notifications user location event" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.4", + "ETSI GS MEC 013 3.1.1 Clause 6.3.4", + "ETSI GS MEC 013 3.1.1 Clause 6.4.4", + "ETSI GS MEC 013 3.1.1 Clause 7.5.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state + } + + // MEC 013, clause 5.3.4 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "location/v3/subscriptions/users" + body containing + userLocationEventSubscription containing + subscriptionType indicating value "UserLocationEventSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value CALLBACK_URL, + address indicating value ACR_SOME_IP;;; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.5.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "201 Created" + body containing + userLocationEventSubscription containing + subscriptionType indicating value "UserLocationEventSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value CALLBACK_URL, + _links indicating value LINKS, + address indicating value ACR_SOME_IP;;; + to the MEC_APP entity + // MEC 013, clause 5.3.4 + and the IUT entity sends a vPOST containing + Uri set to CALLBACK_URL + body containing + userLocationEventNotification containing + notificationType indicating value "UserLocationEventNotification", + address indicating value ACR_SOME_IP, + userLocationEvent indicating value any_value, + zoneId indicating value ZONE_ID, + _links indicating value LINKS;;; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UELOCSUB_001_OK_02" + + Test objective + "Check that the IUT acknowledges the subscription + by a MEC Application to notifications user location periodic" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.4", + "ETSI GS MEC 013 3.1.1 Clause 6.3.5", + "ETSI GS MEC 013 3.1.1 Clause 6.4.5", + "ETSI GS MEC 013 3.1.1 Clause 7.5.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state + } + + // MEC 013, clause 5.3.4 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "location/v3/subscriptions/users" + body containing + userLocationPeriodicSubscription containing + subscriptionType indicating value "UserLocationPeriodicSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value CALLBACK_URL, + address indicating value ACR_SOME_IP, + periodicEventInfo indicating value PERIODIC_EVENT_INFO;;; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.5.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "201 Created" + body containing + userLocationPeriodicSubscription containing + subscriptionType indicating value "UserLocationPeriodicSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value CALLBACK_URL, + _links indicating value LINKS, + address indicating value ACR_SOME_IP, + periodicEventInfo indicating value PERIODIC_EVENT_INFO;;; + to the MEC_APP entity + // MEC 013, clause 5.3.4 + and the IUT entity sends a vPOST containing + Uri set to CALLBACK_URL + body containing + userLocationPeriodicNotification containing + notificationType indicating value "UserLocationPeriodicNotification", + address indicating value ACR_SOME_IP, + result indicating value SUCCESS, + _links indicating value LINKS, + locationInfo indicating value any_value, + zoneId indicating value ZONE_ID, + _links indicating value LINKS;;; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UELOCSUB_001_BR_01" + + Test objective + "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" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.4", + "ETSI GS MEC 013 3.1.1 Clause 6.3.4", + "ETSI GS MEC 013 3.1.1 Clause 6.4.4", + "ETSI GS MEC 013 3.1.1 Clause 7.5.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state + } + + // MEC 013, clause 5.3.5 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "location/v3/subscriptions/users" + body containing + userLocationEventSubscription containing + subscriptionType indicating value "UserLocationEventSubscription", + clientCorrelator indicating value CLIENT_ID, + address indicating value ACR_SOME_IP;;; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.5.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } } - then { - // MEC 013, clause 7.3.4.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "201 Created" - body containing - userTrackingSubscription containing - clientCorrelator indicating value CLIENT_ID, - callbackReference indicating value CALLBACK_URL, - address indicating value IP_ADDRESS - ; - ; - ; - to the MEC_APP entity - and - // MEC 013, clause 7.3.4.3 - the IUT entity sends a vPOST containing - Uri set to CALLBACK_URL - body containing - zonalPresenceNotification containing - clientCorrelator set to CLIENT_ID, - address set to IP_ADDRESS - ; - ; - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UELOCSUB_001_BR_02" + + Test objective + "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" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.4", + "ETSI GS MEC 013 3.1.1 Clause 6.3.5", + "ETSI GS MEC 013 3.1.1 Clause 6.4.5", + "ETSI GS MEC 013 3.1.1 Clause 7.5.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state + } + + // MEC 013, clause 5.3.5 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "location/v3/subscriptions/users" + body containing + userLocationPeriodicSubscription containing + subscriptionType indicating value "UserLocationPeriodicSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value CALLBACK_URL, + address indicating value ACR_SOME_IP, + periodicEventInfo indicating value PERIODIC_EVENT_INFO;;; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.5.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC013_SRV_UELOCSUB_001_BR" - - Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" - - Reference "ETSI GS MEC 013 2.1.1, clause 7.3.4", - "https://forge.etsi.org/gitlab/mec/gs013-location-api/blob/master/LocationAPI.yaml#/definitions/UserTrackingSubscription" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state - } - - // MEC 013, clause 5.3.4 - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "location/v2/subscriptions/userTracking" - body containing - userTrackingSubscription containing - // Wrong name should trigger an error response. - client indicating value CLIENT_ID, - callbackReference indicating value CALLBACK_URL, - address indicating value IP_ADDRESS - ; - ; - ; - from the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UELOCSUB_002_OK" + + Test objective + "Check that the IUT acknowledges the cancellation of UE information change notifications + when commanded by a MEC Application" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.6", + "ETSI GS MEC 013 3.1.1 Clause 7.6.3.5" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a subscriptions containing + subscriptionId indicating value SUBSCRIPTION_ID; + } + + // MEC 013, clause 5.3.6 + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "location/v3/subscriptions/users/{SUBSCRIPTION_ID}"; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.6.3.5 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "204 No Content"; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UELOCSUB_002_NF" + + Test objective + "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" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.6", + "ETSI GS MEC 013 3.1.1 Clause 7.6.3.5" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity not having a subscriptions containing + subscriptionId indicating value NON_EXISTENT_SUBSCRIPTION_ID; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "location/v3/subscriptions/users/{NON_EXISTENT_SUBSCRIPTION_ID}"; + from the MEC_APP entity + } then { + // MEC 013, clause 7.3.6.3 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } } - then { - // MEC 013, clause 7.3.4.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UELOCSUB_003_OK_01" + + Test objective + "Check that the IUT acknowledges a request to modify an existing subscription + by a MEC Application" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 6.3.4", + "ETSI GS MEC 013 3.1.1 Clause 6.4.4", + "ETSI GS MEC 013 3.1.1 Clause 7.6.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a subscriptions containing + subscriptionType indicating value "UserLocationEventSubscription", + subscriptionId indicating value SUBSCRIPTION_ID; + } + + // MEC 013, clause 5.3.4 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "location/v3/subscriptions/users/{SUBSCRIPTION_ID}" + body containing + userLocationEventSubscription containing + subscriptionType indicating value "UserLocationEventSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value NEW_CALLBACK_URL, + address indicating value ACR_SOME_IP;;; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.6.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + userLocationEventSubscription containing + subscriptionType indicating value "UserLocationEventSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value NEW_CALLBACK_URL, + _links indicating value LINKS, + address indicating value ACR_SOME_IP;;; + to the MEC_APP entity + } } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC013_SRV_UELOCSUB_002_OK" - - Test objective - "Check that the IUT acknowledges the cancellation of UE location change notifications - when commanded by a MEC Application" - - Reference "ETSI GS MEC 013 2.1.1, clause 7.3.6" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a subscriptions containing - subscriptionId indicating value SUBSCRIPTION_ID - ; - } - - // MEC 013, clause 5.3.6 - Expected behaviour - ensure that { - when { - the IUT entity receives a vDELETE containing - uri indicating value "location/v2/subscriptions/userTracking/{SUBSCRIPTION_ID}" - ; - from the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UELOCSUB_003_OK_02" + + Test objective + "Check that the IUT acknowledges a request to modify an existing subscription + by a MEC Application" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.4", + "ETSI GS MEC 013 3.1.1 Clause 6.3.5", + "ETSI GS MEC 013 3.1.1 Clause 6.4.5", + "ETSI GS MEC 013 3.1.1 Clause 7.6.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a subscriptions containing + subscriptionType indicating value "UserLocationPeriodicSubscription", + subscriptionId indicating value SUBSCRIPTION_ID; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "location/v3/subscriptions/users" + body containing + userLocationPeriodicSubscription containing + subscriptionType indicating value "UserLocationPeriodicSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value NEW_CALLBACK_URL, + address indicating value ACR_SOME_IP, + periodicEventInfo indicating value PERIODIC_EVENT_INFO;;; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.6.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "201 Created" + body containing + userLocationPeriodicSubscription containing + subscriptionType indicating value "UserLocationPeriodicSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value NEW_CALLBACK_URL, + _links indicating value LINKS, + address indicating value ACR_SOME_IP, + periodicEventInfo indicating value PERIODIC_EVENT_INFO;;; + to the MEC_APP entity + } } - then { - // MEC 013, clause 7.3.6.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "204 No Content" - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UELOCSUB_003_BR_01" + + Test objective + "Check that the IUT responds with an error + when received an inconsistent request" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 6.3.4", + "ETSI GS MEC 013 3.1.1 Clause 6.4.4", + "ETSI GS MEC 013 3.1.1 Clause 7.6.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a subscriptions containing + subscriptionType indicating value "UserLocationEventSubscription", + subscriptionId indicating value SUBSCRIPTION_ID; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "location/v3/subscriptions/users" + body containing + userLocationPeriodicSubscription containing + subscriptionType indicating value "UserLocationPeriodicSubscription", + clientCorrelator indicating value CLIENT_ID, + address indicating value ACR_SOME_IP, + periodicEventInfo indicating value PERIODIC_EVENT_INFO;;; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.6.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC013_SRV_UELOCSUB_002_NF" - - Test objective - "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" - - Reference "ETSI GS MEC 013 2.1.1, clause 7.3.6" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity not having a subscriptions containing - subscriptionId indicating value NON_EXISTENT_SUBSCRIPTION_ID - ; - } - - // MEC 013, clause 5.3.6 - Expected behaviour - ensure that { - when { - the IUT entity receives a vDELETE containing - uri indicating value "location/v2/subscriptions/userTracking/{NON_EXISTENT_SUBSCRIPTION_ID}" - ; - from the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UELOCSUB_003_BR_02" + + Test objective + "Check that the IUT responds with an error + when received an inconsistent request" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 6.3.4", + "ETSI GS MEC 013 3.1.1 Clause 6.4.4", + "ETSI GS MEC 013 3.1.1 Clause 7.6.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a subscriptions containing + subscriptionType indicating value "UserLocationPeriodicSubscription", + subscriptionId indicating value SUBSCRIPTION_ID; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "location/v3/subscriptions/users/{SUBSCRIPTION_ID}" + body containing + userLocationEventSubscription containing + subscriptionType indicating value "UserLocationEventSubscription", + clientCorrelator indicating value CLIENT_ID, + address indicating value ACR_SOME_IP;;; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.6.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } } - then { - // MEC 013, clause 7.3.6.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UELOCSUB_003_NF" + + Test objective + "Check that the IUT acknowledges a request to modify a not existing subscription + by a MEC Application" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 6.3.4", + "ETSI GS MEC 013 3.1.1 Clause 6.4.4", + "ETSI GS MEC 013 3.1.1 Clause 7.6.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a subscriptions containing + subscriptionType indicating value "UserLocationEventSubscription", + subscriptionId indicating value SUBSCRIPTION_ID; + } + + // MEC 013, clause 5.3.6 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "location/v3/subscriptions/users/{NON_EXISTENT_SUBSCRIPTION_ID}" + body containing + userLocationEventSubscription containing + subscriptionType indicating value "UserLocationEventSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value NEW_CALLBACK_URL, + address indicating value ACR_SOME_IP;;; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.6.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } } - } - } + } + } diff --git a/Test Purposes/MEC013/SRV/UETESTNOT/PlatUeTestSubscription.tplan2 b/Test Purposes/MEC013/SRV/UETESTNOT/PlatUeTestSubscription.tplan2 new file mode 100644 index 0000000000000000000000000000000000000000..c6fc77ed5686bdda77532e734681487efd7ddf40 --- /dev/null +++ b/Test Purposes/MEC013/SRV/UETESTNOT/PlatUeTestSubscription.tplan2 @@ -0,0 +1,153 @@ +/* +Copyright (c) ETSI 2018-2023. + +This software is subject to copyrights owned by ETSI. Non-exclusive permission +is hereby granted, free of charge, to copy, reproduce and amend this file +under the following conditions: It is provided "as is", without warranty of any +kind, expressed or implied. + +ETSI shall never be liable for any claim, damages, or other liability arising +from its use or inability of use.This permission does not apply to any documentation +associated with this file for which ETSI keeps all rights reserved. The present +copyright notice shall be included in all copies of whole or part of this +file and shall not imply any sub-license right. +*/ + +Package MEC_MEC013_SRV_UETESTNOT { + + import all from MEC_Common; + + /* + * UE Information Subscription (UETESTNOT) + */ + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UETESTNOT_001_OK" + + Test objective + "Check that the IUT provides a test notification + when requested by a MEC Application" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.4", + "ETSI GS MEC 013 3.1.1 Clause 6.3.4", + "ETSI GS MEC 013 3.1.1 Clause 6.4.3", + "ETSI GS MEC 013 3.1.1 Clause 7.5.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state + } + + // MEC 013, clause 5.3.4 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "location/v3/subscriptions/users" + body containing + userLocationEventSubscription containing + subscriptionType indicating value "UserLocationEventSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value CALLBACK_URL, + requestTestNotification indicating value true, + address indicating value ACR_SOME_IP;;; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.5.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "201 Created" + body containing + userLocationEventSubscription containing + subscriptionType indicating value "UserLocationEventSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value CALLBACK_URL, + _links indicating value LINKS, + address indicating value ACR_SOME_IP;;; + to the MEC_APP entity + // MEC 013, clause 5.3.4 + and the IUT entity sends a vPOST containing + Uri set to CALLBACK_URL + body containing + testNotification containing + notificationType indicating value "TestNotification", + _links indicating value LINKS;;; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UETESTNOT_002_OK" + + Test objective + "Check that the IUT terminates notifications after time expiration" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.11", + "ETSI GS MEC 013 3.1.1 Clause 6.3.8", + "ETSI GS MEC 013 3.1.1 Clause 6.4.8", + "ETSI GS MEC 013 3.1.1 Clause 7.16.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state + } + + // MEC 013, clause 5.3.11 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "location/v3/subscriptions/area" + body containing + userAreaSubscription containing + subscriptionType indicating value "UserAreaSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value CALLBACK_URL, + areaDefine indicating value AREA, + addressList containing + address indicating value ACR_SOME_IP;, + trackingAccuracy indicating value TRACKING_ACCURACY_THRESHOLD, + expiryDeadline indicating value EXPIRY_DEADLINE;;; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.16.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "201 Created" + body containing + userAreaSubscription containing + subscriptionType indicating value "UserAreaSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value CALLBACK_URL, + _links indicating value LINKS, + areaDefine indicating value AREA, + addressList containing + address indicating value ACR_SOME_IP;, + trackingAccuracy indicating value TRACKING_ACCURACY_THRESHOLD, + expiryDeadline indicating value EXPIRY_DEADLINE;;; + to the MEC_APP entity + // MEC 013, clause 5.3.4 + and the IUT entity sends a vPOST containing + Uri set to CALLBACK_URL + body containing + userAreaNotification containing + notificationType indicating value "UserAreaNotification", + address indicating value ACR_SOME_IP, + userLocationEvent indicating value any_value, + _links indicating value LINKS;;; + to the MEC_APP entity + and the IUT entity not sends a vPOST after expiry_notification_event + } + } + } +} \ No newline at end of file diff --git a/Test Purposes/MEC013/SRV/UETRACKSUB/PlatUeTrackingSubscription.tplan2 b/Test Purposes/MEC013/SRV/UETRACKSUB/PlatUeTrackingSubscription.tplan2 deleted file mode 100644 index 8542f02c020fce887c6d8f65ce81b5862dfedd38..0000000000000000000000000000000000000000 --- a/Test Purposes/MEC013/SRV/UETRACKSUB/PlatUeTrackingSubscription.tplan2 +++ /dev/null @@ -1,214 +0,0 @@ -/* -Copyright (c) ETSI 2018-2021. - -This software is subject to copyrights owned by ETSI. Non-exclusive permission -is hereby granted, free of charge, to copy, reproduce and amend this file -under the following conditions: It is provided "as is", without warranty of any -kind, expressed or implied. - -ETSI shall never be liable for any claim, damages, or other liability arising -from its use or inability of use.This permission does not apply to any documentation -associated with this file for which ETSI keeps all rights reserved. The present -copyright notice shall be included in all copies of whole or part of this -file and shall not imply any sub-license right. -*/ - -Package MEC_MEC013_SRV_UETRACKSUB { - - import all from MEC_Common; - - - /* - * UE Tracking Subscribe (UETRACKSUB) - */ - - - Test Purpose { - TP Id "TP_MEC_MEC013_SRV_UETRACKSUB_001_OK" - - Test objective - "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" - - Reference "ETSI GS MEC 013 2.1.1, clause 7.3.4" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state - } - - // MEC 013, clause 5.3.8 - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "location/v2/subscriptions/periodic" - body containing - periodicNotificationSubscription containing - clientCorrelator indicating value CLIENT_ID, - callbackReference indicating value CALLBACK_URL, - address indicating value IP_ADDRESS - ; - ; - ; - from the MEC_APP entity - } - then { - // MEC 013, clause 7.3.8.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "201 Created" - body containing - periodicNotificationSubscription containing - clientCorrelator indicating value CLIENT_ID, - callbackReference indicating value CALLBACK_URL, - address indicating value IP_ADDRESS - ; - ; - ; - to the MEC_APP entity - and - // MEC 013, clause 7.3.8.3 - the IUT entity sends a vPOST containing - uri indicating value CALLBACK_URL - body containing - subscriptionNotification containing - terminalLocation containing - address set to IP_ADDRESS - ; - ; - ; - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC013_SRV_UETRACKSUB_001_BR" - - Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" - - Reference "ETSI GS MEC 013 2.1.1, clause 7.3.4" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state - } - - // MEC 013, clause 5.3.8 - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "location/v2/subscriptions/periodic" - body containing - periodicNotificationSubscription containing - // Wrong name should trigger an error response. - client indicating value CLIENT_ID, - callbackReference indicating value CALLBACK_URL, - address indicating value IP_ADDRESS - ; - ; - ; - from the MEC_APP entity - } - then { - // MEC 013, clause 7.3.8.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC013_SRV_UETRACKSUB_002_OK" - - Test objective - "Check that the IUT acknowledges the cancellation of UE tracking notifications - when commanded by a MEC Application" - - Reference "ETSI GS MEC 013 2.1.1, clause 7.3.6" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a subscriptions containing - subscriptionId indicating value SUBSCRIPTION_ID - ; - } - - // MEC 013, clause 5.3.6 - Expected behaviour - ensure that { - when { - the IUT entity receives a vDELETE containing - uri indicating value "location/v2/subscriptions/periodic/{SUBSCRIPTION_ID}" - ; - from the MEC_APP entity - } - then { - // MEC 013, clause 7.3.6.4 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "204 No Content" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC013_SRV_UETRACKSUB_002_NF" - - Test objective - "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" - - Reference "ETSI GS MEC 013 2.1.1, clause 7.3.6" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity not having a subscriptions containing - subscriptionId indicating value NON_EXISTENT_SUBSCRIPTION_ID - ; - } - - // MEC 013, clause 5.3.6 - Expected behaviour - ensure that { - when { - the IUT entity receives a vDELETE containing - uri indicating value "location/v2/subscriptions/periodic/{NON_EXISTENT_SUBSCRIPTION_ID}" - ; - from the MEC_APP entity - } - then { - // MEC 013, clause 7.3.6.4 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; - to the MEC_APP entity - } - } - } -} diff --git a/Test Purposes/MEC013/SRV/UEZONELOOK/PlatUeZoneLookup.tplan2 b/Test Purposes/MEC013/SRV/UEZONELOOK/PlatUeZoneLookup.tplan2 new file mode 100644 index 0000000000000000000000000000000000000000..65c42e02d6c7f9f30480de64872208c787e804b7 --- /dev/null +++ b/Test Purposes/MEC013/SRV/UEZONELOOK/PlatUeZoneLookup.tplan2 @@ -0,0 +1,480 @@ +/* +Copyright (c) ETSI 2018-2023. + +This software is subject to copyrights owned by ETSI. Non-exclusive permission +is hereby granted, free of charge, to copy, reproduce and amend this file +under the following conditions: It is provided "as is", without warranty of any +kind, expressed or implied. + +ETSI shall never be liable for any claim, damages, or other liability arising +from its use or inability of use.This permission does not apply to any documentation +associated with this file for which ETSI keeps all rights reserved. The present +copyright notice shall be included in all copies of whole or part of this +file and shall not imply any sub-license right. +*/ + +Package MEC_MEC013_SRV_UEZONELOOK { + + import all from MEC_Common; + + + /* + * UE Area Subscribe (UEZONELOOK) + */ + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEZONELOOK_001_OK" + + Test objective + "Check that the IUT responds with a list zones + when queried by a MEC Application" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.2", + "ETSI GS MEC 013 3.1.1 Clause 6.3.6", + "ETSI GS MEC 013 3.1.1 Clause 7.11.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a ue_location containing + zoneId indicating value ZONE_ID; + } + + // MEC 013, clause 5.3.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/subscriptions/zones"; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.11.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + notificationSubscriptionList;; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEZONELOOK_002_OK_01" + + Test objective + "Check that the IUT responds with the subscription + when queried by a MEC Application - Zone location Event" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.11", + "ETSI GS MEC 013 3.1.1 Clause 6.3.6", + "ETSI GS MEC 013 3.1.1 Clause 7.11.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a subscriptions containing + subscriptionType indicating value "ZoneLocationEventSubscription", + _links containing + self indicating value LINKS_SELF;, + subscriptionId indicating value SUBSCRIPTION_ID; and + the IUT entity having a subscriptions containing + subscriptionType indicating value "ZoneStatusSubscription", + _links containing + self indicating value LINKS_SELF_1;, + subscriptionId indicating value SUBSCRIPTION_ID_1; + } + + // MEC 013, clause 5.3.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/subscriptions/zones", + query_parameters containing + subscription_type indicating value "event";; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.5.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + notificationSubscriptionList containing + subscription containing + href indicating value any_value, + subscriptionType indicating value "ZoneLocationEventSubscription";, + resourceURL indicating value LINKS_SELF;;; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEZONELOOK_002_OK_02" + + Test objective + "Check that the IUT responds with the subscription + when queried by a MEC Application - Zone Status" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.11", + "ETSI GS MEC 013 3.1.1 Clause 6.3.7", + "ETSI GS MEC 013 3.1.1 Clause 7.11.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a subscriptions containing + subscriptionType indicating value "ZoneStatusSubscription", + _links containing + self indicating value LINKS_SELF;, + subscriptionId indicating value SUBSCRIPTION_ID; and + the IUT entity having a subscriptions containing + subscriptionType indicating value "ZoneLocationEventSubscription", + _links containing + self indicating value LINKS_SELF_1;, + subscriptionId indicating value SUBSCRIPTION_ID_1; + } + + // MEC 013, clause 5.3.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/subscriptions/zones", + query_parameters containing + subscription_type indicating value "status";; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.5.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + notificationSubscriptionList containing + subscription containing + href indicating value any_value, + subscriptionType indicating value "ZoneStatusSubscription";, + resourceURL indicating value LINKS_SELF;;; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEZONELOOK_002_OK_03" + + Test objective + "Check that the IUT responds with the subscription + when queried by a MEC Application - UE location Event and address" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.2", + "ETSI GS MEC 013 3.1.1 Clause 6.3.7", + "ETSI GS MEC 013 3.1.1 Clause 7.11.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a subscriptions containing + subscriptionType indicating value "ZoneLocationEventSubscription", + _links containing + self indicating value LINKS_SELF;, + subscriptionId indicating value SUBSCRIPTION_ID; and + the IUT entity having a subscriptions containing + subscriptionType indicating value "ZoneLocationEventSubscription", + _links containing + self indicating value LINKS_SELF_1;, + subscriptionId indicating value SUBSCRIPTION_ID_1; and + the IUT entity having a subscriptions containing + subscriptionType indicating value "ZoneLocationEventSubscription", + _links containing + self indicating value LINKS_SELF_2;, + subscriptionId indicating value SUBSCRIPTION_ID_2, + address indicating value ACR_SOME_IP; + } + + // MEC 013, clause 5.3.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/subscriptions/zones", + query_parameters containing + subscription_type indicating value "event", + address indicating value ACR_SOME_IP;; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.11.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + notificationSubscriptionList containing + subscription containing + href indicating value any_value, + subscriptionType indicating value "ZoneLocationEventSubscription";, + resourceURL indicating value LINKS_SELF_2;;; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEZONELOOK_002_BR" + + Test objective + "Check that the IUT responds with an error + when inconsistent request was sent by a MEC Application - Invalid filter" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.2", + "ETSI GS MEC 013 3.1.1 Clause 6.3.3", + "ETSI GS MEC 013 3.1.1 Clause 7.11.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a subscriptions containing + subscriptionType indicating value "ZoneLocationEventSubscription", + _links containing + self indicating value LINKS_SELF;, + subscriptionId indicating value SUBSCRIPTION_ID; and + the IUT entity having a subscriptions containing + subscriptionType indicating value "ZoneLocationEventSubscription", + _links containing + self indicating value LINKS_SELF_1;, + subscriptionId indicating value SUBSCRIPTION_ID_1; + } + + // MEC 013, clause 5.3.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/subscriptions/zones", + query_parameters containing + subscription_type indicating value "dummy";; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.11.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEZONELOOK_002_NF" + + Test objective + "Check that the IUT responds with an error + when inconsistent request was sent by a MEC Application" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.2", + "ETSI GS MEC 013 3.1.1 Clause 6.3.3", + "ETSI GS MEC 013 3.1.1 Clause 7.11.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity not having any subscriptions + } + + // MEC 013, clause 5.3.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/subscriptions/zones"; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.11.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEZONELOOK_003_OK_01" + + Test objective + "Check that the IUT responds with the subscription + when queried by a MEC Application - Zone location Event" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.11", + "ETSI GS MEC 013 3.1.1 Clause 6.3.6", + "ETSI GS MEC 013 3.1.1 Clause 7.12.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a subscriptions containing + subscriptionType indicating value "ZoneLocationEventSubscription", + _links containing + self indicating value LINKS_SELF;, + subscriptionId indicating value SUBSCRIPTION_ID; and + the IUT entity having a subscriptions containing + subscriptionType indicating value "ZoneStatusSubscription", + _links containing + self indicating value LINKS_SELF_1;, + subscriptionId indicating value SUBSCRIPTION_ID_1; + } + + // MEC 013, clause 5.3.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/subscriptions/zones/{SUBSCRIPTION_ID}", + query_parameters containing + subscription_type indicating value "event";; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.12.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + zoneStatusSubscription containing + subscriptionType indicating value "ZoneLocationEventSubscription", + _links containing + self indicating value LINKS_SELF;;;; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEZONELOOK_003_OK_02" + + Test objective + "Check that the IUT responds with the subscription + when queried by a MEC Application - Zone status Event" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.11", + "ETSI GS MEC 013 3.1.1 Clause 6.3.7", + "ETSI GS MEC 013 3.1.1 Clause 7.12.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a subscriptions containing + subscriptionType indicating value "ZoneStatusSubscription", + _links containing + self indicating value LINKS_SELF;, + subscriptionId indicating value SUBSCRIPTION_ID; and + the IUT entity having a subscriptions containing + subscriptionType indicating value "ZoneLocationEventSubscription", + _links containing + self indicating value LINKS_SELF_1;, + subscriptionId indicating value SUBSCRIPTION_ID_1; + } + + // MEC 013, clause 5.3.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/subscriptions/zones/{SUBSCRIPTION_ID}", + query_parameters containing + subscription_type indicating value "event";; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.12.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + zoneStatusSubscription containing + subscriptionType indicating value "ZoneStatusSubscription", + _links containing + self indicating value LINKS_SELF;;;; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEZONELOOK_003_NF" + + Test objective + "Check that the IUT responds with an error + when the non existing subscription is queried by a MEC Application" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 7.12.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a subscriptions containing + subscriptionType indicating value "ZoneLocationEventSubscription", + subscriptionId indicating value SUBSCRIPTION_ID; + } + + // MEC 013, clause 5.3.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "location/v3/subscriptions/zones/{NON_EXISTING_SUBSCRIPTION_ID}"; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.12.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } + } + } + + +} diff --git a/Test Purposes/MEC013/SRV/UEZONESUB/PlatUeZoneSubscription.tplan2 b/Test Purposes/MEC013/SRV/UEZONESUB/PlatUeZoneSubscription.tplan2 new file mode 100644 index 0000000000000000000000000000000000000000..02669915c7c7644863d43e416538f513cd975952 --- /dev/null +++ b/Test Purposes/MEC013/SRV/UEZONESUB/PlatUeZoneSubscription.tplan2 @@ -0,0 +1,517 @@ +/* +Copyright (c) ETSI 2018-2023. + +This software is subject to copyrights owned by ETSI. Non-exclusive permission +is hereby granted, free of charge, to copy, reproduce and amend this file +under the following conditions: It is provided "as is", without warranty of any +kind, expressed or implied. + +ETSI shall never be liable for any claim, damages, or other liability arising +from its use or inability of use.This permission does not apply to any documentation +associated with this file for which ETSI keeps all rights reserved. The present +copyright notice shall be included in all copies of whole or part of this +file and shall not imply any sub-license right. +*/ + +Package MEC_MEC013_SRV_UEZONESUB { + + import all from MEC_Common; + + + /* + * UE Area Subscribe (UEZONESUB) + */ + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEZONESUB_001_OK" + + Test objective + "Check that the IUT acknowledges the creation of UE zone subscription request + when commanded by a MEC Application" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.11", + "ETSI GS MEC 013 3.1.1 Clause 6.3.6", + "ETSI GS MEC 013 3.1.1 Clause 6.4.6", + "ETSI GS MEC 013 3.1.1 Clause 7.11.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state + } + + // MEC 013, clause 5.3.11 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "location/v3/subscriptions/zones" + body containing + zoneLocationEventSubscription containing + subscriptionType indicating value "ZoneLocationEventSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value CALLBACK_URL, + zoneId indicating value ZONE_ID, + addressList containing + address indicating value ACR_SOME_IP;;;; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.11.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "201 Created" + body containing + zoneLocationEventSubscription containing + subscriptionType indicating value "ZoneLocationEventSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value CALLBACK_URL, + _links indicating value LINKS, + zoneId indicating value ZONE_ID, + addressList containing + address indicating value ACR_SOME_IP;;;; + to the MEC_APP entity + // MEC 013, clause 5.3.4 + and the IUT entity sends a vPOST containing + Uri set to CALLBACK_URL + body containing + zoneLocationEventNotification containing + notificationType indicating value "ZoneLocationEventNotification", + address indicating value ACR_SOME_IP, + userLocationEvent indicating value any_value, + _links indicating value LINKS, + zoneId indicating value ZONE_ID;;; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEZONESUB_001_OK_02_01" + + Test objective + "Check that the IUT acknowledges the creation of UE zone subscription request + when commanded by a MEC Application - OperationStatus constraint" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.11", + "ETSI GS MEC 013 3.1.1 Clause 6.3.7", + "ETSI GS MEC 013 3.1.1 Clause 6.4.7", + "ETSI GS MEC 013 3.1.1 Clause 7.11.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state + } + + // MEC 013, clause 5.3.11 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "location/v3/subscriptions/zones" + body containing + zoneStatusSubscription containing + subscriptionType indicating value "ZoneStatusSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value CALLBACK_URL, + zoneId indicating value ZONE_ID, + operationStatus indicating value OPER_STATUS;;; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.11.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "201 Created" + body containing + zoneStatusSubscription containing + subscriptionType indicating value "ZoneStatusSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value CALLBACK_URL, + _links indicating value LINKS, + zoneId indicating value ZONE_ID, + operationStatus indicating value OPER_STATUS;;; + to the MEC_APP entity + // MEC 013, clause 5.3.4 + and the IUT entity sends a vPOST containing + Uri set to CALLBACK_URL + body containing + zoneStatusNotification containing + notificationType indicating value "ZoneStatusNotification", + address indicating value ACR_SOME_IP, + operationStatus indicating value OPER_STATUS, + zoneId indicating value ZONE_ID, + accessPointId indicating value any_value, + _links indicating value LINKS;;; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEZONESUB_001_OK_02_02" + + Test objective + "Check that the IUT acknowledges the creation of UE zone subscription request + when commanded by a MEC Application - UserNumEvent constraint" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.11", + "ETSI GS MEC 013 3.1.1 Clause 6.3.7", + "ETSI GS MEC 013 3.1.1 Clause 6.4.7", + "ETSI GS MEC 013 3.1.1 Clause 7.11.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state + } + + // MEC 013, clause 5.3.11 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "location/v3/subscriptions/zones" + body containing + zoneStatusSubscription containing + subscriptionType indicating value "ZoneStatusSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value CALLBACK_URL, + zoneId indicating value ZONE_ID, + upperNumberOfUser indicating value UPPER_NUM_USER_THRESHOLD, + lowerNumberOfUser indicating value LOWER_NUM_USER_THRESHOLD;;; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.11.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "201 Created" + body containing + zoneStatusSubscription containing + subscriptionType indicating value "ZoneStatusSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value CALLBACK_URL, + _links indicating value LINKS, + zoneId indicating value ZONE_ID, + upperNumberOfUser indicating value UPPER_NUM_USER_THRESHOLD, + lowerNumberOfUser indicating value LOWER_NUM_USER_THRESHOLD;;; + to the MEC_APP entity + // MEC 013, clause 5.3.4 + and the IUT entity sends a vPOST containing + Uri set to CALLBACK_URL + body containing + zoneStatusNotification containing + notificationType indicating value "ZoneStatusNotification", + address indicating value ACR_SOME_IP, + userNumEvent indicating value any_value, + zoneId indicating value ZONE_ID, + accessPointId indicating value any_value, + _links indicating value LINKS;;; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEZONESUB_001_BR" + + Test objective + "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" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.11", + "ETSI GS MEC 013 3.1.1 Clause 6.3.6", + "ETSI GS MEC 013 3.1.1 Clause 6.4.6", + "ETSI GS MEC 013 3.1.1 Clause 7.11.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state + } + + // MEC 013, clause 5.3.5 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "location/v3/subscriptions/zones" + body containing + zoneLocationEventSubscription containing + subscriptionType indicating value "ZoneLocationEventSubscription", + clientCorrelator indicating value CLIENT_ID, + zoneId indicating value ZONE_ID, + addressList containing + address indicating value ACR_SOME_IP;;;; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.5.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEZONESUB_002_OK_01" + + Test objective + "Check that the IUT acknowledges the change of UE area subscription request + when commanded by a MEC Application" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 6.3.6", + "ETSI GS MEC 013 3.1.1 Clause 6.4.6", + "ETSI GS MEC 013 3.1.1 Clause 7.12.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a subscriptions containing + subscriptionId indicating value SUBSCRIPTION_ID, + callbackReference indicating value CALLBACK_URL; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "location/v3/subscriptions/zones/{SUBSCRIPTION_ID}" + body containing + zoneLocationEventSubscription containing + subscriptionType indicating value "ZoneLocationEventSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value NEW_CALLBACK_URL, + _links indicating value LINKS, + zoneId indicating value ZONE_ID, + addressList containing + address indicating value ACR_SOME_IP;;;; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.12.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + zoneLocationEventSubscription containing + subscriptionType indicating value "ZoneLocationEventSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value NEW_CALLBACK_URL, + _links indicating value LINKS, + zoneId indicating value ZONE_ID, + addressList containing + address indicating value ACR_SOME_IP;;;; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEZONESUB_002_OK_02" + + Test objective + "Check that the IUT acknowledges the change of UE area subscription request + when commanded by a MEC Application" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 6.3.7", + "ETSI GS MEC 013 3.1.1 Clause 6.4.7", + "ETSI GS MEC 013 3.1.1 Clause 7.12.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state + } + + // MEC 013, clause 5.3.11 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "location/v3/subscriptions/zones" + body containing + zoneStatusSubscription containing + subscriptionType indicating value "ZoneStatusSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value NEW_CALLBACK_URL, + _links indicating value LINKS, + zoneId indicating value ZONE_ID, + operationStatus indicating value OPER_STATUS;;; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.11.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + zoneStatusSubscription containing + subscriptionType indicating value "ZoneStatusSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value NEW_CALLBACK_URL, + _links indicating value LINKS, + zoneId indicating value ZONE_ID, + operationStatus indicating value OPER_STATUS;;; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEZONESUB_002_NF" + + Test objective + "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" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 6.3.6", + "ETSI GS MEC 013 3.1.1 Clause 6.4.6", + "ETSI GS MEC 013 3.1.1 Clause 7.12.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity not having a subscriptions containing + subscriptionId indicating value NON_EXISTING_SUBSCRIPTION_ID; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "location/v3/subscriptions/zones/{NON_EXISTING_SUBSCRIPTION_ID}" + body containing + zoneLocationEventSubscription containing + subscriptionType indicating value "ZoneLocationEventSubscription", + clientCorrelator indicating value CLIENT_ID, + callbackReference indicating value NEW_CALLBACK_URL, + _links indicating value LINKS, + zoneId indicating value ZONE_ID, + addressList containing + address indicating value ACR_SOME_IP;;;; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.12.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEZONESUB_003_OK" + + Test objective + "Check that the IUT acknowledges the cancellation of UE area change notifications + when commanded by a MEC Application" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.6", + "ETSI GS MEC 013 3.1.1 Clause 6.3.6", + "ETSI GS MEC 013 3.1.1 Clause 6.4.6", + "ETSI GS MEC 013 3.1.1 Clause 7.12.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a subscriptions containing + subscriptionId indicating value SUBSCRIPTION_ID; + } + + // MEC 013, clause 5.3.6 + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "location/v3/subscriptions/zones/{SUBSCRIPTION_ID}"; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.12.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "204 No Content"; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC013_SRV_UEZONESUB_003_NF" + + Test objective + "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" + + Reference + "ETSI GS MEC 013 3.1.1 Clause 5.3.6", + "ETSI GS MEC 013 3.1.1 Clause 6.3.6", + "ETSI GS MEC 013 3.1.1 Clause 6.4.6", + "ETSI GS MEC 013 3.1.1 Clause 7.12.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity not having a subscriptions containing + subscriptionId indicating value NON_EXISTING_SUBSCRIPTION_ID; + } + + // MEC 013, clause 5.3.6 + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "location/v3/subscriptions/zones/{NON_EXISTING_SUBSCRIPTION_ID}"; + from the MEC_APP entity + } + then { + // MEC 013, clause 7.12.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "204 No Content"; + to the MEC_APP entity + } + } + } + + +} diff --git a/Test Purposes/MEC014/SRV/UETAG/PlatUeIdentity.tplan2 b/Test Purposes/MEC014/SRV/UETAG/PlatUeIdentity.tplan2 index 0b48cd61f045daeefb807233e249bf456af71f46..f5a24b0b25483d2c915ae69d8ad3c86ab0c74271 100644 --- a/Test Purposes/MEC014/SRV/UETAG/PlatUeIdentity.tplan2 +++ b/Test Purposes/MEC014/SRV/UETAG/PlatUeIdentity.tplan2 @@ -1,5 +1,5 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. This software is subject to copyrights owned by ETSI. Non-exclusive permission is hereby granted, free of charge, to copy, reproduce and amend this file @@ -28,10 +28,10 @@ Package MEC_MEC014_SRV_UETAG { Test objective "Check that the IUT responds with the information on a UE Identity tag when queried by a MEC Application" - - Reference "ETSI GS MEC 014 1.1.1, clause 7.3.3.1", - "https://forge.etsi.org/gitlab/mec/gs014-ue-identity-api/blob/master/UEidentityAPI.yaml#/definitions/UeIdentityTagInfo" - + + Reference "ETSI GS MEC 014 3.1.1, clause 6.2.2", + "ETSI GS MEC 014 3.1.1, clause 7.3.3.1" + Config Id Config_MEC_1 PICS Selection PIC_MEC_PLAT and PIC_SERVICES @@ -63,7 +63,8 @@ Package MEC_MEC014_SRV_UETAG { UeIdentityTagInfo containing ueIdentityTagsList containing ueIdentityTags containing - ueIdentityTag set to UE_IDENTITY_TAG + ueIdentityTag set to UE_IDENTITY_TAG, + state set to REGISTERED ; ; ; @@ -82,7 +83,7 @@ Package MEC_MEC014_SRV_UETAG { "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" - Reference "ETSI GS MEC 014 1.1.1, clause 7.3.3.1" + Reference "ETSI GS MEC 014 3.1.1, clause 7.3.3.1" Config Id Config_MEC_1 @@ -103,7 +104,7 @@ Package MEC_MEC014_SRV_UETAG { uri indicating value "ui/v1/{APP_INSTANCE_ID}/ue_identity_tag_info", query_parameters containing // Wrong parameter name should trigger an error response. - ueTag indicating value UE_IDENTITY_TAG + ueTag indicating value UE_IDENTITY_TAG //The query param. should be ueIdentityTag and not ueTag ; ; from the MEC_APP entity @@ -127,7 +128,7 @@ Package MEC_MEC014_SRV_UETAG { a request for an URI that cannot be mapped to a valid resource URI is sent by a MEC Application" - Reference "ETSI GS MEC 014 1.1.1, clause 7.3.3.1" + Reference "ETSI GS MEC 014 3.1.1, clause 7.3.3.1" Config Id Config_MEC_1 @@ -170,9 +171,9 @@ Package MEC_MEC014_SRV_UETAG { "Check that the IUT registers a tag (representing a UE) or a list of tags when commanded by a MEC Application" - Reference "ETSI GS MEC 014 1.1.1, clause 7.3.3.2", - "https://forge.etsi.org/gitlab/mec/gs014-ue-identity-api/blob/master/UEidentityAPI.yaml#/definitions/UeIdentityTagInfo" - + Reference "ETSI GS MEC 014 3.1.1, clause 6.2.2", + "ETSI GS MEC 014 3.1.1, clause 7.3.3.2" + Config Id Config_MEC_1 PICS Selection PIC_MEC_PLAT and PIC_SERVICES @@ -231,9 +232,9 @@ Package MEC_MEC014_SRV_UETAG { "Check that the IUT responds with an error when an unauthorised request is sent by a MEC Application" - Reference "ETSI GS MEC 014 1.1.1, clause 7.3.3.2", - "https://forge.etsi.org/gitlab/mec/gs014-ue-identity-api/blob/master/UEidentityAPI.yaml#/definitions/ueIdentityTagsList" - + Reference "ETSI GS MEC 014 3.1.1, clause 6.2.2", + "ETSI GS MEC 014 3.1.1, clause 7.3.3.2" + Config Id Config_MEC_1 PICS Selection PIC_MEC_PLAT and PIC_SERVICES @@ -281,9 +282,7 @@ x if_match indicating value PROPER_ETAG, "Check that the IUT responds with an error when a request for an unknown URI is sent by a MEC Application" - Reference "ETSI GS MEC 014 1.1.1, clause 7.3.3.2", - "https://forge.etsi.org/gitlab/mec/gs014-ue-identity-api/blob/master/UEidentityAPI.yaml#/definitions/ueIdentityTagsList" - + Reference "ETSI GS MEC 014 3.1.1, clause 7.3.3.2" Config Id Config_MEC_1 PICS Selection PIC_MEC_PLAT and PIC_SERVICES @@ -331,9 +330,7 @@ x if_match indicating value PROPER_ETAG, "Check that the IUT responds with an error when a request sent by a MEC Application doesn't comply with a required condition" - Reference "ETSI GS MEC 014 1.1.1, clause 7.3.3.2", - "https://forge.etsi.org/gitlab/mec/gs014-ue-identity-api/blob/master/UEidentityAPI.yaml#/definitions/ueIdentityTagsList" - + Reference "ETSI GS MEC 014 3.1.1, clause 7.3.3.2" Config Id Config_MEC_1 PICS Selection PIC_MEC_PLAT and PIC_SERVICES diff --git a/Test Purposes/MEC015/SRV/MTS/MultiAccessTrafficSteering.tplan2 b/Test Purposes/MEC015/SRV/MTS/MultiAccessTrafficSteering.tplan2 index de47fdb2d15d5b2611a3673e7a69064866fc5013..57a4b98f84c498c8f83a32828f59730a0e002016 100644 --- a/Test Purposes/MEC015/SRV/MTS/MultiAccessTrafficSteering.tplan2 +++ b/Test Purposes/MEC015/SRV/MTS/MultiAccessTrafficSteering.tplan2 @@ -1,759 +1,835 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters */ Package MEC_MEC015_SRV_MTS { - import all from MEC_Common; - - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_MTS_001_OK" - - Test objective - "Check that the IUT responds with the Multi-access Traffic Steering information - when queried by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 9.3.3.1", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a mtsCapabilityInfo - } - - // MEC 015 Clause 7.2.4 - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "mts/v1/mts_info" - ; - from the MEC_APP entity - } - then { - // MEC 015 Clause 9.3.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" - body containing - mtsCapabilityInfo - ; - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_MTS_002_OK" - - Test objective - "Check that the IUT responds with the list of configured Multi-access Traffic Steering - when queried by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 9.5.3.1", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a mtsSessionInfo containing - appInsId indicating value APP_INSTANCE_ID - ; - } - - // MEC 015 Clause 7.2.5 - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "mts/v1/mts_sessions", - query_parameters containing - appInsId indicating value APP_INSTANCE_ID - ; - ; - from the MEC_APP entity - } - then { - // MEC 015 Clause 9.5.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" - body containing - oneOrmore mtsSessionInfo - ; - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_MTS_002_BR" - - Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 9.5.3.1", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a mtsSessionInfo containing - appInsId indicating value APP_INSTANCE_ID - ; - } - - // MEC 015 Clause 7.2.5 - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "mts/v1/mts_sessions", - query_parameters containing - // Wrong parameter name should trigger an error response. - appInsId indicating value APP_INSTANCE_ID - ; - ; - from the MEC_APP entity - } - then { - // MEC 015 Clause 9.5.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_MTS_002_NF" - - Test objective - "Check that the IUT responds with an error when - a request with an unknown resource URI is sent by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 9.5.3.1", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a mtsSessionInfo containing - appInsId indicating value APP_INSTANCE_ID - ; - } - - // MEC 015 Clause 7.2.5 - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "mts/v1/mts_sessions", - query_parameters containing - appInsId indicating value APP_UNKNOWN_INSTANCE_ID - ; - ; - from the MEC_APP entity - } - then { - // MEC 015 Clause 9.5.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { // FIXME Use variant here - TP Id "TP_MEC_MEC015_SRV_MTS_003_OK_01" - - Test objective - "Check that the IUT creates a MTS session - when queried by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 9.5.3.2", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a app_instance containing - appInsId indicating value APP_INSTANCE_ID - ; - } - - // MEC 015 Clause 7.2.5 and Table 7.2.5-1: Elements of MtsSessionInfo - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "bwm/v1/mts_sessions", - body containing - mtsSessionInfo containing - appInsId indicating value APP_INSTANCE_ID, - requestType indicating value 0, // APPLICATION_SPECIFIC_MTS_ALLOCATION - qosD indicating value SOME_ALLOCATION, - mtsMode indicating value LOW_COST, - trafficDirection indicating value "00" - ; - ; - ; - from the MEC_APP entity - } - then { - // MEC 015 Clause 9.5.3.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "201 Created", - Location set to MTS_SESSION_ID, // MEC 015 Table 9.5.3.2-2 - body containing - mtsSessionInfo containing - appInsId indicating value APP_INSTANCE_ID, - requestType indicating value APPLICATION_SPECIFIC_MTS_ALLOCATION, - qosD indicating value SOME_ALLOCATION, - mtsMode indicating value 0, // Low Cost - trafficDirection indicating value "00" - ; - ; - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { // FIXME Use variant here - TP Id "TP_MEC_MEC015_SRV_MTS_003_OK_02" - - Test objective - "Check that the IUT creates a MTS session - when queried by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 9.5.3.2", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a app_instance containing - appInsId indicating value APP_INSTANCE_ID - ; - } - - // MEC 015 Clause 7.2.5 and Table 7.2.5-1: Elements of MtsSessionInfo - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "bwm/v1/mts_sessions", - body containing - mtsSessionInfo containing - appInsId indicating value APP_INSTANCE_ID, - requestType indicating value 1, // FLOW_SPECIFIC_MTS_ALLOCATION - flowFilter indicating value FLOW_FILTER, - qosD indicating value SOME_ALLOCATION, - mtsMode indicating value 4, // QoS - trafficDirection indicating value "00" - ; - ; - ; - from the MEC_APP entity - } - then { - // MEC 015 Clause 9.5.3.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "201 Created", - Location set to MTS_SESSION_ID, // MEC 015 Table 9.5.3.2-2 - body containing - mtsSessionInfo containing - appInsId indicating value APP_INSTANCE_ID, - requestType indicating value FLOW_SPECIFIC_MTS_ALLOCATION, - flowFilter indicating value FLOW_FILTER, - qosD indicating value SOME_ALLOCATION, - mtsMode indicating value LOW_COST, - trafficDirection indicating value "00" - ; - ; - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_MTS_003_BR" - - Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 9.5.3.2", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a app_instance containing - appInsId indicating value APP_INSTANCE_ID - ; - } - - // MEC 015 Clause 7.2.5 and Table 7.2.5-1: Elements of MtsSessionInfo - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "bwm/v1/mts_sessions", // Invalid version number - body containing - mtsSessionInfo containing - appInsId indicating value APP_INSTANCE_ID, - requestType indicating value 0, // APPLICATION_SPECIFIC_MTS_ALLOCATION - // MEC015 Clause 7.2.5 Type: MtsSessionInfo Table 7.2.5-1: Elements of MtsSessionInfo, flowFilter shall be omit - flowFilter indicating value FLOW_FILTER, - qosD indicating value SOME_ALLOCATION, - mtsMode indicating value LOW_COST, - trafficDirection indicating value "00" - ; - ; - ; - from the MEC_APP entity + import all from MEC_Common; + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_MTS_001_OK" + + Test objective + "Check that the IUT responds with the Multi-access Traffic Steering information when queried by a MEC Application" + + Reference + "ETSI GS MEC 015 V2.1.1, clause 6.2.6", + "ETSI GS MEC 015 V2.1.1, clause 7.2.4", + "ETSI GS MEC 015 V2.1.1, clause 9.3.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES and PICS_MULTI_ACCESS_TRAFFIC_STEERING_API_SUPPORTED + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a mtsCapabilityInfo + } + + // MEC 015 Clause 7.2.4 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "mts/v1/mts_capability_info"; + from the MEC_APP entity + } + then { + // MEC 015 Clause 9.3.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + mtsCapabilityInfo;; + to the MEC_APP entity + } } - then { - // MEC 015 Clause 9.5.3.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad request" - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_MTS_002_OK_01" + + Test objective + "Check that the IUT responds with the list of configured Multi-access Traffic Steering when queried by a MEC Application - none" + + Reference + "ETSI GS MEC 015 V2.1.1, clause 6.2.6", + "ETSI GS MEC 015 V2.1.1, clause 7.2.5", + "ETSI GS MEC 015 V2.1.1, clause 9.5.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES and PICS_MULTI_ACCESS_TRAFFIC_STEERING_API_SUPPORTED + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having several mtsSessionInfo + } + + // MEC 015 Clause 7.2.5 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "mts/v1/mts_sessions"; + from the MEC_APP entity + } + then { + // MEC 015 Clause 9.5.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + mtsSessionInfoList;; + to the MEC_APP entity + } } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_MTS_004_OK" - - Test objective - "Check that the IUT responds with a configured Multi-access Traffic Steering session - when queried by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 9.4.3.1", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having an mtsSessionInfo containing - sessionId indicating value MTS_SESSION_ID - ; - } - - // MEC 015 Clause 7.2.5 - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "mts/v1/mts_sessions", - query_parameters containing - sessionId indicating value MTS_SESSION_ID - ; - ; - from the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_MTS_002_OK_02" + + Test objective + "Check that the IUT responds with the list of configured Multi-access Traffic Steering when queried by a MEC Application - app_instance_id" + + Reference + "ETSI GS MEC 015 V2.1.1, clause 6.2.6", + "ETSI GS MEC 015 V2.1.1, clause 7.2.5", + "ETSI GS MEC 015 V2.1.1, clause 9.5.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES and PICS_MULTI_ACCESS_TRAFFIC_STEERING_API_SUPPORTED + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a mtsSessionInfo containing + appInsId indicating value APP_INSTANCE_ID; + } + + // MEC 015 Clause 7.2.5 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "mts/v1/mts_sessions", + query_parameters containing + app_instance_id indicating value APP_INSTANCE_ID;; + from the MEC_APP entity + } + then { + // MEC 015 Clause 9.5.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + mtsSessionInfo containing + appInsId indicating value APP_INSTANCE_ID;;;; + to the MEC_APP entity + } } - then { - // MEC 015 Clause 9.4.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" - body containing - mtsSessionInfo containing - appInsId indicating value APP_INSTANCE_ID, - requestType indicating value 0, // APPLICATION_SPECIFIC_MTS_ALLOCATION - qosD indicating value SOME_ALLOCATION, - mtsMode indicating value LOW_COST, - trafficDirection indicating value "00" - ; - ; - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_MTS_002_OK_03" + + Test objective + "Check that the IUT responds with the list of configured Multi-access Traffic Steering when queried by a MEC Application - app_name" + + Reference + "ETSI GS MEC 015 V2.1.1, clause 6.2.6", + "ETSI GS MEC 015 V2.1.1, clause 7.2.5", + "ETSI GS MEC 015 V2.1.1, clause 9.5.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES and PICS_MULTI_ACCESS_TRAFFIC_STEERING_API_SUPPORTED + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a mtsSessionInfo containing + appInsId indicating value APP_INSTANCE_ID, + appName indicating value APP_NAME; + } + + // MEC 015 Clause 7.2.5 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "mts/v1/mts_sessions", + query_parameters containing + app_name indicating value APP_NAME;; + from the MEC_APP entity + } + then { + // MEC 015 Clause 9.5.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + mtsSessionInfoList containing + mtsSessionInfo containing + appInsId indicating value APP_INSTANCE_ID, + appName indicating value APP_NAME;;;; + to the MEC_APP entity + } } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_MTS_004_BR" - - Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 9.4.3.1", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having an mtsSessionInfo containing - sessionId indicating value MTS_SESSION_ID - ; - } - - // MEC 015 Clause 7.2.5 - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "mts/v1/mts_sessions", - query_parameters containing - // Wrong parameter name should trigger an error response. - sessionId indicating value MTS_SESSION_ID - ; - ; - from the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_MTS_002_OK_04" + + Test objective + "Check that the IUT responds with the list of configured Multi-access Traffic Steering when queried by a MEC Application - session_id" + + Reference + "ETSI GS MEC 015 V2.1.1, clause 6.2.6", + "ETSI GS MEC 015 V2.1.1, clause 7.2.5", + "ETSI GS MEC 015 V2.1.1, clause 9.5.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES and PICS_MULTI_ACCESS_TRAFFIC_STEERING_API_SUPPORTED + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a mtsSessionInfo containing + appInsId indicating value APP_INSTANCE_ID, + sessionId indicating value SESSION_ID; + } + + // MEC 015 Clause 7.2.5 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "mts/v1/mts_sessions", + query_parameters containing + session_id indicating value SESSION_ID;; + from the MEC_APP entity + } + then { + // MEC 015 Clause 9.5.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + mtsSessionInfoList containing + mtsSessionInfo containing + appInsId indicating value APP_INSTANCE_ID, + session_id indicating value SESSION_ID;;;; + to the MEC_APP entity + } } - then { - // MEC 015 Clause 9.4.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_MTS_002_BR" + + Test objective + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" + + Reference + "ETSI GS MEC 015 V2.1.1, clause 6.2.6", + "ETSI GS MEC 015 V2.1.1, clause 7.2.5", + "ETSI GS MEC 015 V2.1.1, clause 9.5.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES and PICS_MULTI_ACCESS_TRAFFIC_STEERING_API_SUPPORTED + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a mtsSessionInfo containing + appInsId indicating value APP_INSTANCE_ID; + } + + // MEC 015 Clause 7.2.5 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "mts/v1/mts_sessions", + query_parameters containing + appInsId indicating value APP_INSTANCE_ID;; // appInstId instead of app_instace_id + from the MEC_APP entity + } + then { + // MEC 015 Clause 9.5.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_MTS_004_NF" - - Test objective - "Check that the IUT responds with an error when - a request with an unknown resource URI is sent by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 9.4.3.1", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having an mtsSessionInfo containing - sessionId indicating value MTS_SESSION_ID - ; - } - - // MEC 015 Clause 7.2.5 - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "mts/v1/mts_sessions", - query_parameters containing - sessionId indicating value MTS_UNKNOWN_SESSION_ID - ; - ; - from the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_MTS_002_NF" + + Test objective + "Check that the IUT responds with an error when a request with an unknown resource URI is sent by a MEC Application" + + Reference + "ETSI GS MEC 015 V2.1.1, clause 6.2.6", + "ETSI GS MEC 015 V2.1.1, clause 7.2.5", + "ETSI GS MEC 015 V2.1.1, clause 9.5.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES and PICS_MULTI_ACCESS_TRAFFIC_STEERING_API_SUPPORTED + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a mtsSessionInfo containing + appInsId indicating value APP_INSTANCE_ID; + } + + // MEC 015 Clause 7.2.5 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "mts/v1/mts_sessions", + query_parameters containing + app_instance_id indicating value APP_UNKNOWN_INSTANCE_ID;; + from the MEC_APP entity + } + then { + // MEC 015 Clause 9.5.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } } - then { - // MEC 015 Clause 9.4.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_MTS_003_OK_01" + + Test objective + "Check that the IUT creates a MTS session when queried by a MEC Application" + + Reference + "ETSI GS MEC 015 V2.1.1, clause 6.2.7", + "ETSI GS MEC 015 V2.1.1, clause 7.2.5", + "ETSI GS MEC 015 V2.1.1, clause 9.5.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES and PICS_MULTI_ACCESS_TRAFFIC_STEERING_API_SUPPORTED + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a app_instance containing + appInsId indicating value APP_INSTANCE_ID; + } + + // MEC 015 Clause 7.2.5 and Table 7.2.5-1: Elements of MtsSessionInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "bwm/v1/mts_sessions", + body containing + mtsSessionInfo containing + appInsId indicating value APP_INSTANCE_ID, + requestType indicating value APPLICATION_SPECIFIC_MTS_ALLOCATION, + qosD indicating value SOME_ALLOCATION, + mtsMode indicating value LOW_COST, + trafficDirection indicating value "00";;; + from the MEC_APP entity + } + then { + // MEC 015 Clause 9.5.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "201 Created", + Location set to MTS_SESSION_ID, // MEC 015 Table 9.5.3.2-2 + body containing + mtsSessionInfo containing + appInsId indicating value APP_INSTANCE_ID, + requestType indicating value APPLICATION_SPECIFIC_MTS_ALLOCATION, + qosD indicating value SOME_ALLOCATION, + mtsMode indicating value LOW_COST, + trafficDirection indicating value "00";;; + to the MEC_APP entity + } } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_MTS_005_OK" - - Test objective - "Check that the IUT updates the information about an individual MTS session - when commanded by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 9.4.3.2", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a mtsSessionInfo containing - sessionId indicating value MTS_SESSION_ID - ; - } - - // MEC 015 Clause 7.2.5 - Expected behaviour - ensure that { - when { - the IUT entity receives a vPUT containing - uri indicating value "mts/v1/mts_sessions/{sessionId}", - query_parameters indicating value MTS_SESSION_ID, - body containing - mtsSessionInfo containing - appInsId indicating value APP_INSTANCE_ID, - requestType indicating value 0, // APPLICATION_SPECIFIC_MTS_ALLOCATION - qosD indicating value SOME_NEW_ALLOCATION, - mtsMode indicating value LOW_COST, - trafficDirection indicating value "00" - ; - ; - ; - from the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_MTS_003_OK_02" + + Test objective + "Check that the IUT creates a MTS session when queried by a MEC Application" + + Reference + "ETSI GS MEC 015 V2.1.1, clause 6.2.7", + "ETSI GS MEC 015 V2.1.1, clause 7.2.5", + "ETSI GS MEC 015 V2.1.1, clause 9.5.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES and PICS_MULTI_ACCESS_TRAFFIC_STEERING_API_SUPPORTED + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a app_instance containing + appInsId indicating value APP_INSTANCE_ID; + } + + // MEC 015 Clause 7.2.5 and Table 7.2.5-1: Elements of MtsSessionInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "bwm/v1/mts_sessions", + body containing + mtsSessionInfo containing + appInsId indicating value APP_INSTANCE_ID, + requestType indicating value FLOW_SPECIFIC_MTS_ALLOCATION, + flowFilter indicating value FLOW_FILTER, + qosD indicating value SOME_ALLOCATION, + mtsMode indicating value QoS, + trafficDirection indicating value "00";;; + from the MEC_APP entity + } + then { + // MEC 015 Clause 9.5.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "201 Created", + Location set to MTS_SESSION_ID, // MEC 015 Table 9.5.3.2-2 + body containing + mtsSessionInfo containing + appInsId indicating value APP_INSTANCE_ID, + requestType indicating value FLOW_SPECIFIC_MTS_ALLOCATION, + flowFilter indicating value FLOW_FILTER, + qosD indicating value SOME_ALLOCATION, + mtsMode indicating value LOW_COST, + trafficDirection indicating value "00";;; + to the MEC_APP entity + } } - then { - // MEC 015 Clause 8.3.3.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" - body containing - mtsSessionInfo containing - appInsId indicating value APP_INSTANCE_ID, - requestType indicating value 0, // APPLICATION_SPECIFIC_MTS_ALLOCATION - qosD indicating value SOME_NEW_ALLOCATION, - mtsMode indicating value LOW_COST, - trafficDirection indicating value "00" - ; - ; - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_MTS_003_BR" + + Test objective + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" + + Reference + "ETSI GS MEC 015 V2.1.1, clause 6.2.7", + "ETSI GS MEC 015 V2.1.1, clause 7.2.5", + "ETSI GS MEC 015 V2.1.1, clause 9.5.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES and PICS_MULTI_ACCESS_TRAFFIC_STEERING_API_SUPPORTED + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a app_instance containing + appInsId indicating value APP_INSTANCE_ID; + } + + // MEC 015 Clause 7.2.5 and Table 7.2.5-1: Elements of MtsSessionInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "bwm/v1/mts_sessions", // Invalid version number + body containing + mtsSessionInfo containing + appInsId indicating value APP_INSTANCE_ID, + requestType indicating value APPLICATION_SPECIFIC_MTS_ALLOCATION, + // MEC015 Clause 7.2.5 Type: MtsSessionInfo Table 7.2.5-1: Elements of MtsSessionInfo, flowFilter shall be omit + flowFilter indicating value FLOW_FILTER, + qosD indicating value SOME_ALLOCATION, + mtsMode indicating value LOW_COST, + trafficDirection indicating value "00";;; + from the MEC_APP entity + } + then { + // MEC 015 Clause 9.5.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad request"; + to the MEC_APP entity + } } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_MTS_005_BR" - - Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 9.4.3.2", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a mtsSessionInfo containing - sessionId indicating value MTS_SESSION_ID - ; - } - - // MEC 015 Clause 7.2.5 - Expected behaviour - ensure that { - when { - the IUT entity receives a vPUT containing - uri indicating value "mts/v1/mts_sessions/{sessionId}", - // Wrong parameter name should trigger an error response. - query_parameters indicating value MTS_SESSION_ID, - body containing - mtsSessionInfo containing - appInsId indicating value APP_INSTANCE_ID, - requestType indicating value 0, // APPLICATION_SPECIFIC_MTS_ALLOCATION - // MEC015 Clause 7.2.5 Type: MtsSessionInfo Table 7.2.5-1: Elements of MtsSessionInfo, flowFilter shall be omit - flowFilter indicating value FLOW_FILTER, - qosD indicating value SOME_NEW_ALLOCATION, - mtsMode indicating value LOW_COST, - trafficDirection indicating value "00" - ; - ; - ; - from the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_MTS_004_OK" + + Test objective + "Check that the IUT responds with a configured Multi-access Traffic Steering session when queried by a MEC Application" + + Reference + "ETSI GS MEC 015 V2.1.1, clause 6.2.10", + "ETSI GS MEC 015 V2.1.1, clause 7.2.5", + "ETSI GS MEC 015 V2.1.1, clause 9.4.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES and PICS_MULTI_ACCESS_TRAFFIC_STEERING_API_SUPPORTED + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having an mtsSessionInfo containing + sessionId indicating value MTS_SESSION_ID, + appInsId indicating value APP_INSTANCE_ID, + requestType indicating value APPLICATION_SPECIFIC_MTS_ALLOCATION, + qosD indicating value SOME_ALLOCATION, + mtsMode indicating value LOW_COST, + trafficDirection indicating value "00"; + } + + // MEC 015 Clause 7.2.5 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "mts/v1/mts_sessions/{MTS_SESSION_ID}"; + from the MEC_APP entity + } + then { + // MEC 015 Clause 9.4.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + mtsSessionInfo containing + appInsId indicating value APP_INSTANCE_ID, + requestType indicating value APPLICATION_SPECIFIC_MTS_ALLOCATION, + qosD indicating value SOME_ALLOCATION, + mtsMode indicating value LOW_COST, + trafficDirection indicating value "00";;; + to the MEC_APP entity + } } - then { - // MEC 015 Clause 8.3.3.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_MTS_004_BR" + + Test objective + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" + + Reference + "ETSI GS MEC 015 V2.1.1, clause 6.2.10", + "ETSI GS MEC 015 V2.1.1, clause 7.2.5", + "ETSI GS MEC 015 V2.1.1, clause 9.4.3.1" + + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES and PICS_MULTI_ACCESS_TRAFFIC_STEERING_API_SUPPORTED + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having an mtsSessionInfo containing + sessionId indicating value MTS_SESSION_ID, + appInsId indicating value APP_INSTANCE_ID, + requestType indicating value APPLICATION_SPECIFIC_MTS_ALLOCATION, + qosD indicating value SOME_ALLOCATION, + mtsMode indicating value LOW_COST, + trafficDirection indicating value "00"; + } + + // MEC 015 Clause 7.2.5 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "mts/v0/mts_sessions/{MTS_SESSION_ID}"; // v0 instead of v1 + from the MEC_APP entity + } + then { + // MEC 015 Clause 9.4.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_MTS_005_NF" - - Test objective - "Check that the IUT responds with an error when - a request with an unknown resource URI is sent by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 9.4.3.2", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a mtsSessionInfo containing - sessionId indicating value MTS_SESSION_ID - ; - } - - // MEC 015 Clause 7.2.5 - Expected behaviour - ensure that { - when { - the IUT entity receives a vPUT containing - uri indicating value "mts/v1/mts_sessions/{sessionId}", - query_parameters indicating value MTS_UNKNOWN_SESSION_ID, - body containing - mtsSessionInfo containing - appInsId indicating value APP_INSTANCE_ID, - requestType indicating value 0, // APPLICATION_SPECIFIC_MTS_ALLOCATION - flowFilter indicating value FLOW_FILTER, - qosD indicating value SOME_NEW_ALLOCATION, - mtsMode indicating value LOW_COST, - trafficDirection indicating value "00" - ; - ; - ; - from the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_MTS_004_NF" + + Test objective + "Check that the IUT responds with an error when a request with an unknown resource URI is sent by a MEC Application" + + Reference + "ETSI GS MEC 015 V2.1.1, clause 6.2.10", + "ETSI GS MEC 015 V2.1.1, clause 7.2.5", + "ETSI GS MEC 015 V2.1.1, clause 9.4.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES and PICS_MULTI_ACCESS_TRAFFIC_STEERING_API_SUPPORTED + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having an mtsSessionInfo containing + sessionId indicating value MTS_SESSION_ID, + appInsId indicating value APP_INSTANCE_ID, + requestType indicating value APPLICATION_SPECIFIC_MTS_ALLOCATION, + qosD indicating value SOME_ALLOCATION, + mtsMode indicating value LOW_COST, + trafficDirection indicating value "00"; + } + + // MEC 015 Clause 7.2.5 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "mts/v1/mts_sessions/{MTS_UNKNOWN_SESSION_ID}"; + from the MEC_APP entity + } + then { + // MEC 015 Clause 9.4.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } } - then { - // MEC 015 Clause 8.3.3.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_MTS_005_OK" + + Test objective + "Check that the IUT updates the information about an individual MTS session when commanded by a MEC Application" + + Reference + "ETSI GS MEC 015 V2.1.1, clause 6.2.9", + "ETSI GS MEC 015 V2.1.1, clause 7.2.5", + "ETSI GS MEC 015 V2.1.1, clause 9.4.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES and PICS_MULTI_ACCESS_TRAFFIC_STEERING_API_SUPPORTED + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a mtsSessionInfo containing + sessionId indicating value MTS_SESSION_ID; + } + + // MEC 015 Clause 7.2.5 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "mts/v1/mts_sessions/{MTS_SESSION_ID}", + body containing + mtsSessionInfo containing + appInsId indicating value APP_INSTANCE_ID, + requestType indicating value APPLICATION_SPECIFIC_MTS_ALLOCATION, + qosD indicating value SOME_NEW_ALLOCATION, + mtsMode indicating value LOW_COST, + trafficDirection indicating value "00";;; + from the MEC_APP entity + } + then { + // MEC 015 Clause 8.3.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + mtsSessionInfo containing + appInsId indicating value APP_INSTANCE_ID, + requestType indicating value APPLICATION_SPECIFIC_MTS_ALLOCATION, + qosD indicating value SOME_NEW_ALLOCATION, + mtsMode indicating value LOW_COST, + trafficDirection indicating value "00";;; + to the MEC_APP entity + } } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_MTS_006_OK" - - Test objective - "Check that the IUT deregisters a MTS session - when commanded by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 9.4.3.3", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a mtsSessionInfo containing - sessionId indicating value MTS_SESSION_ID - ; - } - - // MEC 015 Clause 7.2.5 - Expected behaviour - ensure that { - when { - the IUT entity receives a vDELETE containing - uri indicating value "mts/v1/mts_sessions/{sessionId}", - query_parameters containing - sessionId indicating value MTS_SESSION_ID - ; - ; - from the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_MTS_005_BR" + + Test objective + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" + + Reference + "ETSI GS MEC 015 V2.1.1, clause 6.2.9", + "ETSI GS MEC 015 V2.1.1, clause 7.2.5", + "ETSI GS MEC 015 V2.1.1, clause 9.4.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES and PICS_MULTI_ACCESS_TRAFFIC_STEERING_API_SUPPORTED + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a mtsSessionInfo containing + sessionId indicating value MTS_SESSION_ID; + } + + // MEC 015 Clause 7.2.5 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "mts/v1/mts_sessions/{MTS_SESSION_ID}", + body containing + mtsSessionInfo containing + appInsId indicating value APP_INSTANCE_ID, + requestType indicating value APPLICATION_SPECIFIC_MTS_ALLOCATION, + // MEC015 Clause 7.2.5 Type: MtsSessionInfo Table 7.2.5-1: Elements of MtsSessionInfo, flowFilter shall be omit + flowFilter indicating value FLOW_FILTER, + qosD indicating value SOME_NEW_ALLOCATION, + mtsMode indicating value LOW_COST, + trafficDirection indicating value "00";;; + from the MEC_APP entity + } + then { + // MEC 015 Clause 8.3.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } } - then { - // MEC 015 Clause 8.3.3.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "204 No Content" - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_MTS_005_NF" + + Test objective + "Check that the IUT responds with an error when a request with an unknown resource URI is sent by a MEC Application" + + Reference + "ETSI GS MEC 015 V2.1.1, clause 6.2.9", + "ETSI GS MEC 015 V2.1.1, clause 7.2.5", + "ETSI GS MEC 015 V2.1.1, clause 9.4.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES and PICS_MULTI_ACCESS_TRAFFIC_STEERING_API_SUPPORTED + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a mtsSessionInfo containing + sessionId indicating value MTS_SESSION_ID; + } + + // MEC 015 Clause 7.2.5 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "mts/v1/mts_sessions/{MTS_UNKNOWN_SESSION_ID}", + body containing + mtsSessionInfo containing + appInsId indicating value APP_INSTANCE_ID, + requestType indicating value APPLICATION_SPECIFIC_MTS_ALLOCATION, + flowFilter indicating value FLOW_FILTER, + qosD indicating value SOME_NEW_ALLOCATION, + mtsMode indicating value LOW_COST, + trafficDirection indicating value "00";;; + from the MEC_APP entity + } + then { + // MEC 015 Clause 8.3.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_MTS_006_NF" - - Test objective - "Check that the IUT responds with an error when - a request with an unknown resource URI is sent by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 9.4.3.3", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a mtsSessionInfo containing - sessionId indicating value MTS_SESSION_ID - ; - } - - // MEC 015 Clause 7.2.5 - Expected behaviour - ensure that { - when { - the IUT entity receives a vDELETE containing - uri indicating value "mts/v1/mts_sessions/{sessionId}", - query_parameters containing - sessionId indicating value MTS_UNKNOWN_SESSION_ID - ; - ; - from the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_MTS_006_OK" + + Test objective + "Check that the IUT deregisters a MTS session when commanded by a MEC Application" + + Reference + "ETSI GS MEC 015 V2.1.1, clause 6.2.8", + "ETSI GS MEC 015 V2.1.1, clause 7.2.5", + "ETSI GS MEC 015 V2.1.1, clause 9.4.3.3" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES and PICS_MULTI_ACCESS_TRAFFIC_STEERING_API_SUPPORTED + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a mtsSessionInfo containing + sessionId indicating value MTS_SESSION_ID; + } + + // MEC 015 Clause 7.2.5 + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "mts/v1/mts_sessions/{MTS_SESSION_ID}"; + from the MEC_APP entity + } + then { + // MEC 015 Clause 8.3.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "204 No Content"; + to the MEC_APP entity + } } - then { - // MEC 015 Clause 8.3.3.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_MTS_006_NF" + + Test objective + "Check that the IUT responds with an error when a request with an unknown resource URI is sent by a MEC Application" + + Reference + "ETSI GS MEC 015 V2.1.1, clause 6.2.8", + "ETSI GS MEC 015 V2.1.1, clause 7.2.5", + "ETSI GS MEC 015 V2.1.1, clause 9.4.3.3" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES and PICS_MULTI_ACCESS_TRAFFIC_STEERING_API_SUPPORTED + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a mtsSessionInfo containing + sessionId indicating value MTS_SESSION_ID; + } + + // MEC 015 Clause 7.2.5 + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "mts/v1/mts_sessions/{MTS_UNKNOWN_SESSION_ID}"; + from the MEC_APP entity + } + then { + // MEC 015 Clause 8.3.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } } - } - } + } } diff --git a/Test Purposes/MEC015/SRV/TM/TrafficManagement.tplan2 b/Test Purposes/MEC015/SRV/TM/TrafficManagement.tplan2 index b7250a648ef4f721e7188c85c2477915d77aaf01..b61487a83100d67ec57846cbf40ce8a0a371a5a9 100644 --- a/Test Purposes/MEC015/SRV/TM/TrafficManagement.tplan2 +++ b/Test Purposes/MEC015/SRV/TM/TrafficManagement.tplan2 @@ -1,962 +1,1045 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters */ Package MEC_MEC015_SRV_TM { - import all from MEC_Common; - - - /* - * Bandwidth Allocations (BWA) - */ - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_TM_001_OK" - - Test objective - "Check that the IUT responds with the list of configured bandwidth allocations - when queried by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 8.4.3.1", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a oneOrmore bwInfo - } - - // MEC 015 Clause 6.2.5 - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "bwm/v1/bw_allocations" - ; - from the MEC_APP entity - } - then { - // MEC 015 Clause 8.4.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" - body containing - bwInfoList containing - oneOrmore bwInfo containing - appInsId set to APP_INSTANCE_ID - ; - ; - ; - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_TM_002_OK" - - Test objective - "Check that the IUT responds with a configured bandwidth allocation - when queried by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 8.4.3.1", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a bwInfo containing - appInsId indicating value APP_INSTANCE_ID - ; - } - - // MEC 015 Clause 6.2.5 - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "bwm/v1/bw_allocations", - query_parameters containing - app_instance_id indicating value APP_INSTANCE_ID - ; - ; - from the MEC_APP entity - } - then { - // MEC 015 Clause 8.4.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" - body containing - bwInfoList containing - appInsId set to APP_INSTANCE_ID - ; - ; - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_TM_002_BR" - - Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 8.4.3.1", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a bwInfo containing - appInsId indicating value APP_INSTANCE_ID - ; - } - - // MEC 015 Clause 6.2.5 - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "bwm/v1/bw_allocations", - query_parameters containing - // Wrong parameter name should trigger an error response. - appInsId indicating value APP_INSTANCE_ID - ; - ; - from the MEC_APP entity - } - then { - // MEC 015 Clause 8.4.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_TM_002_NF" - Test objective - "Check that the IUT responds with an error when - a request with an unknown resource URI is sent by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 8.3.3.1", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a bwInfo containing - appInsId indicating value APP_INSTANCE_ID - ; - } - - // MEC 015 Clause 6.2.5 - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "bwm/v1/bw_allocations", - query_parameters containing - appInsId indicating value APP_UNKNOWN_INSTANCE_ID - ; - ; - from the MEC_APP entity - } - then { - // MEC 015 Clause 8.3.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_TM_003_OK_01" - - Test objective - "Check that the IUT responds with a information about a list of bandwidthAllocation resources" - - Reference "ETSI GS MEC 015 V2.1.1, clause 8.4.3.4", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a app_instance containing - appInsId indicating value APP_INSTANCE_ID - ; - } - - // MEC 015 Clause 6.2.2 and Table 7.2.2-1: Elements of BwInfo, sessionFilter - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "bwm/v1/bw_allocations", - body containing - bwInfo containing - appInsId indicating value APP_INSTANCE_ID, - requestType indicating value APPLICATION_SPECIFIC_BW_ALLOCATION, - sessionFilter indicating value omit, - fixedAllocation indicating value SOME_ALLOCATION, - allocationDirection indicating value SOME_DIRECTION - ; - ; - ; - from the MEC_APP entity + import all from MEC_Common; + + /* + * Bandwidth Allocations (BWA) + */ + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_TM_001_OK_01" + + Test objective + "Check that the IUT responds with the list of configured bandwidth allocations when queried by a MEC Application - none" + + Reference + "ETSI GS MEC 015 2.2.1, clause 6.2.5", + "ETSI GS MEC 015 2.2.1, clause 7.2.2", + "ETSI GS MEC 015 2.2.1, clause 8.4.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having several bwInfo + } + + // MEC 015 Clause 6.2.5 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "bwm/v1/bw_allocations"; + from the MEC_APP entity + } + then { + // MEC 015 Clause 8.4.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + bwInfoList;; + to the MEC_APP entity + } } - then { - // MEC 015 Clause 8.4.3.4 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "201 Created", - Location set to BW_ALLOCATION_ID, - body containing - bwInfo containing - appInsId set to APP_INSTANCE_ID, - requestType indicating value APPLICATION_SPECIFIC_BW_ALLOCATION, - sessionFilter indicating value omit, - fixedAllocation indicating value SOME_ALLOCATION, - allocationDirection indicating value SOME_DIRECTION - ; - ; - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_TM_001_OK_02" + + Test objective + "Check that the IUT responds with a configured bandwidth allocation when queried by a MEC Application - app_instance_id" + + Reference + "ETSI GS MEC 015 2.2.1, clause 6.2.5", + "ETSI GS MEC 015 2.2.1, clause 7.2.2", + "ETSI GS MEC 015 2.2.1, clause 8.4.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a bwInfo containing + appInsId indicating value APP_INSTANCE_ID; + } + + // MEC 015 Clause 6.2.5 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "bwm/v1/bw_allocations", + query_parameters containing + app_instance_id indicating value APP_INSTANCE_ID;; + from the MEC_APP entity + } + then { + // MEC 015 Clause 8.4.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + bwInfoList containing + bwInfo containing + appInsId set to APP_INSTANCE_ID;;;; + to the MEC_APP entity + } } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_TM_003_OK_02" - - Test objective - "Check that the IUT responds with a information about a list of bandwidthAllocation resources" - - Reference "ETSI GS MEC 015 V2.1.1, clause 8.4.3.4", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a app_instance containing - appInsId indicating value APP_INSTANCE_ID - ; - } - - // MEC 015 Clause 6.2.2 and Table 7.2.2-1: Elements of BwInfo, sessionFilter - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "bwm/v1/bw_allocations", - body containing - bwInfoList containing - appInsId indicating value APP_INSTANCE_ID, - requestType indicating value SESSION_SPECIFIC_BW_ALLOCATION, - sessionFilter indicating value SESSION_FILTER, - fixedAllocation indicating value SOME_ALLOCATION, - allocationDirection indicating value SOME_DIRECTION - ; - ; - ; - from the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_TM_001_OK_03" + + Test objective + "Check that the IUT responds with a configured bandwidth allocation when queried by a MEC Application - app_name" + + Reference + "ETSI GS MEC 015 2.2.1, clause 6.2.5", + "ETSI GS MEC 015 2.2.1, clause 7.2.2", + "ETSI GS MEC 015 2.2.1, clause 8.4.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a bwInfo containing + appInsId indicating value APP_INSTANCE_ID, + appName indicating value APP_NAME; + } + + // MEC 015 Clause 6.2.5 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "bwm/v1/bw_allocations", + query_parameters containing + app_name indicating value APP_NAME;; + from the MEC_APP entity + } + then { + // MEC 015 Clause 8.4.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + bwInfoList containing + bwInfo containing + appInsId set to APP_INSTANCE_ID, + appName indicating value APP_NAME;;;; + to the MEC_APP entity + } } - then { - // MEC 015 Clause 8.4.3.4 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "201 Created", - Location indicating value BW_ALLOCATION_ID, - body containing - bwInfo containing - appInsId set to APP_INSTANCE_ID, - requestType indicating value APPLICATION_SPECIFIC_BW_ALLOCATION, - sessionFilter indicating value omit, - fixedAllocation indicating value SOME_ALLOCATION, - allocationDirection indicating value SOME_DIRECTION - ; - ; - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_TM_001_OK_04" + + Test objective + "Check that the IUT responds with a configured bandwidth allocation when queried by a MEC Application - session_id" + + Reference + "ETSI GS MEC 015 2.2.1, clause 6.2.5", + "ETSI GS MEC 015 2.2.1, clause 7.2.2", + "ETSI GS MEC 015 2.2.1, clause 8.4.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a bwInfo containing + appInsId indicating value APP_INSTANCE_ID, + allocationId indicating value APP_ALLOCATION_ID; + } + + // MEC 015 Clause 6.2.5 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "bwm/v1/bw_allocations", + query_parameters containing + session_id indicating value APP_ALLOCATION_ID;; + from the MEC_APP entity + } + then { + // MEC 015 Clause 8.4.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + bwInfoList containing + bwInfo containing + appInsId set to APP_INSTANCE_ID, + appName indicating value APP_NAME, + allocationId indicating value APP_ALLOCATION_ID;;;; + to the MEC_APP entity + } } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_TM_003_BR_01" - - Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 8.4.3.4", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a app_instance containing - appInsId indicating value APP_INSTANCE_ID - ; - } - - // MEC 015 Clause 6.2.2 - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "bwm/v1/bw_allocations", - body containing - bwInfoList containing - appInsId indicating value APP_INSTANCE_ID, - requestType indicating value APPLICATION_SPECIFIC_BW_ALLOCATION, - sessionFilter indicating value omit, - fixedAllocation indicating value INVALID_ALLOCATION - ; - ; - ; - from the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_TM_001_BR" + + Test objective + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application - app_instance_id" + + Reference + "ETSI GS MEC 015 2.2.1, clause 6.2.5", + "ETSI GS MEC 015 2.2.1, clause 7.2.2", + "ETSI GS MEC 015 2.2.1, clause 8.4.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a bwInfo containing + appInsId indicating value APP_INSTANCE_ID; + } + + // MEC 015 Clause 6.2.5 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "bwm/v1/bw_allocations", + query_parameters containing + appInsId indicating value APP_INSTANCE_ID;; // appInsId instead of app_instance_id + from the MEC_APP entity + } + then { + // MEC 015 Clause 8.4.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } } - then { - // MEC 015 Clause 8.4.3.4 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_TM_001_NF_01" + + Test objective + "Check that the IUT responds with an error when a request with an unknown resource URI is sent by a MEC Application - app_instance_id" + + Reference + "ETSI GS MEC 015 2.2.1, clause 6.2.5", + "ETSI GS MEC 015 2.2.1, clause 7.2.2", + "ETSI GS MEC 015 2.2.1, clause 8.4.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a bwInfo containing + appInsId indicating value APP_INSTANCE_ID, + appName indicating value APP_NAME; + } + + // MEC 015 Clause 6.2.5 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "bwm/v1/bw_allocations", + query_parameters containing + appInsId indicating value APP_UNKNOWN_INSTANCE_ID;; + from the MEC_APP entity + } + then { + // MEC 015 Clause 8.4.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_TM_003_BR_02" - - Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 8.4.3.4", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a app_instance containing - appInsId indicating value APP_INSTANCE_ID - ; - } - - // MEC 015 Clause 6.2.2 - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "bwm/v1/bw_allocations", - body containing - bwInfoList containing - appInsId indicating value APP_INSTANCE_ID, - requestType indicating value APPLICATION_SPECIFIC_BW_ALLOCATION, - // MEC015 Clause 7.2.2 Type: BwInfo Table 7.2.2-1: Elements of BwInfo, sessionFilter shall be omit - sessionFilter indicating value SESSION_FILTER_VALUE, - fixedAllocation indicating value INVALID_ALLOCATION - ; - ; - ; - from the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_TM_001_NF_02" + + Test objective + "Check that the IUT responds with an error when a request with an unknown resource URI is sent by a MEC Application - app_name" + + Reference + "ETSI GS MEC 015 2.2.1, clause 6.2.5", + "ETSI GS MEC 015 2.2.1, clause 7.2.2", + "ETSI GS MEC 015 2.2.1, clause 8.4.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a bwInfo containing + appName indicating value APP_NAME; + } + + // MEC 015 Clause 6.2.5 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "bwm/v1/bw_allocations", + query_parameters containing + app_name indicating value APP_UNKNOWN_APP_NAME;; + from the MEC_APP entity + } + then { + // MEC 015 Clause 8.4.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } } - then { - // MEC 015 Clause 8.4.3.4 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_TM_001_NF_03" + + Test objective + "Check that the IUT responds with an error when a request with an unknown resource URI is sent by a MEC Application - session_id" + + Reference + "ETSI GS MEC 015 2.2.1, clause 6.2.5", + "ETSI GS MEC 015 2.2.1, clause 7.2.2", + "ETSI GS MEC 015 2.2.1, clause 8.4.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a bwInfo containing + appName indicating value APP_NAME, + allocationId indicating value ALLOCATION_ID; + } + + // MEC 015 Clause 6.2.5 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "bwm/v1/bw_allocations", + query_parameters containing + session_id indicating value APP_UNKNOWN_ALLOCATION_ID;; + from the MEC_APP entity + } + then { + // MEC 015 Clause 8.4.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_TM_003_BR_03" - - Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 8.4.3.4", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a app_instance containing - appInsId indicating value APP_INSTANCE_ID - ; - } - - // MEC 015 Clause 6.2.2 - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "bwm/v1/bw_allocations", - body containing - bwInfoList containing - appInsId indicating value APP_INSTANCE_ID, - requestType indicating value SESSION_SPECIFIC_BW_ALLOCATION, - // MEC015 Clause 7.2.2 Type: BwInfo Table 7.2.2-1: Elements of BwInfo, sessionFilter shall be present - sessionFilter indicating value omit, - fixedAllocation indicating value INVALID_ALLOCATION - ; - ; - ; - from the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_TM_002_OK" + + Test objective + "Check that the IUT acknowledges a creation of a bandwidthAllocation resource" + + Reference + "ETSI GS MEC 015 2.2.1, clause 6.2.2", + "ETSI GS MEC 015 2.2.1, clause 7.2.2", + "ETSI GS MEC 015 2.2.1, clause 8.4.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a app_instance containing + appInsId indicating value APP_INSTANCE_ID; + } + + // MEC 015 Clause 6.2.2 and Table 7.2.2-1: Elements of BwInfo, sessionFilter + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "bwm/v1/bw_allocations", + body containing + bwInfo containing + appInsId indicating value APP_INSTANCE_ID, + requestType indicating value APPLICATION_SPECIFIC_BW_ALLOCATION, + sessionFilter indicating value omit, + fixedAllocation indicating value SOME_ALLOCATION, + allocationDirection indicating value SOME_DIRECTION;;; + from the MEC_APP entity + } + then { + // MEC 015 Clause 6.2.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "201 Created", + Location set to BW_ALLOCATION_ID, + body containing + bwInfo containing + appInsId set to APP_INSTANCE_ID, + requestType indicating value APPLICATION_SPECIFIC_BW_ALLOCATION, + sessionFilter indicating value omit, + fixedAllocation indicating value SOME_ALLOCATION, + allocationDirection indicating value SOME_DIRECTION;;; + to the MEC_APP entity + } } - then { - // MEC 015 Clause 8.4.3.4 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_TM_002_BR_01" + + Test objective + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application - sessionFilter shall be omitted" + + Reference + "ETSI GS MEC 015 2.2.1, clause 6.2.2", + "ETSI GS MEC 015 2.2.1, clause 7.2.2", + "ETSI GS MEC 015 2.2.1, clause 8.4.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a app_instance containing + appInsId indicating value APP_INSTANCE_ID + ; + } + + // MEC 015 Clause 6.2.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "bwm/v1/bw_allocations", + body containing + bwInfo containing + appInsId indicating value APP_INSTANCE_ID, + requestType indicating value APPLICATION_SPECIFIC_BW_ALLOCATION, + // MEC015 Clause 7.2.2 Type: BwInfo Table 7.2.2-1: Elements of BwInfo, sessionFilter shall be omit + sessionFilter indicating value SESSION_FILTER_VALUE, + fixedAllocation indicating value INVALID_ALLOCATION;;; + from the MEC_APP entity + } + then { + // MEC 015 Clause 8.4.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_TM_004_OK" - - Test objective - "Check that the IUT responds with the configured bandwidth allocation - when queried by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 8.3.3.1", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a app_instance containing - appInsId indicating value APP_INSTANCE_ID - ; - } - - // MEC 015 Clause 6.2.2 - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "bwm/v1/bw_allocations/{allocationId}", - query_parameters containing - allocationId indicating value BW_ALLOCATION_ID - ; - ; - from the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_TM_002_BR_02" + + Test objective + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application - sessionFilter shall be present" + + Reference + "ETSI GS MEC 015 2.2.1, clause 6.2.2", + "ETSI GS MEC 015 2.2.1, clause 7.2.2", + "ETSI GS MEC 015 2.2.1, clause 8.4.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a app_instance containing + appInsId indicating value APP_INSTANCE_ID + ; + } + + // MEC 015 Clause 6.2.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "bwm/v1/bw_allocations", + body containing + bwInfo containing + appInsId indicating value APP_INSTANCE_ID, + requestType indicating value SESSION_SPECIFIC_BW_ALLOCATION, + // MEC015 Clause 7.2.2 Type: BwInfo Table 7.2.2-1: Elements of BwInfo, sessionFilter shall be present + sessionFilter indicating value omit, + fixedAllocation indicating value INVALID_ALLOCATION;;; + from the MEC_APP entity + } + then { + // MEC 015 Clause 8.4.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } } - then { - // MEC 015 Clause 8.4.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK", - body containing - bwInfo containing - appInsId set to APP_INSTANCE_ID - ; - ; - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_TM_003_OK" + + Test objective + "Check that the IUT responds with the configured bandwidth allocation when queried by a MEC Application" + + Reference + "ETSI GS MEC 015 2.2.1, clause 6.2.5", + "ETSI GS MEC 015 2.2.1, clause 7.2.2", + "ETSI GS MEC 015 2.2.1, clause 8.3.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a bwInfo containing + allocationId indicating value ALLOCATION_ID; + } + + // MEC 015 Clause 6.2.5 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "bwm/v1/bw_allocations/{BW_ALLOCATION_ID}"; + from the MEC_APP entity + } + then { + // MEC 015 Clause 8.4.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK", + body containing + bwInfo containing + appInsId set to APP_INSTANCE_ID;;; + to the MEC_APP entity + } } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_TM_004_NF" - - Test objective - "Check that the IUT responds with an error when - a request for an unknown URI is sent by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 8.3.3.1", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a app_instance containing - appInsId indicating value APP_INSTANCE_ID - ; - } - - // MEC 015 Clause 6.2.2 - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "bwm/v1/bw_allocations/{allocationId}", - query_parameters containing - allocationId indicating value BW_UNKNOWN_ALLOCATION_ID - ; - ; - from the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_TM_003_NF" + + Test objective + "Check that the IUT responds with an error when a request for an unknown URI is sent by a MEC Application" + + Reference + "ETSI GS MEC 015 2.2.1, clause 6.2.5", + "ETSI GS MEC 015 2.2.1, clause 7.2.2", + "ETSI GS MEC 015 2.2.1, clause 8.3.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a bwInfo containing + allocationId indicating value ALLOCATION_ID; + } + + // MEC 015 Clause 6.2.2 + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "bwm/v1/bw_allocations/{BW_UNKNOWN_ALLOCATION_ID}"; + from the MEC_APP entity + } + then { + // MEC 015 Clause 8.4.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } } - then { - // MEC 015 Clause 8.4.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_TM_004_OK" + + Test objective + "Check that the IUT updates the requested bandwidth requirements when commanded by a MEC Application" + + Reference + "ETSI GS MEC 015 2.2.1, clause 6.2.4", + "ETSI GS MEC 015 2.2.1, clause 7.2.2", + "ETSI GS MEC 015 2.2.1, clause 8.3.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a bwInfo containing + allocationId indicating value ALLOCATION_ID; + } + + // MEC 015 Clause 6.2.4 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "bwm/v1/bw_allocations/{BW_ALLOCATION_ID}", + body containing + bwInfo containing + appInsId indicating value APP_INSTANCE_ID, + fixedAllocation indicating value SOME_NEW_ALLOCATION, + allocationDirection indicating value SOME_DIRECTION;;; + from the MEC_APP entity + } + then { + // MEC 015 Clause 8.3.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + bwInfo containing + appInsId set to APP_INSTANCE_ID, + fixedAllocation set to SOME_ALLOCATION, + allocationDirection set to SOME_DIRECTION;;; + to the MEC_APP entity + } } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_TM_005_OK" - - Test objective - "Check that the IUT updates the requested bandwidth requirements - when commanded by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 8.3.3.2", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a app_instance containing - appInsId indicating value APP_INSTANCE_ID - ; - } - - // MEC 015 Clause 6.2.4 - Expected behaviour - ensure that { - when { - the IUT entity receives a vPUT containing - uri indicating value "bwm/v1/bw_allocations/{allocationId}", - query_parameters containing - allocationId indicating value BW_ALLOCATION_ID, - body containing - bwInfo containing - appInsId indicating value APP_INSTANCE_ID, - fixedAllocation indicating value SOME_NEW_ALLOCATION, - allocationDirection indicating value SOME_DIRECTION - ; - ;; - ; - from the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_TM_004_BR_01" + + Test objective + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application - sessionFilter shall be omitted" + + Reference + "ETSI GS MEC 015 2.2.1, clause 6.2.4", + "ETSI GS MEC 015 2.2.1, clause 7.2.2", + "ETSI GS MEC 015 2.2.1, clause 8.3.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a bwInfo containing + allocationId indicating value ALLOCATION_ID, + appInsId indicating value APP_INSTANCE_ID, + requestType indicating value APPLICATION_SPECIFIC_BW_ALLOCATION, + sessionFilter indicating value omit; + } + + // MEC 015 Clause 6.2.4 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "bwm/v1/bw_allocations/{BW_ALLOCATION_ID}", + body containing + bwInfo containing + appInsId indicating value APP_INSTANCE_ID, + requestType indicating value APPLICATION_SPECIFIC_BW_ALLOCATION, + sessionFilter indicating value SESSION_FILTER_VALUE;;; + from the MEC_APP entity + } + then { + // MEC 015 Clause 8.3.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } } - then { - // MEC 015 Clause 8.3.3.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" - body containing - bwInfo containing - appInsId set to APP_INSTANCE_ID, - fixedAllocation set to SOME_ALLOCATION, - allocationDirection set to SOME_DIRECTION - ; - ; - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_TM_004_BR_02" + + Test objective + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application - sessionFilter shall be present" + + Reference + "ETSI GS MEC 015 2.2.1, clause 6.2.4", + "ETSI GS MEC 015 2.2.1, clause 7.2.2", + "ETSI GS MEC 015 2.2.1, clause 8.3.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a bwInfo containing + allocationId indicating value ALLOCATION_ID, + appInsId indicating value APP_INSTANCE_ID, + requestType indicating value SESSION_SPECIFIC_BW_ALLOCATION, + sessionFilter indicating value SESSION_FILTER_VALUE; + } + + // MEC 015 Clause 6.2.4 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "bwm/v1/bw_allocations/{BW_ALLOCATION_ID}", + body containing + bwInfo containing + appInsId indicating value APP_INSTANCE_ID, + requestType indicating value SESSION_SPECIFIC_BW_ALLOCATION, + sessionFilter indicating value omit;;; + from the MEC_APP entity + } + then { + // MEC 015 Clause 8.3.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_TM_005_BR" - - Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 8.3.3.2", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a app_instance containing - appInsId indicating value APP_INSTANCE_ID - ; - } - - // MEC 015 Clause 6.2.4 - Expected behaviour - ensure that { - when { - the IUT entity receives a vPUT containing - uri indicating value "bwm/v1/bw_allocations/{allocationId}", - query_parameters containing - allocationId indicating value BW_ALLOCATION_ID, - body containing - bwInfo containing - appInsId indicating value APP_INSTANCE_ID, - fixedAllocation indicating value SOME_ALLOCATION, - allocationDirection indicating value INVALID_DIRECTION - ; - ;; - ; - from the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_TM_004_NF" + + Test objective + "Check that the IUT responds with an error when a request for an unknown URI is sent by a MEC Application" + + Reference + "ETSI GS MEC 015 2.2.1, clause 6.2.4", + "ETSI GS MEC 015 2.2.1, clause 7.2.2", + "ETSI GS MEC 015 2.2.1, clause 8.3.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a bwInfo containing + allocationId indicating value ALLOCATION_ID; + } + + // MEC 015 Clause 6.2.4 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "bwm/v1/bw_allocations/{BW_UNKNOWN_ALLOCATION_ID}", + body containing + bwInfo containing + appInsId indicating value APP_INSTANCE_ID, + fixedAllocation indicating value SOME_ALLOCATION, + allocationDirection indicating value SOME_DIRECTION;;; + from the MEC_APP entity + } + then { + // MEC 015 Clause 8.3.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } } - then { - // MEC 015 Clause 8.3.3.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_TM_005_OK" + + Test objective + "Check that the IUT when provided with just the changes (deltas) updates the requested bandwidth requirements + when commanded by a MEC Application" + + Reference + "ETSI GS MEC 015 2.2.1, clause 6.2.4", + "ETSI GS MEC 015 2.2.1, clause 7.2.2", + "ETSI GS MEC 015 2.2.1, clause 8.3.3.3" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a bwInfo containing + allocationId indicating value ALLOCATION_ID, + fixedAllocation indicating value SOME_ALLOCATION, + allocationDirection indicating value SOME_DIRECTION; + } + + // MEC 015 Clause 6.2.4 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPATCH containing + uri indicating value "bwm/v1/bw_allocations/{BW_ALLOCATION_ID}", + body containing + bwInfoDeltas containing + appInsId indicating value APP_INSTANCE_ID, + fixedAllocation indicating value NEW_ALLOCATION, + allocationDirection indicating value SOME_DIRECTION;;; + from the MEC_APP entity + } + then { + // MEC 015 Clause 8.3.3.3 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + bwInfo containing + appInsId set to APP_INSTANCE_ID, + fixedAllocation set to NEW_ALLOCATION, + allocationDirection set to SOME_DIRECTION;;; + to the MEC_APP entity + } } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_TM_005_NF" - - Test objective - "Check that the IUT responds with an error when - a request for an unknown URI is sent by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 8.3.3.2", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a app_instance containing - appInsId indicating value APP_INSTANCE_ID - ; - } - - // MEC 015 Clause 6.2.4 - Expected behaviour - ensure that { - when { - the IUT entity receives a vPUT containing - uri indicating value "bwm/v1/bw_allocations/{allocationId}", - query_parameters containing - allocationId indicating value BW_UNKNOWN_ALLOCATION_ID, - body containing - bwInfo containing - appInsId indicating value APP_INSTANCE_ID, - fixedAllocation indicating value SOME_ALLOCATION, - allocationDirection indicating value SOME_DIRECTION - ; - ;; - ; - from the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_TM_005_BR_01" + + Test objective + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application - sessionFilter shall be omitted" + + Reference + "ETSI GS MEC 015 2.2.1, clause 6.2.4", + "ETSI GS MEC 015 2.2.1, clause 7.2.2", + "ETSI GS MEC 015 2.2.1, clause 8.3.3.3" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a bwInfo containing + allocationId indicating value ALLOCATION_ID, + appInsId indicating value APP_INSTANCE_ID, + requestType indicating value APPLICATION_SPECIFIC_BW_ALLOCATION, + sessionFilter indicating value omit; + } + + // MEC 015 Clause 6.2.4 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPATCH containing + uri indicating value "bwm/v1/bw_allocations/{BW_ALLOCATION_ID}", + body containing + bwInfo containing + appInsId indicating value APP_INSTANCE_ID, + requestType indicating value APPLICATION_SPECIFIC_BW_ALLOCATION, + sessionFilter indicating value SESSION_FILTER_VALUE;;; + from the MEC_APP entity + } + then { + // MEC 015 Clause 8.3.3.3 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } } - then { - // MEC 015 Clause 8.3.3.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_TM_005_BR_02" + + Test objective + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application - sessionFilter shall be present" + + Reference + "ETSI GS MEC 015 2.2.1, clause 6.2.4", + "ETSI GS MEC 015 2.2.1, clause 7.2.2", + "ETSI GS MEC 015 2.2.1, clause 8.3.3.3" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a bwInfo containing + allocationId indicating value ALLOCATION_ID, + appInsId indicating value APP_INSTANCE_ID, + requestType indicating value SESSION_SPECIFIC_BW_ALLOCATION, + sessionFilter indicating value SESSION_FILTER_VALUE; + } + + // MEC 015 Clause 6.2.4 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPATCH containing + uri indicating value "bwm/v1/bw_allocations/{BW_ALLOCATION_ID}", + body containing + bwInfo containing + appInsId indicating value APP_INSTANCE_ID, + requestType indicating value SESSION_SPECIFIC_BW_ALLOCATION, + sessionFilter indicating value omit;;; + from the MEC_APP entity + } + then { + // MEC 015 Clause 8.3.3.3 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_TM_006_OK" - - Test objective - "Check that the IUT when provided with just the changes (deltas) - updates the requested bandwidth requirements - when commanded by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 8.3.3.3", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a app_instance containing - appInsId indicating value APP_INSTANCE_ID - ; - } - - // MEC 015 Clause 6.2.4 - Expected behaviour - ensure that { - when { - the IUT entity receives a vPATCH containing - uri indicating value "bwm/v1/bw_allocations/{allocationId}", - query_parameters containing - allocationId indicating value BW_ALLOCATION_ID, - body containing - bwInfoDeltas containing - appInsId indicating value APP_INSTANCE_ID, - fixedAllocation indicating value SOME_ALLOCATION, - allocationDirection indicating value SOME_DIRECTION - ; - ;; - ; - from the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_TM_005_NF" + + Test objective + "Check that the IUT responds with an error when a request for an unknown URI is sent by a MEC Application" + + Reference + "ETSI GS MEC 015 2.2.1, clause 6.2.4", + "ETSI GS MEC 015 2.2.1, clause 7.2.2", + "ETSI GS MEC 015 2.2.1, clause 8.3.3.3" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a bwInfo containing + allocationId indicating value ALLOCATION_ID; + } + + // MEC 015 Clause 6.2.4 + Expected behaviour + ensure that { + when { + the IUT entity receives a vPATCH containing + uri indicating value "bwm/v1/bw_allocations/{BW_UNKNOWN_ALLOCATION_ID}", + body containing + bwInfo containing + appInsId indicating value APP_INSTANCE_ID, + fixedAllocation indicating value NEW_ALLOCATION, + allocationDirection indicating value SOME_DIRECTION;;; + from the MEC_APP entity + } + then { + // MEC 015 Clause 8.3.3.3 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } } - then { - // MEC 015 Clause 8.3.3.3 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" - body containing - bwInfo containing - appInsId set to APP_INSTANCE_ID, - fixedAllocation set to SOME_ALLOCATION, - allocationDirection set to SOME_DIRECTION - ; - ; - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_TM_006_OK" + + Test objective + "Check that the IUT unregisters from the Bandwidth Management Service when commanded by a MEC Application" + + Reference + "ETSI GS MEC 015 2.2.1, clause 6.2.3", + "ETSI GS MEC 015 2.2.1, clause 7.2.2", + "ETSI GS MEC 015 2.2.1, clause 8.3.3.5" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a bwInfo containing + allocationId indicating value ; + } + + // MEC 015 Clause 6.2.3ALLOCATION_ID + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "bwm/v1/bw_allocations/{ALLOCATION_ID}"; + from the MEC_APP entity + } + then { + // MEC 015 Clause 8.3.3.5 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "204 No Content"; + to the MEC_APP entity + } } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_TM_006_BR" - - Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 8.3.3.3", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a app_instance containing - appInsId indicating value APP_INSTANCE_ID - ; - } - - // MEC 015 Clause 6.2.4 - Expected behaviour - ensure that { - when { - the IUT entity receives a vPATCH containing - uri indicating value "bwm/v1/bw_allocations/{allocationId}", - query_parameters containing - allocationId indicating value BW_ALLOCATION_ID, - body containing - bwInfo containing - appInsId indicating value APP_INSTANCE_ID, - requestType indicating value INVALID_TYPE, - fixedAllocation indicating value SOME_ALLOCATION, - allocationDirection indicating value SOME_DIRECTION - ; - ;; - ; - from the MEC_APP entity - } - then { - // MEC 015 Clause 8.3.3.3 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_TM_006_NF" - - Test objective - "Check that the IUT responds with an error when - a request for an unknown URI is sent by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 8.3.3.3", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a app_instance containing - appInsId indicating value APP_INSTANCE_ID - ; - } - - // MEC 015 Clause 6.2.4 - Expected behaviour - ensure that { - when { - the IUT entity receives a vPATCH containing - uri indicating value "bwm/v1/bw_allocations/{allocationId}", - query_parameters containing - allocationId indicating value BW_UNKNOWN_ALLOCATION_ID, - body containing - bwInfo containing - appInsId indicating value APP_INSTANCE_ID, - fixedAllocation indicating value SOME_ALLOCATION, - allocationDirection indicating value SOME_DIRECTION - ; - ;; - ; - from the MEC_APP entity - } - then { - // MEC 015 Clause 8.3.3.3 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_TM_007_OK" - - Test objective - "Check that the IUT unregisters from the Bandwidth Management Service - when commanded by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 8.3.3.5", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a allocation_instance containing - allocationId indicating value BW_ALLOCATION_ID - ; - } - - // MEC 015 Clause 6.2.3 - Expected behaviour - ensure that { - when { - the IUT entity receives a vDELETE containing - uri indicating value "bwm/v1/bw_allocations/{allocationId}", - query_parameters containing - allocationId indicating value BW_UNKNOWN_ALLOCATION_ID - ; - ; - from the MEC_APP entity - } - then { - // MEC 015 Clause 8.3.3.5 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "204 No Content" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC015_SRV_TM_007_NF" - - Test objective - "Check that the IUT responds with an error when - a request for an unknown URI is sent by a MEC Application" - - Reference "ETSI GS MEC 015 V2.1.1, clause 8.3.3.5", - "https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity not having a allocation_instance containing - allocationId indicating value BW_ALLOCATION_ID - ; - } - - // MEC 015 Clause 6.2.3 - Expected behaviour - ensure that { - when { - the IUT entity receives a vDELETE containing - uri indicating value "bwm/v1/bw_allocations/{allocationId}", - query_parameters containing - allocationId indicating value BW_UNKNOWN_ALLOCATION_ID - ; - ; - from the MEC_APP entity - } - then { - // MEC 015 Clause 8.3.3.5 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; - to the MEC_APP entity + } + + + Test Purpose { + TP Id "TP_MEC_MEC015_SRV_TM_006_NF" + + Test objective + "Check that the IUT responds with an error when a request for an unknown URI is sent by a MEC Application" + + Reference + "ETSI GS MEC 015 2.2.1, clause 6.2.3", + "ETSI GS MEC 015 2.2.1, clause 7.2.2", + "ETSI GS MEC 015 2.2.1, clause 8.3.3.5" + + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a bwInfo containing + allocationId indicating value ALLOCATION_ID; + } + + // MEC 015 Clause 6.2.3 + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "bwm/v1/bw_allocations/{BW_UNKNOWN_ALLOCATION_ID}"; + from the MEC_APP entity + } + then { + // MEC 015 Clause 8.3.3.5 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } } - } - } + } } diff --git a/Test Purposes/MEC016/MEO/UEAPPCTX/SysUeAppsContext.tplan2 b/Test Purposes/MEC016/MEO/UEAPPCTX/SysUeAppsContext.tplan2 index c576217dca44addd25b5cdc8251e8d1a58e48369..3bec70202663ce47c5fa069225b6923839b55c22 100644 --- a/Test Purposes/MEC016/MEO/UEAPPCTX/SysUeAppsContext.tplan2 +++ b/Test Purposes/MEC016/MEO/UEAPPCTX/SysUeAppsContext.tplan2 @@ -1,5 +1,5 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters */ diff --git a/Test Purposes/MEC016/MEO/UEAPPLOC/SysUeApplicationsLocation.tplan2 b/Test Purposes/MEC016/MEO/UEAPPLOC/SysUeApplicationsLocation.tplan2 index 1004f3277c62bf8dce6c2fcc188ce0efdcb75310..eb7019cc75e4b1ba66c7cdc484dbdf116ec4d6ef 100644 --- a/Test Purposes/MEC016/MEO/UEAPPLOC/SysUeApplicationsLocation.tplan2 +++ b/Test Purposes/MEC016/MEO/UEAPPLOC/SysUeApplicationsLocation.tplan2 @@ -1,5 +1,5 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters */ diff --git a/Test Purposes/MEC016/MEO/UEAPPS/SysUeApplications.tplan2 b/Test Purposes/MEC016/MEO/UEAPPS/SysUeApplications.tplan2 index ab02c9caf6c5dce34ab63006f588ce184c57e289..0adef416d8bef197764a308e85741951dc44b320 100644 --- a/Test Purposes/MEC016/MEO/UEAPPS/SysUeApplications.tplan2 +++ b/Test Purposes/MEC016/MEO/UEAPPS/SysUeApplications.tplan2 @@ -1,5 +1,5 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters */ diff --git a/Test Purposes/MEC021/SRV/AMS/Ams.tplan2 b/Test Purposes/MEC021/SRV/AMS/Ams.tplan2 new file mode 100644 index 0000000000000000000000000000000000000000..9584832b41ee7e3fccefcd00e2a1ab46377464d5 --- /dev/null +++ b/Test Purposes/MEC021/SRV/AMS/Ams.tplan2 @@ -0,0 +1,1560 @@ +/* +Copyright (c) ETSI 2018-2023. + +This software is subject to copyrights owned by ETSI. Non-exclusive permission +is hereby granted, free of charge, to copy, reproduce and amend this file +under the following conditions: It is provided "as is", without warranty of any +kind, expressed or implied. + +ETSI shall never be liable for any claim, damages, or other liability arising +from its use or inability of use.This permission does not apply to any documentation +associated with this file for which ETSI keeps all rights reserved. The present +copyright notice shall be included in all copies of whole or part of this +file and shall not imply any sub-license right. +*/ + +Package MEC_MEC021_SRV_AMS_BV { + + import all from MEC_Common; + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_001_OK_01" + + Test objective + "Check that the AMS service returns information about the registered application mobility services when requested" + + Reference + "ETSI GS MEC 021 3.1.1, clause 7.2.2", + "ETSI GS MEC 021 3.1.1, clause 8.3.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity having a RegistrationInfoList containing + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_1, + serviceConsumerId indicating value SERVICE_CONSUMER_ID_1;, + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_2;; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/amsi/v1/app_mobility_services"; + from the AMS_CLIENT entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "200 OK", + body containing + RegistrationInfoList containing + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_1;, + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_2;;;; + to the AMS_CLIENT entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_001_OK_02" + + Test objective + "Check that the AMS service returns information about the a specific registered application mobility service when requested - filter" + + Reference + "ETSI GS MEC 021 3.1.1, clause 7.2.2", + "ETSI GS MEC 021 3.1.1, clause 8.3.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity having a RegistrationInfoList containing + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_1, + serviceConsumerId indicating value SERVICE_CONSUMER_ID_1;, + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_2;; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/amsi/v1/app_mobility_services?filter=(eq,appMobilityServiceId,{APP_MOBILITY_SERVICE_ID_1})"; + from the AMS_CLIENT entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "200 OK", + body containing + RegistrationInfoList containing + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_1;;;; + to the AMS_CLIENT entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_001_OK_03" + + Test objective + "Check that the AMS service returns information about the a specific registered application mobility service when requested - filter" + + Reference + "ETSI GS MEC 021 3.1.1, clause 7.2.2", + "ETSI GS MEC 021 3.1.1, clause 8.3.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity having a RegistrationInfoList containing + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_1, + serviceConsumerId containing + appInstanceId indicating value APP_INSTANCE_ID_1;;, + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_2;; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/amsi/v1/app_mobility_services?filter=(eq,serviceConsumerId[appInstanceId],{APP_INSTANCE_ID_1})"; + from the AMS_CLIENT entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "200 OK", + body containing + RegistrationInfoList containing + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_1, + serviceConsumerId containing + appInstanceId indicating value APP_INSTANCE_ID_1;;;;; + to the AMS_CLIENT entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_001_OK_04" + + Test objective + "Check that the AMS service returns information about the a specific registered application mobility service when requested - exclude_fields" + + Reference + "ETSI GS MEC 021 3.1.1, clause 7.2.2", + "ETSI GS MEC 021 3.1.1, clause 8.3.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity having a RegistrationInfoList containing + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_1;, + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_2;; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/amsi/v1/app_mobility_services?filter=(eq,appMobilityServiceId,{APP_MOBILITY_SERVICE_ID_1})&exclude_fields=[serviceConsumerId]"; + from the AMS_CLIENT entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "200 OK", + body containing + RegistrationInfoList containing + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_1, + not serviceConsumerId;;;; + to the AMS_CLIENT entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_001_OK_05" + + Test objective + "Check that the AMS service returns information about the registered application mobility services when requested - No registered application mobility service" + + Reference + "ETSI GS MEC 021 3.1.1, clause 7.2.2", + "ETSI GS MEC 021 3.1.1, clause 8.3.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity not having a RegistrationInfoList + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/amsi/v1/app_mobility_services"; + from the AMS_CLIENT entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "200 OK", + body indicating value omit; + to the AMS_CLIENT entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_001_BR" + + Test objective + "Check that the AMS service returns an error when receives a query about a registered application mobility service with wrong parameters" + + Reference + "ETSI GS MEC 021 3.1.1, clause 7.2.2", + "ETSI GS MEC 021 3.1.1, clause 8.3.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/amsi/v1/app_mobility_services?filter=(appMobilityServiceId,eq,{APP_MOBILITY_SERVICE_ID_1})"; // Wrong filter arguments + from the AMS_CLIENT entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "400 Bad Request"; + to the AMS_CLIENT entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_002_OK" + + Test objective + "Check that the AMS service creates a new application mobility services when requested" + + Reference + "ETSI GS MEC 021 3.1.1, clause 6.2", + "ETSI GS MEC 021 3.1.1, clause 7.2.2", + "ETSI GS MEC 021 3.1.1, clause 8.3.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity being_in idle_state + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/amsi/v1/app_mobility_services", + body containing + RegistrationInfo containing + serviceConsumerId containing + appInstanceId set to APP_INS_ID;;;; + from the AMS_CLIENT entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "201 Created", + body containing + RegistrationInfo containing + appMobilityServiceId set to any_value, + serviceConsumerId containing + appInstanceId set to APP_INS_ID;;;; + to the AMS_CLIENT entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_002_BR" // Negative test: 400 Bad request + + Test objective + "Check that the AMS service sends an error when it receives a malformed request to create a new application mobility service" + + Reference + "ETSI GS MEC 021 3.1.1, clause 6.2", + "ETSI GS MEC 021 3.1.1, clause 7.2.2", + "ETSI GS MEC 021 3.1.1, clause 8.3.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity being_in idle_state + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/amsi/v1/app_mobility_services", + body containing + RegistrationRequest containing + appMobilityServiceId indicating value any_value;;; // wrong field value: Shall be absent in POST requests, and present otherwise + from the AMS_CLIENT entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "400 Bad Request"; + to the AMS_CLIENT entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_003_OK" + + Test objective + "Check that the AMS service returns information about the available subscriptions when requested" + + Reference + "ETSI GS MEC 021 3.1.1, clause 6.9", + "ETSI GS MEC 021 3.1.1, clause 7.3.4", + "ETSI GS MEC 021 3.1.1, clause 8.6.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity having a AMS_subscription containing + _link containing + self indicating value SUBSCRIPTION_HREF_VALUE;, + subscriptionType indicating value SUBSCRIPTION_TYPE; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/amsi/v1/subscriptions", + query_parameters containing + subscriptionType indicating value SUBSCRIPTION_TYPE;; // mobility_proc or adj_app_info + from the MEC_SUB entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "200 OK", + body containing + SubscriptionLinkList containing + subscription containing + _links containing + self indicating value SUBSCRIPTION_HREF_VALUE;, + subscriptionType indicating value SUBSCRIPTION_TYPE, // mobility_proc or adj_app_info + callbackReference set to any_value;;;; + to the MEC_SUB entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_003_BR" + + Test objective + "Check that the AMS service sends an error when it receives a malformed query about the available subscriptions" + + Reference + "ETSI GS MEC 021 3.1.1, clause 6.9", + "ETSI GS MEC 021 3.1.1, clause 7.3.4", + "ETSI GS MEC 021 3.1.1, clause 8.6.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity having a AMS_subscription containing + _link containing + self indicating value SUBSCRIPTION_HREF_VALUE;, + subscriptionType indicating value SUBSCRIPTION_TYPE; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/amsi/v1/subscriptions/", + query_parameters containing + subscriptionType indicating value "info_app_adj";; // Wrong parameter + from the MEC_SUB entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "400 Bad Request"; + to the MEC_SUB entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_004_OK" + + Test objective + "Check that the AMS service creates a notification subscriptions when requested" + + Reference + "ETSI GS MEC 021 3.1.1, clause 6.9", + "ETSI GS MEC 021 3.1.1, clause 7.3.2", + "ETSI GS MEC 021 3.1.1, clause 7.3.3", + "ETSI GS MEC 021 3.1.1, clause 8.6.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity being_in idle_state + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/amsi/v1/subscriptions", + body containing + NotificationSubscription containing + subscriptionType indicating value SUBSCRIPTION_TYPE, // MobilityProcedureSubscription or AdjacentAppInfoSubscription + callbackReference indicating value CALLBACK_REFERENCE, + filterCriteria set to any_value;;; + from the AMS_CLIENT entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "201 Created", + body containing + NotificationSubscription containing + subscriptionType indicating value SUBSCRIPTION_TYPE, + callbackReference indicating value CALLBACK_REFERENCE;;; + to the AMS_CLIENT entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_004_BR" + + Test objective + "Check that the AMS service sends an error when it receives a malformed request to create a notification subscription" + + Reference + "ETSI GS MEC 021 3.1.1, clause 6.9", + "ETSI GS MEC 021 3.1.1, clause 7.3.2", + "ETSI GS MEC 021 3.1.1, clause 7.3.3", + "ETSI GS MEC 021 3.1.1, clause 8.6.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity being_in idle_state + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/amsi/v1/subscriptions/", + body containing + NotificationSubscription containing + subscriptionType indicating value "Subscription", // wrong parameter: MobilityProcedureSubscription or AdjacentAppInfoSubscription + callbackReference indicating value CALLBACK_REFERENCE;;; + from the AMS_CLIENT entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "400 Bad Request"; + to the AMS_CLIENT entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_005_OK" + + Test objective + "Check that the AMS service returns information about a given subscription when requested" + + Reference + "ETSI GS MEC 021 3.1.1, clause 6.9", + "ETSI GS MEC 021 3.1.1, clause 7.4.2", + "ETSI GS MEC 021 3.1.1, clause 7.4.3", + "ETSI GS MEC 021 3.1.1, clause 8.7.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity having a AMS_subscription containing + _link containing + self indicating value SUBSCRIPTION_HREF_VALUE;, + callbackReference indicating value CALLBACK_REFERENCE, + subscriptionType indicating value SUBSCRIPTION_TYPE; // MobilityProcedureSubscription or AdjacentAppInfoSubscription + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value SUBSCRIPTION_HREF_VALUE; + from the MEC_SUB entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "200 OK", + body containing + NotificationSubscription containing + subscriptionType indicating value SUBSCRIPTION_TYPE, // MobilityProcedureSubscription or AdjacentAppInfoSubscription + callbackReference indicating value CALLBACK_REFERENCE;;; + to the MEC_SUB entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_005_NF" + + Test objective + "Check that the AMS service returns an error when receives a query about a not existing subscription" + + Reference + "ETSI GS MEC 021 3.1.1, clause 6.9", + "ETSI GS MEC 021 3.1.1, clause 7.4.2", + "ETSI GS MEC 021 3.1.1, clause 7.4.3", + "ETSI GS MEC 021 3.1.1, clause 8.7.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity having a AMS_subscription containing + _link containing + self indicating value SUBSCRIPTION_HREF_VALUE;, + callbackReference indicating value CALLBACK_REFERENCE, + subscriptionType indicating value SUBSCRIPTION_TYPE; // MobilityProcedureSubscription or AdjacentAppInfoSubscription + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value UNKNOWN_SUBSCRIPTION_HREF_VALUE; + from the MEC_SUB entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "404 Not Found"; + to the MEC_SUB entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_006_OK" + + Test objective + "Check that the AMS service deletes a given subscription when requested" + + Reference + "ETSI GS MEC 021 3.1.1, clause 6.7", + "ETSI GS MEC 021 3.1.1, clause 7.3.2", + "ETSI GS MEC 021 3.1.1, clause 7.3.3", + "ETSI GS MEC 021 3.1.1, clause 8.7.3.5" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity having a AMS_subscription containing + _link containing + self indicating value SUBSCRIPTION_HREF_VALUE;; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value SUBSCRIPTION_HREF_VALUE; + from the MEC_SUB entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "204 No Content"; + to the MEC_SUB entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_006_NF" + + Test objective + "Check that the AMS service sends an error when it receives a delete request for a not existing subscription" + + Reference + "ETSI GS MEC 021 3.1.1, clause 6.7", + "ETSI GS MEC 021 3.1.1, clause 7.3.2", + "ETSI GS MEC 021 3.1.1, clause 7.3.3", + "ETSI GS MEC 021 3.1.1, clause 8.7.3.5" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity having a AMS_subscription containing + _link containing + self indicating value SUBSCRIPTION_HREF_VALUE;; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value UNKNOWN_SUBSCRIPTION_HREF_VALUE; + from the MEC_SUB entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "404 Not Found"; + to the MEC_SUB entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_007_OK" + + Test objective + "Check that the AMS service modifies a given subscription when requested" + + Reference + "ETSI GS MEC 021 3.1.1, clause 7.3.2", + "ETSI GS MEC 021 3.1.1, clause 7.3.3", + "ETSI GS MEC 021 3.1.1, clause 8.7.3.2" + + Config Id Config_MEC_1 + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity having a AMS_subscription containing + _link containing + self indicating value SUBSCRIPTION_HREF_VALUE;, + callbackReference indicating value CALLBACK_REFERENCE, + subscriptionType indicating value SUBSCRIPTION_TYPE; // MobilityProcedureSubscription or AdjacentAppInfoSubscription + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value SUBSCRIPTION_HREF_VALUE, + body containing + NotificationSubscription containing + subscriptionType indicating value SUBSCRIPTION_TYPE, // MobilityProcedureSubscription or AdjacentAppInfoSubscription + callbackReference indicating value NEW_CALLBACK_REFERENCE;;; + from the MEC_SUB entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "200 OK", + body containing + NotificationSubscription containing + subscriptionType indicating value SUBSCRIPTION_TYPE, // MobilityProcedureSubscription or AdjacentAppInfoSubscription + callbackReference indicating value NEW_CALLBACK_REFERENCE;;; + to the MEC_SUB entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_007_BR" + + Test objective + "Check that the AMS service sends an error when it receives a malformed modify request for a given subscription" + + Reference + "ETSI GS MEC 021 3.1.1, clause 7.3.2", + "ETSI GS MEC 021 3.1.1, clause 7.3.3", + "ETSI GS MEC 021 3.1.1, clause 8.7.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity having a AMS_subscription containing + _link containing + self indicating value SUBSCRIPTION_HREF_VALUE;, + callbackReference indicating value CALLBACK_REFERENCE, + subscriptionType indicating value SUBSCRIPTION_TYPE; // MobilityProcedureSubscription or AdjacentAppInfoSubscription + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value SUBSCRIPTION_HREF_VALUE, + body containing + NotificationSubscription containing + subscriptionType indicating value "Subscription", // Wrong parameter: MobilityProcedureSubscription or AdjacentAppInfoSubscription + callbackReference indicating value NEW_CALLBACK_REFERENCE;;; + from the MEC_SUB entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "400 Bad Request"; + to the MEC_SUB entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_007_NF" + + Test objective + "Check that the AMS service sends an error when it receives a modify request for a not existing subscription" + + Reference + "ETSI GS MEC 021 3.1.1, clause 7.3.2", + "ETSI GS MEC 021 3.1.1, clause 7.3.3", + "ETSI GS MEC 021 3.1.1, clause 8.7.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity having a AMS_subscription containing + _link containing + self indicating value SUBSCRIPTION_HREF_VALUE;, + callbackReference indicating value CALLBACK_REFERENCE, + subscriptionType indicating value SUBSCRIPTION_TYPE; // MobilityProcedureSubscription or AdjacentAppInfoSubscription + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value UNKNOWN_SUBSCRIPTION_HREF_VALUE, + body containing + NotificationSubscription containing + subscriptionType indicating value SUBSCRIPTION_TYPE, // MobilityProcedureSubscription or AdjacentAppInfoSubscription + callbackReference indicating value NEW_CALLBACK_REFERENCE;;; + from the MEC_SUB entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "404 Not Found"; + to the MEC_SUB entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_008_OK" + + Test objective + "Check that the AMS service sends an AMS notification about a mobility procedure if the AMS service has an associated subscription and the event is generated" + + Reference + "ETSI GS MEC 021 3.1.1, clause 7.4.2", + "ETSI GS MEC 021 3.1.1, clause 8.9.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS_NOTIFICATIONS + + Initial conditions with { + the IUT entity having a AMS_subscription containing + subscriptionType indicating value "MobilityProcedureSubscription", + callbackReference indicating value CALLBACK_URI, + filterCriteria containing + appInstanceId set to APP_INSTANCE_ID;; + } + + Expected behaviour + ensure that { + when { + the IUT entity generates a mobility_procedure_event containing + appInstanceId set to APP_INSTANCE_ID; + } + then { + the IUT entity sends a vPOST containing + uri indicating value CALLBACK_URI, + body containing + notificationType indicating value "MobilityProcedureNotification", + targetAppInfo containing + appInstanceId set to APP_INSTANCE_ID;, + mobilityStatus set to any_value;; + to the MEC_SUB entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_009_OK" + + Test objective + "Check that the AMS service sends an AMS notification about adjacent application instances if the AMS service has an associated subscription and the event is generated" + + Reference + "ETSI GS MEC 021 3.1.1, clause 7.4.3", + "ETSI GS MEC 021 3.1.1, clause 8.9.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS_NOTIFICATIONS + + Initial conditions with { + the IUT entity having a AMS_subscription containing + subscriptionType indicating value "AdjacentAppInfoSubscription", + callbackReference indicating value CALLBACK_URI, + filterCriteria containing + appInstanceId set to APP_INSTANCE_ID;; + } + + Expected behaviour + ensure that { + when { + the IUT entity generates a adjacent_app_info_event containing + appInstanceId set to APP_INSTANCE_ID; + } + then { + the IUT entity sends a vPOST containing + uri indicating value CALLBACK_URI, + body containing + notificationType indicating value "AdjacentAppInfoNotification", + adjacentAppInfo containing + appInstanceId set to APP_INSTANCE_ID;;; + to the MEC_SUB entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_010_OK" + + Test objective + "Check that the AMS service sends an AMS notification on subscription expiration if the AMS service has an associated subscription and the event is generated" + + Reference + "ETSI GS MEC 021 3.1.1, clause 7.4.4", + "ETSI GS MEC 021 3.1.1, clause 8.9.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS_NOTIFICATIONS + + Initial conditions with { + the IUT entity having a AMS_subscription containing + subscriptionType indicating value any_value, // A valid subscription types + callbackReference indicating value CALLBACK_URI, + _links containing + self set to SUBSCRIPTION_HREF_VALUE ;, + subscriptionId set to SUBSCRIPTION_ID, + expiryDeadline set to EXPIRY_DEADLINE; + } + + Expected behaviour + ensure that { + when { + the IUT entity generates a expiry_notification_event containing + subscriptionId set to SUBSCRIPTION_ID; + } + then { + the IUT entity sends a vPOST containing + uri indicating value CALLBACK_URI, + body containing + notificationType indicating value "ExpiryNotification", + expiryDeadline set to EXPIRY_DEADLINE;; + to the MEC_SUB entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_011_OK" + + Test objective + "Check that the AMS service returns information about this individual application mobility service" + + Reference + "ETSI GS MEC 021 3.1.1, clause 7.2.2", + "ETSI GS MEC 021 3.1.1, clause 8.4.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity having a RegistrationInfoList containing + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_1, + serviceConsumerId indicating value SERVICE_CONSUMER_ID_1;, + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_2;; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/amsi/v1/app_mobility_services/{APP_MOBILITY_SERVICE_ID_1}"; + from the AMS_CLIENT entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "200 OK", + body containing + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID;;; + to the AMS_CLIENT entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_011_NF" + + Test objective + "Check that the AMS service sends an error when receives a query about a not existing individual application mobility service" + + Reference + "ETSI GS MEC 021 3.1.1, clause 7.2.2", + "ETSI GS MEC 021 3.1.1, clause 8.4.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity having a RegistrationInfoList containing + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_1, + serviceConsumerId indicating value SERVICE_CONSUMER_ID_1;, + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_2;; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/amsi/v1/app_mobility_services/{NON_EXISTENT_APP_MOBILITY_SERVICE_ID}"; + from the AMS_CLIENT entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "404 Not Found"; + to the AMS_CLIENT entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_012_OK" + + Test objective + "Check that the AMS service modifies the individual application mobility service when requested" + + Reference + "ETSI GS MEC 021 3.1.1, clause 6.4", + "ETSI GS MEC 021 3.1.1, clause 7.2.2", + "ETSI GS MEC 021 3.1.1, clause 8.4.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity having a RegistrationInfoList containing + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_1, + serviceConsumerId containing + appInstanceId indicating value SERVICE_CONSUMER_ID_1;;, + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_2;; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "/amsi/v1/app_mobility_services/{APP_MOBILITY_SERVICE_ID_1}", + body containing + RegistrationInfo containing + serviceConsumerId containing + appInstanceId indicating value NEW_APP_INS_ID_NEW_1;;;; + from the AMS_CLIENT entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "200 OK", + body containing + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_1, + serviceConsumerId containing + appInstanceId indicating value NEW_APP_INS_ID_NEW_1;;;; + to the AMS_CLIENT entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_012_BR" + + Test objective + "Check that the AMS service sends an error when receives a request to modify a individual application mobility service using bad parameters" + + Reference + "ETSI GS MEC 021 3.1.1, clause 6.4", + "ETSI GS MEC 021 3.1.1, clause 7.2.2", + "ETSI GS MEC 021 3.1.1, clause 8.4.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity having a RegistrationInfoList containing + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_1, + serviceConsumerId containing + appInstanceId indicating value SERVICE_CONSUMER_ID_1;;, + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_2;; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "/amsi/v1/app_mobility_services/{APP_MOBILITY_SERVICE_ID_1}", + body containing + RegistrationInfo containing + appMobilityServiceId indicating value omit;;; // Wrong field value: Shall be present + from the AMS_CLIENT entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "400 Bad Request"; + to the AMS_CLIENT entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_012_NF" + + Test objective + "Check that the AMS service sends an error when receives a request to modify a not existing individual application mobility service" + + Reference + "ETSI GS MEC 021 3.1.1, clause 6.4", + "ETSI GS MEC 021 3.1.1, clause 7.2.2", + "ETSI GS MEC 021 3.1.1, clause 8.4.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity having a RegistrationInfoList containing + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_1, + serviceConsumerId containing + appInstanceId indicating value SERVICE_CONSUMER_ID_1;;, + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_2;; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "/amsi/v1/app_mobility_services/{NON_EXISTENT_APP_MOBILITY_SERVICE_ID}", + body containing + RegistrationInfo containing + serviceConsumerId containing + appInstanceId indicating value NEW_APP_INS_ID_NEW_1;;;; + from the AMS_CLIENT entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "404 Not Found"; + to the AMS_CLIENT entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_013_OK" + + Test objective + "Check that the AMS service de-register the individual application mobility service and delete the resource that represents the individual application mobility service" + + Reference + "ETSI GS MEC 021 3.1.1, clause 6.3", + "ETSI GS MEC 021 3.1.1, clause 7.2.2", + "ETSI GS MEC 021 3.1.1, clause 8.4.3.5" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity having a RegistrationInfoList containing + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_1, + serviceConsumerId containing + appInstanceId indicating value SERVICE_CONSUMER_ID_1;;, + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_2;; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "/amsi/v1/app_mobility_services/{APP_MOBILITY_SERVICE_ID_1}"; + from the AMS_CLIENT entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "204 No Content"; + to the AMS_CLIENT entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_013_NF" + + Test objective + "Check that the AMS service sends an error when is requested to delete the resource + that represents the individual application mobility service" + + Reference + "ETSI GS MEC 021 3.1.1, clause 6.3", + "ETSI GS MEC 021 3.1.1, clause 7.2.2", + "ETSI GS MEC 021 3.1.1, clause 8.4.3.5" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity having a RegistrationInfoList containing + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_1, + serviceConsumerId containing + appInstanceId indicating value SERVICE_CONSUMER_ID_1;;, + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_2;; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "/amsi/v1/app_mobility_services/{NON_ESISTENT_APP_MOBILITY_SERVICE_ID}"; + from the AMS_CLIENT entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "404 Not Found"; + to the AMS_CLIENT entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_014_OK" + + Test objective + "Check that the AMS service deregister an individual application mobility service on expiry of the timer associated with the service" + + Reference + "ETSI GS MEC 021 3.1.1, clause 7.2.2", + "ETSI GS MEC 021 3.1.1, clause 8.5.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity having a RegistrationInfoList containing + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_1, + serviceConsumerId containing + appInstanceId indicating value SERVICE_CONSUMER_ID_1;;, + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_2;; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/amsi/v1/app_mobility_services/{APP_MOBILITY_SERVICE_ID}/deregisterTask"; + from the AMS_CLIENT entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "204 No Content"; + to the AMS_CLIENT entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_014_NF" + + Test objective + "Check that the AMS service send an error when is requested to deregister a not existent individual application mobility service" + + Reference + "ETSI GS MEC 021 3.1.1, clause 7.2.2", + "ETSI GS MEC 021 3.1.1, clause 8.5.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity having a RegistrationInfoList containing + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_1, + serviceConsumerId containing + appInstanceId indicating value SERVICE_CONSUMER_ID_1;;, + RegistrationInfo containing + appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID_2;; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/amsi/v1/app_mobility_services/{NON_EXISTENT_APP_MOBILITY_SERVICE_ID}/deregisterTask"; + from the AMS_CLIENT entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "404 Not Found"; + to the AMS_CLIENT entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_015_OK_01" + + Test objective + "Check that the AMS service returns information about the registered application mobility services when requested" + + Reference + "ETSI GS MEC 021 3.1.1, clause 7.2.3", + "ETSI GS MEC 021 3.1.1, clause 8.8.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity having a AdjacentAppInstanceInfoList containing + AdjacentAppInstanceInfo containing + appInstanceId indicating value APP_INSTANCE_ID_1, + appDId indicating value APP_ID_1;, + AdjacentAppInstanceInfo containing + appInstanceId indicating value APP_INSTANCE_ID_2, + appDId indicating value APP_ID_2;; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/amsi/v1/queries/adjacent_app_instances"; + from the AMS_CLIENT entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "200 OK", + body containing + AdjacentAppInstanceInfoList containing + AdjacentAppInstanceInfo containing + appInstanceId indicating value APP_INSTANCE_ID_1, + appDId indicating value APP_ID_1;, + AdjacentAppInstanceInfo containing + appInstanceId indicating value APP_INSTANCE_ID_2, + appDId indicating value APP_ID_2;;;; + to the AMS_CLIENT entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_015_OK_02" + + Test objective + "Check that the AMS service returns information about the adjacent application instances when requested - filter" + + Reference + "ETSI GS MEC 021 3.1.1, clause 7.2.3", + "ETSI GS MEC 021 3.1.1, clause 8.8.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity having a AdjacentAppInstanceInfoList containing + AdjacentAppInstanceInfo containing + appInstanceId indicating value APP_INSTANCE_ID_1, + appDId indicating value APP_ID_1;, + AdjacentAppInstanceInfo containing + appInstanceId indicating value APP_INSTANCE_ID_2, + appDId indicating value APP_ID_2;; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/amsi/v1/queries/adjacent_app_instances?filter(eq,appInstanceId,{APP_INSTANCE_ID_1})"; + from the AMS_CLIENT entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "200 OK", + body containing + AdjacentAppInstanceInfoList containing + AdjacentAppInstanceInfo containing + appInstanceId indicating value APP_INSTANCE_ID_1, + appDId indicating value APP_ID_1;;;; + to the AMS_CLIENT entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_015_OK_03" + + Test objective + "Check that the AMS service returns information about a specified adjacent application instances when requested - filter" + + Reference + "ETSI GS MEC 021 3.1.1, clause 7.2.3", + "ETSI GS MEC 021 3.1.1, clause 8.8.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity having a AdjacentAppInstanceInfoList containing + AdjacentAppInstanceInfo containing + appInstanceId indicating value APP_INSTANCE_ID_1, + appDId indicating value APP_ID_1;, + AdjacentAppInstanceInfo containing + appInstanceId indicating value APP_INSTANCE_ID_2, + appDId indicating value APP_ID_2;, + AdjacentAppInstanceInfo containing + appInstanceId indicating value APP_INSTANCE_ID_3, + appDId indicating value APP_ID_3;; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/amsi/v1/queries/adjacent_app_instances?filter(eq,appInstanceId,{APP_INSTANCE_ID_1})&filter(eq,appDId,{APP_ID_3})"; + from the AMS_CLIENT entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "200 OK", + body containing + AdjacentAppInstanceInfoList containing + AdjacentAppInstanceInfo containing + appInstanceId indicating value APP_INSTANCE_ID_1, + appDId indicating value APP_ID_1;, + AdjacentAppInstanceInfo containing + appInstanceId indicating value APP_INSTANCE_ID_3, + appDId indicating value APP_ID_3;;;; + to the AMS_CLIENT entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_015_OK_04" + + Test objective + "Check that the AMS service returns information about a specified adjacent application instances when requested - No adjacent application instances" + + Reference + "ETSI GS MEC 021 3.1.1, clause 7.2.3", + "ETSI GS MEC 021 3.1.1, clause 8.8.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity not having a AdjacentAppInstanceInfoList + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/amsi/v1/queries/adjacent_app_instances"; + from the AMS_CLIENT entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status indicating value "200 OK", + body indicating value omit; + to the AMS_CLIENT entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_AMS_015_BR" + + Test objective + "Check that the AMS service sends an error about a specified adjacent application instances when request is inconsistent" + + Reference + "ETSI GS MEC 021 3.1.1, clause 7.2.3", + "ETSI GS MEC 021 3.1.1, clause 8.8.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_AMS + + Initial conditions with { + the IUT entity having a AdjacentAppInstanceInfoList containing + AdjacentAppInstanceInfo containing + appInstanceId indicating value APP_INSTANCE_ID_1, + appDId indicating value APP_ID_1;, + AdjacentAppInstanceInfo containing + appInstanceId indicating value APP_INSTANCE_ID_2, + appDId indicating value APP_ID_2;, + AdjacentAppInstanceInfo containing + appInstanceId indicating value APP_INSTANCE_ID_3, + appDId indicating value APP_ID_3;; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/amsi/v1/queries/adjacent_app_instances?filter(appInstanceId,eq,{APP_INSTANCE_ID_1})"; + from the AMS_CLIENT entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status set to "400 Bad Request"; + to the AMS_CLIENT entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC021_SRV_UETESTNOT_001_OK" + + Test objective + "Check that the IUT provides a test notification when requested by a MEC Application" + + Reference + "ETSI GS MEC 021 3.1.1, clause 6.9", + "ETSI GS MEC 021 3.1.1, clause 7.3.2", + "ETSI GS MEC 021 3.1.1, clause 7.3.3", + "ETSI GS MEC 021 3.1.1, clause 8.6.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/amsi/v1/subscriptions" + body containing + userLocationEventSubscription containing + subscriptionType indicating value SUBSCRIPTION_TYPE, // MobilityProcedureSubscription or AdjacentAppInfoSubscription + callbackReference indicating value CALLBACK_URL, + requestTestNotification indicating value true, + address indicating value ACR_SOME_IP;;; + from the MEC_APP entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "201 Created" + body containing + userLocationEventSubscription containing + subscriptionType indicating value SUBSCRIPTION_TYPE, // MobilityProcedureSubscription or AdjacentAppInfoSubscription + callbackReference indicating value CALLBACK_URL, + requestTestNotification indicating value true, // FIXME: To be confirmed + _links indicating value LINKS, + address indicating value ACR_SOME_IP;;; + to the MEC_APP entity + and the IUT entity sends a vPOST containing + Uri set to CALLBACK_URL + body containing + testNotification containing + notificationType indicating value "TestNotification", + _links indicating value LINKS;;; + to the MEC_APP entity + } + } + } + +} diff --git a/Test Purposes/MEC021/SRV/AMS/Ams_BO_BI.tplan2 b/Test Purposes/MEC021/SRV/AMS/Ams_BO_BI.tplan2 index e9762c2c5a20ce3a7c74ff76a02b8d517aa28964..d152394936209b78bf3d13a76b5770af8bb03568 100644 --- a/Test Purposes/MEC021/SRV/AMS/Ams_BO_BI.tplan2 +++ b/Test Purposes/MEC021/SRV/AMS/Ams_BO_BI.tplan2 @@ -1,5 +1,5 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. This software is subject to copyrights owned by ETSI. Non-exclusive permission is hereby granted, free of charge, to copy, reproduce and amend this file @@ -15,486 +15,7 @@ file and shall not imply any sub-license right. Package MEC_MEC021_SRV_AMS_BO_BI { - import all from MEC_Common; - - Test Purpose { - TP Id "TP_MEC_MEC021_SRV_AMS_001_BR" // Negative test: 400 Bad request - - Test objective - "Check that the AMS service returns an error when receives a query about a registered application mobility service with wrong parameters" - - Reference "ETSI GS MEC 021 2.1.1, clause 8.3.3.1" - - Config Id Config_MEC_1 - PICS Selection PIC_AMS + import all from MEC_Common; - Initial conditions with { - the IUT entity having a AppMobilityServiceInfo containing - appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID - ; - } - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "/amsi/v1/appMobilityServices", - query_parameters containing - appMobilityService indicating value APP_MOBILITY_SERVICE_ID //wrong parameter, it should be appMobilityServiceId - ; - ; from the AMS_CLIENT entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "400 Bad Request" - ; to the AMS_CLIENT entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC021_SRV_AMS_002_BR" // Negative test: 400 Bad request - - Test objective - "Check that the AMS service sends an error when it receives a malformed request to create a new application mobility service" - - Reference "ETSI GS MEC 021 2.1.1, clause 8.3.3.4" - - Config Id Config_MEC_1 - PICS Selection PIC_AMS - - Initial conditions with { - the IUT entity being_in idle_state - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "/amsi/v1/appMobilityServices", - body containing - RegistrationRequest containing //Note: at the moment the only element that is defined is RegistrationInfo. Not sure if they are the same. - serviceConsumerId containing - appInstance set to APP_INS_ID //wrong parameter, it should be appInstanceId - ; - ; - ; - ; from the AMS_CLIENT entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "400 Bad Request" - ; to the AMS_CLIENT entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC021_SRV_AMS_003_BR" // Negative test: 400 Bad request - - Test objective - "Check that the AMS service sends an error when it receives a malformed query about the available subscriptions" - - Reference "ETSI GS MEC 021 2.1.1, clause 8.6.3.1" - - Config Id Config_MEC_1 - PICS Selection PIC_AMS - - Initial conditions with { - the IUT entity having a AMS_subscription containing - _link containing - self indicating value SUBSCRIPTION_HREF_VALUE - ;, - subscriptionType indicating value SUBSCRIPTION_TYPE - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "/amsi/v1/subscriptions/", - query_parameters containing - subscriptionTyp indicating value SUBSCRIPTION_TYPE //wrong parameter, it should be subscriptionType - ; - ; from the MEC_SUB entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "400 Bad Request" - ; to the MEC_SUB entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC021_SRV_AMS_004_BR" // Negative test: 400 Bad request - - Test objective - "Check that the AMS service sends an error when it receives a malformed request to create a notification subscription - Permitted SUBSCRIPTION_TYPE are: - - MobilityProcedureSubscription - - AdjacentAppInfoSubscription" - - Reference "ETSI GS MEC 021 2.1.1, clause 8.6.3.4" - - Config Id Config_MEC_1 - PICS Selection PIC_AMS - - Initial conditions with { - the IUT entity being_in idle_state - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "/amsi/v1/subscriptions/", - body containing - NotificationSubscription containing - subscriptionTyp indicating value SUBSCRIPTION_TYPE, //wrong parameter, it should be subscriptionType - callbackReference indicating value CALLBACK_REFERENCE - ; - ; - ; from the AMS_CLIENT entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "400 Bad Request" - ; to the AMS_CLIENT entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC021_SRV_AMS_005_NF" // Negative test: 404 Not Found - - Test objective - "Check that the AMS service returns an error when receives a query about a not existing subscription" - - Reference "ETSI GS MEC 021 2.1.1, clause 8.7.3.1" - - Config Id Config_MEC_1 - PICS Selection PIC_AMS - - Initial conditions with { - the IUT entity not having a AMS_subscription containing - _link containing - self indicating value NON_EXISTENT_SUBSCRIPTION_HREF_VALUE - ; - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value NON_EXISTENT_SUBSCRIPTION_HREF_VALUE - ; from the MEC_SUB entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "404 Not Found" - ; to the MEC_SUB entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC021_SRV_AMS_006_NF" // Negative test: 404 Not Found - - Test objective - "Check that the AMS service sends an error when it receives a delete request for a not existing subscription" - - Reference "ETSI GS MEC 021 2.1.1, clause 8.7.3.5" - - Config Id Config_MEC_1 - PICS Selection PIC_AMS - - Initial conditions with { - the IUT entity not having a AMS_subscription containing - _link containing - self indicating value NON_EXISTENT_SUBSCRIPTION_HREF_VALUE - ; - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vDELETE containing - uri indicating value NON_EXISTENT_SUBSCRIPTION_HREF_VALUE - ; from the MEC_SUB entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "404 Not Found" - ; to the MEC_SUB entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC021_SRV_AMS_007_BR" // Negative test: 400 Bad request - - Test objective - "Check that the AMS service sends an error when it receives a malformed modify request for a given subscription. - Permitted SUBSCRIPTION_TYPE are: - - MobilityProcedureSubscription - - AdjacentAppInfoSubscription" - - Reference "ETSI GS MEC 021 2.1.1, clause 8.7.3.2" - - Config Id Config_MEC_1 - PICS Selection PIC_AMS - - Initial conditions with { - the IUT entity having a AMS_subscription containing - _link containing - self indicating value SUBSCRIPTION_HREF_VALUE - ;, - callbackReference indicating value CALLBACK_REFERENCE, - subscriptionType indicating value SUBSCRIPTION_TYPE - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPUT containing - uri indicating value SUBSCRIPTION_HREF_VALUE, - body containing - NotificationSubscription containing - subscriptionType indicating value SUBSCRIPTION_TYPE, - callbackReferenc indicating value NEW_CALLBACK_REFERENCE //wrong field, it should be callbackReference - ; - ; - ; from the MEC_SUB entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "400 Bad Request" - ; to the MEC_SUB entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC021_SRV_AMS_007_NF" // Negative test: 404 Not found - - Test objective - "Check that the AMS service sends an error when it receives a modify request for a not existing subscription" - - Reference "ETSI GS MEC 021 2.1.1, clause 8.7.3.2" - - Config Id Config_MEC_1 - PICS Selection PIC_AMS - - Initial conditions with { - the IUT entity not having a AMS_subscription containing - _link containing - self indicating value NON_EXISTENT_SUBSCRIPTION_HREF_VALUE - ; - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPUT containing - uri indicating value NON_EXISTENT_SUBSCRIPTION_HREF_VALUE - ; from the MEC_SUB entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "404 Not Found" - ; to the MEC_SUB entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC021_SRV_AMS_011_NF" - - Test objective - "Check that the AMS service sends an error when receives a query about a not existing individual application mobility service" - - Reference "ETSI GS MEC 021 2.0.10, clause 8.4.3.1" - - Config Id Config_MEC_1 - PICS Selection PIC_AMS - - Initial conditions with { - the IUT entity not having a AppMobilityServiceInfo containing - appMobilityServiceId indicating value NON_EXISTENT_APP_MOBILITY_SERVICE_ID - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "/amsi/v1/appMobilityServices/{NON_EXISTENT_APP_MOBILITY_SERVICE_ID}" - ; from the AMS_CLIENT entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "404 Not Found" - ; to the AMS_CLIENT entity - } - } - } - - - - - Test Purpose { - TP Id "TP_MEC_MEC021_SRV_AMS_012_NF" - - Test objective - "Check that the AMS service sends an error when receives a request to modify a not existing individual application mobility service" - - Reference "ETSI GS MEC 021 2.0.10, clause 8.4.3.2" - - Config Id Config_MEC_1 - PICS Selection PIC_AMS - - Initial conditions with { - the IUT entity not having a AppMobilityServiceInfo containing - appMobilityServiceId indicating value NON_EXISTENT_APP_MOBILITY_SERVICE_ID - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPUT containing - uri indicating value "/amsi/v1/appMobilityServices/{NON_EXISTENT_APP_MOBILITY_SERVICE_ID}", - body containing - RegistrationInfo containing - serviceConsumerId containing - appInstanceId set to APP_INS_ID - ; - ; - ; - ; from the AMS_CLIENT entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "404 Not Found" - ; to the AMS_CLIENT entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC021_SRV_AMS_012_BR" - - Test objective - "Check that the AMS service sends an error when receives a request to modify a individual application mobility service using bad parameters" - - Reference "ETSI GS MEC 021 2.0.10, clause 8.4.3.2" - - Config Id Config_MEC_1 - PICS Selection PIC_AMS - - Initial conditions with { - the IUT entity having a AppMobilityServiceInfo containing - appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPUT containing - uri indicating value "/amsi/v1/appMobilityServices/{APP_MOBILITY_SERVICE_ID}", - body containing - RegistrationInfo containing - serviceConsumerId containing - appId set to APP_INS_ID //Should be appInstanteId not appId - ; - ; - ; - ; from the AMS_CLIENT entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "400 Bad Request" - ; to the AMS_CLIENT entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC021_SRV_AMS_013_NF" - - Test objective - "Check that the AMS service sends an error when is requested to delete the resource - that represents the individual application mobility service" - - Reference "ETSI GS MEC 021 2.0.10, clause 8.4.3.5" - - Config Id Config_MEC_1 - PICS Selection PIC_AMS - - Initial conditions with { - the IUT entity not having a AppMobilityServiceInfo containing - appMobilityServiceId indicating value NON_ESISTENT_APP_MOBILITY_SERVICE_ID - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vDELETE containing - uri indicating value "/amsi/v1/appMobilityServices/{NON_ESISTENT_APP_MOBILITY_SERVICE_ID}" - ; from the AMS_CLIENT entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "404 Not Found" - ; to the AMS_CLIENT entity - } - } - } - - - - Test Purpose { - TP Id "TP_MEC_MEC021_SRV_AMS_014_NF" - - Test objective - "Check that the AMS service send an error when is requested to deregister a not existent individual application mobility service" - - Reference "ETSI GS MEC 021 2.0.10, clause 8.5.3.4" - - Config Id Config_MEC_1 - PICS Selection PIC_AMS - - Initial conditions with { - the IUT entity not having a AppMobilityServiceInfo containing - appMobilityServiceId indicating value NON_EXISTENT_APP_MOBILITY_SERVICE_ID - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "/amsi/v1/appMobilityServices/{NON_EXISTENT_APP_MOBILITY_SERVICE_ID}/deregisterTask" - ; from the AMS_CLIENT entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "404 Not Found" - ; to the AMS_CLIENT entity - } - } - } - - } diff --git a/Test Purposes/MEC021/SRV/AMS/Ams_BV.tplan2 b/Test Purposes/MEC021/SRV/AMS/Ams_BV.tplan2 deleted file mode 100644 index 4478c5e6f6c8fec1a939268293dffe2525a133b7..0000000000000000000000000000000000000000 --- a/Test Purposes/MEC021/SRV/AMS/Ams_BV.tplan2 +++ /dev/null @@ -1,619 +0,0 @@ -/* -Copyright (c) ETSI 2018-2021. - -This software is subject to copyrights owned by ETSI. Non-exclusive permission -is hereby granted, free of charge, to copy, reproduce and amend this file -under the following conditions: It is provided "as is", without warranty of any -kind, expressed or implied. - -ETSI shall never be liable for any claim, damages, or other liability arising -from its use or inability of use.This permission does not apply to any documentation -associated with this file for which ETSI keeps all rights reserved. The present -copyright notice shall be included in all copies of whole or part of this -file and shall not imply any sub-license right. -*/ - -Package MEC_MEC021_SRV_AMS_BV { - - import all from MEC_Common; - - Test Purpose { - TP Id "TP_MEC_MEC021_SRV_AMS_001_OK" - - Test objective - "Check that the AMS service returns information about the registered application mobility services when requested" - - Reference "ETSI GS MEC 021 2.1.1, clause 8.3.3.1" - - Config Id Config_MEC_1 - PICS Selection PIC_AMS - - Initial conditions with { - the IUT entity having a AppMobilityServiceInfo containing - appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "/amsi/v1/appMobilityServices", - query_parameters containing - appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID - ; - ; from the AMS_CLIENT entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "200 OK", - body containing - AppMobilityServiceInfoList containing - AppMobilityServiceInfo containing - appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID, - attribute registeredAppMobilityService - ; - ; - ; - ; to the AMS_CLIENT entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC021_SRV_AMS_002_OK" - - Test objective - "Check that the AMS service creates a new application mobility services when requested" - - Reference "ETSI GS MEC 021 2.1.1, clause 8.3.3.4" - - Config Id Config_MEC_1 - PICS Selection PIC_AMS - - Initial conditions with { - the IUT entity being_in idle_state - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "/amsi/v1/appMobilityServices", - body containing - RegistrationInfo containing - serviceConsumerId containing - appInstanceId set to APP_INS_ID - ; - ; - ; - ; from the AMS_CLIENT entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "201 Created", - body containing - AppMobilityServiceInfo containing - appMobilityServiceId set to any_value, - registeredAppMobilityService containing - serviceConsumerId containing - appInstanceId set to APP_INS_ID - ; - ; - ; - ; - ; to the AMS_CLIENT entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC021_SRV_AMS_003_OK" - - Test objective - "Check that the AMS service returns information about the available subscriptions when requested. - Permitted SUBSCRIPTION_TYPE are: - - MobilityProcedureSubscription - - AdjacentAppInfoSubscription" - - Reference "ETSI GS MEC 021 2.1.1, clause 8.6.3.1" - - Config Id Config_MEC_1 - PICS Selection PIC_AMS - - Initial conditions with { - the IUT entity having a AMS_subscription containing - _link containing - self indicating value SUBSCRIPTION_HREF_VALUE - ;, - subscriptionType indicating value SUBSCRIPTION_TYPE - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "/amsi/v1/subscriptions/", - query_parameters containing - subscriptionType indicating value SUBSCRIPTION_TYPE - ; - ; from the MEC_SUB entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "200 OK", - body containing - SubscriptionLinkList containing - subscription containing - _links containing - self indicating value SUBSCRIPTION_HREF_VALUE - ;, - subscriptionType indicating value SUBSCRIPTION_TYPE, - callbackReference set to any_value - ; - ; - ; - ; to the MEC_SUB entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC021_SRV_AMS_004_OK" - - Test objective - "Check that the AMS service creates a notification subscriptions when requested. - Permitted SUBSCRIPTION_TYPE are: - - MobilityProcedureSubscription - - AdjacentAppInfoSubscription" - - Reference "ETSI GS MEC 021 2.1.1, clause 8.6.3.4" - - Config Id Config_MEC_1 - PICS Selection PIC_AMS - - Initial conditions with { - the IUT entity being_in idle_state - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "/amsi/v1/subscriptions/", - body containing - NotificationSubscription containing - subscriptionType indicating value SUBSCRIPTION_TYPE, - callbackReference indicating value CALLBACK_REFERENCE - ; - ; - ; from the AMS_CLIENT entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "201 CREATED", - body containing - NotificationSubscription containing - subscriptionType indicating value SUBSCRIPTION_TYPE, - callbackReference indicating value CALLBACK_REFERENCE - ; - ; - ; to the AMS_CLIENT entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC021_SRV_AMS_005_OK" - - Test objective - "Check that the AMS service returns information about a given subscription when requested. - Permitted SUBSCRIPTION_TYPE are: - - MobilityProcedureSubscription - - AdjacentAppInfoSubscription" - - Reference "ETSI GS MEC 021 2.1.1, clause 8.7.3.1" - - Config Id Config_MEC_1 - PICS Selection PIC_AMS - - Initial conditions with { - the IUT entity having a AMS_subscription containing - _link containing - self indicating value SUBSCRIPTION_HREF_VALUE - ;, - callbackReference indicating value CALLBACK_REFERENCE, - subscriptionType indicating value SUBSCRIPTION_TYPE - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value SUBSCRIPTION_HREF_VALUE - ; from the MEC_SUB entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "200 OK", - body containing - NotificationSubscription containing - subscriptionType indicating value SUBSCRIPTION_TYPE, - callbackReference indicating value CALLBACK_REFERENCE - ; - ; - ; to the MEC_SUB entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC021_SRV_AMS_006_OK" - - Test objective - "Check that the AMS service deletes a given subscription when requested" - - Reference "ETSI GS MEC 021 2.1.1, clause 8.7.3.5" - - Config Id Config_MEC_1 - PICS Selection PIC_AMS - - Initial conditions with { - the IUT entity having a AMS_subscription containing - _link containing - self indicating value SUBSCRIPTION_HREF_VALUE - ; - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vDELETE containing - uri indicating value SUBSCRIPTION_HREF_VALUE - ; from the MEC_SUB entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "204 No Content" - ; to the MEC_SUB entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC021_SRV_AMS_007_OK" - - Test objective - "Check that the AMS service modifies a given subscription when requested. - Permitted SUBSCRIPTION_TYPE are: - - MobilityProcedureSubscription - - AdjacentAppInfoSubscription" - - Reference "ETSI GS MEC 021 2.1.1, clause 8.7.3.2" - - Config Id Config_MEC_1 - PICS Selection PIC_AMS - - Initial conditions with { - the IUT entity having a AMS_subscription containing - _link containing - self indicating value SUBSCRIPTION_HREF_VALUE - ;, - callbackReference indicating value CALLBACK_REFERENCE, - subscriptionType indicating value SUBSCRIPTION_TYPE - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPUT containing - uri indicating value SUBSCRIPTION_HREF_VALUE, - body containing - NotificationSubscription containing - subscriptionType indicating value SUBSCRIPTION_TYPE, - callbackReference indicating value NEW_CALLBACK_REFERENCE - ; - ; - ; from the MEC_SUB entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "200 OK", - body containing - NotificationSubscription containing - subscriptionType indicating value SUBSCRIPTION_TYPE, - callbackReference indicating value NEW_CALLBACK_REFERENCE - ; - ; - ; to the MEC_SUB entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC021_SRV_AMS_008_OK" - - Test objective - "Check that the AMS service sends an AMS notification about a mobility procedure - if the AMS service has an associated subscription and the event is generated" - - Reference "ETSI GS MEC 021 2.1.1, clause 7.4.2" - - Config Id Config_MEC_1 - PICS Selection PIC_AMS_NOTIFICATIONS - - Initial conditions with { - the IUT entity having a AMS_subscription containing - subscriptionType indicating value "MobilityProcedureSubscription", - callbackReference indicating value CALLBACK_URI, - filterCriteria containing - appInstanceId set to APP_INSTANCE_ID - ; - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity generates a mobility_procedure_event containing - appInstanceId set to APP_INSTANCE_ID; - } - then { - the IUT entity sends a vPOST containing - uri indicating value CALLBACK_URI, - body containing - notificationType indicating value "MobilityProcedureNotification", - targetAppInfo containing - appInstanceId set to APP_INSTANCE_ID - ;, - mobilityStatus set to any_value - ; - ; to the MEC_SUB entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC021_SRV_AMS_009_OK" - - Test objective - "Check that the AMS service sends an AMS notification about adjacent application instances - if the AMS service has an associated subscription and the event is generated" - - Reference "ETSI GS MEC 021 2.1.1, clause 7.4.3" - - Config Id Config_MEC_1 - PICS Selection PIC_AMS_NOTIFICATIONS - - Initial conditions with { - the IUT entity having a AMS_subscription containing - subscriptionType indicating value "AdjacentAppInfoSubscription", - callbackReference indicating value CALLBACK_URI, - filterCriteria containing - appInstanceId set to APP_INSTANCE_ID - ; - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity generates a adjacent_app_info_event containing - appInstanceId set to APP_INSTANCE_ID; - } - then { - the IUT entity sends a vPOST containing - uri indicating value CALLBACK_URI, - body containing - notificationType indicating value "AdjacentAppInfoNotification", - adjacentAppInfo containing - appInstanceId set to APP_INSTANCE_ID - ; - ; - ; to the MEC_SUB entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC021_SRV_AMS_010_OK" - - Test objective - "Check that the AMS service sends an AMS notification on subscription expiration - if the AMS service has an associated subscription and the event is generated" - - Reference "ETSI GS MEC 021 2.1.1, clause 7.4.4" - - Config Id Config_MEC_1 - PICS Selection PIC_AMS_NOTIFICATIONS - - Initial conditions with { - the IUT entity having a AMS_subscription containing - subscriptionType indicating value any_value, //VALID for all subscription types - callbackReference indicating value CALLBACK_URI, - _links containing - self set to SUBSCRIPTION_HREF_VALUE - ;, - subscriptionId set to SUBSCRIPTION_ID, - expiryDeadline set to EXPIRY_DEADLINE - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity generates a expiry_notification_event containing - subscriptionId set to SUBSCRIPTION_ID; - } - then { - the IUT entity sends a vPOST containing - uri indicating value CALLBACK_URI, - body containing - notificationType indicating value "ExpiryNotification", //this field is not in the spec. - expiryDeadline set to EXPIRY_DEADLINE - ; - ; to the MEC_SUB entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC021_SRV_AMS_011_OK" - - Test objective - "Check that the AMS service returns information about this individual application mobility service" - - Reference "ETSI GS MEC 021 2.0.10, clause 8.4.3.1" - - Config Id Config_MEC_1 - PICS Selection PIC_AMS - - Initial conditions with { - the IUT entity having a AppMobilityServiceInfo containing - appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "/amsi/v1/appMobilityServices/{APP_MOBILITY_SERVICE_ID}" - ; from the AMS_CLIENT entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "200 OK", - body containing - AppMobilityServiceInfo containing - appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID, - attribute registeredAppMobilityService - ; - ; - ; to the AMS_CLIENT entity - } - } - } - - Test Purpose { - TP Id "TP_MEC_MEC021_SRV_AMS_012_OK" - - Test objective - "Check that the AMS service modifies the individual application mobility service when requested" - - Reference "ETSI GS MEC 021 2.0.10, clause 8.4.3.2" - - Config Id Config_MEC_1 - PICS Selection PIC_AMS - - Initial conditions with { - the IUT entity having a AppMobilityServiceInfo containing - appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPUT containing - uri indicating value "/amsi/v1/appMobilityServices/{APP_MOBILITY_SERVICE_ID}", - body containing - RegistrationInfo containing - serviceConsumerId containing - appInstanceId set to APP_INS_ID - ; - ; - ; - ; from the AMS_CLIENT entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "200 OK", - body containing - AppMobilityServiceInfo containing - appMobilityServiceId set to any_value, - registeredAppMobilityService containing - serviceConsumerId containing - appInstanceId set to APP_INS_ID - ; - ; - ; - ; - ; to the AMS_CLIENT entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC021_SRV_AMS_013_OK" - - Test objective - "Check that the AMS service de-register the individual application mobility service and delete the resource - that represents the individual application mobility service" - - Reference "ETSI GS MEC 021 2.0.10, clause 8.4.3.5" - - Config Id Config_MEC_1 - PICS Selection PIC_AMS - - Initial conditions with { - the IUT entity having a AppMobilityServiceInfo containing - appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vDELETE containing - uri indicating value "/amsi/v1/appMobilityServices/{APP_MOBILITY_SERVICE_ID}" - ; from the AMS_CLIENT entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "204 No Content" - ; to the AMS_CLIENT entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC021_SRV_AMS_014_OK" - - Test objective - "Check that the AMS service deregister an individual application mobility service on expiry of the timer associated with the service" - - Reference "ETSI GS MEC 021 2.0.10, clause 8.5.3.4" - - Config Id Config_MEC_1 - PICS Selection PIC_AMS - - Initial conditions with { - the IUT entity having a AppMobilityServiceInfo containing - appMobilityServiceId indicating value APP_MOBILITY_SERVICE_ID - ; - } - - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "/amsi/v1/appMobilityServices/{APP_MOBILITY_SERVICE_ID}/deregisterTask" - ; from the AMS_CLIENT entity - } - then { - the IUT entity sends a HTTP_RESPONSE containing - status set to "204 No Content" - ; to the AMS_CLIENT entity - } - } - } - - -} diff --git a/Test Purposes/MEC028/SRV/WAI/ApInfo.tplan2 b/Test Purposes/MEC028/SRV/WAI/ApInfo.tplan2 index 3d1d3ec11b0da7995ca6db12bb47c9e539a9fe7a..a44475c0e62f03777880d4294a20fcfa8a1f8102 100644 --- a/Test Purposes/MEC028/SRV/WAI/ApInfo.tplan2 +++ b/Test Purposes/MEC028/SRV/WAI/ApInfo.tplan2 @@ -1,5 +1,5 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters */ @@ -10,8 +10,9 @@ Package MEC_MEC028_SRV_WAI { TP Id "TP_MEC_MEC028_SRV_WAI_001_OK" Test objective "Check that the IUT responds with the list of WLAN Access Point" - Reference "ETSI GS MEC 028 2.2.1, clause 7.3.3.1", - "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.2.1/WlanInformationApi.yaml#/schemas/ApInfo" + Reference "ETSI GS MEC 028 2.3.1, clause 7.3.3.1", + "ETSI GS MEC 028 2.3.1, clause 6.2.2", + "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.3.1/WlanInformationApi.yaml#L1258" Config Id Config_MEC_4 @@ -20,7 +21,7 @@ Package MEC_MEC028_SRV_WAI { Initial conditions with { the IUT entity having a ApInfo containing apId containing - macId indicating value MAC_ID + bssid indicating value BSSID ; ; } @@ -39,12 +40,14 @@ Package MEC_MEC028_SRV_WAI { the IUT entity sends a HTTP_RESPONSE containing status_code set to "200 OK" body containing - ApInfo containing - apId containing - macId set to MAC_ID - ; - ; - ; + ApInfoList containing + ApInfo containing + apId containing + bssid set to BSSID + ; + ; + ; + ; ; to the MEC_APP entity } @@ -55,9 +58,12 @@ Package MEC_MEC028_SRV_WAI { Test Purpose { TP Id "TP_MEC_MEC028_SRV_WAI_002_OK" Test objective - "Check that the IUT responds with the list of WLAN Access Point filtered by the macId provided as query parameter " - Reference "ETSI GS MEC 028 2.2.1, clause 7.3.3.1", - "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.2.1/WlanInformationApi.yaml#/schemas/ApInfo" + "Check that the IUT responds with + the list of WLAN Access Point filtered by the bssid provided as query parameter" + Reference "ETSI GS MEC 028 2.3.1, clause 7.3.3.1", + "ETSI GS MEC 028 2.3.1, clause 6.2.2", + "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.3.1/WlanInformationApi.yaml#L1258" + Config Id Config_MEC_4 @@ -66,7 +72,7 @@ Package MEC_MEC028_SRV_WAI { Initial conditions with { the IUT entity having a ApInfo containing apId containing - macId indicating value MAC_ID + bssid indicating value BSSID ; ; } @@ -78,7 +84,7 @@ Package MEC_MEC028_SRV_WAI { a vGET containing uri indicating value "/wai/v2/queries/ap/ap_information", query_parameters containing - macId indicating value MAC_ID + bssid indicating value BSSID ; ; from the MEC_APP entity @@ -88,12 +94,14 @@ Package MEC_MEC028_SRV_WAI { the IUT entity sends a HTTP_RESPONSE containing status_code set to "200 OK" body containing + ApInfoList containing ApInfo containing apId containing - macId set to MAC_ID - ; - ; - ; + bssid indicating value BSSID + ; + ; + ; + ; ; to the MEC_APP entity } @@ -106,7 +114,7 @@ Package MEC_MEC028_SRV_WAI { Test objective "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" - Reference "ETSI GS MEC 028 2.2.1, clause 7.3.3.1" + Reference "ETSI GS MEC 028 2.3.1, clause 7.3.3.1" Config Id Config_MEC_4 @@ -124,7 +132,7 @@ Package MEC_MEC028_SRV_WAI { a vGET containing uri indicating value "/wai/v2/queries/ap/ap_information", query_parameters containing - mac indicating value MAC_ID + bss_id indicating value BSSID //Correct parameter is bssid w/o underscore ; ; from the MEC_APP entity diff --git a/Test Purposes/MEC028/SRV/WAI/ExistingSub.tplan2 b/Test Purposes/MEC028/SRV/WAI/ExistingSub.tplan2 index 878606f17cc29ac3f33e798c11637e04912f96f4..68acf087f81b18e93201afae9165aa6227749e19 100644 --- a/Test Purposes/MEC028/SRV/WAI/ExistingSub.tplan2 +++ b/Test Purposes/MEC028/SRV/WAI/ExistingSub.tplan2 @@ -1,5 +1,5 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters */ Package MEC_MEC028_SRV_WAI { @@ -10,8 +10,9 @@ Package MEC_MEC028_SRV_WAI { TP Id "TP_MEC_MEC028_SRV_WAI_008_OK" Test objective "Check that the IUT responds with the list of Subscription" - Reference "ETSI GS MEC 028 2.2.1, clause 7.6.3.1", - "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.2.1/WlanInformationApi.yaml#/schemas/AssocStaSubscription" + Reference "ETSI GS MEC 028 2.3.1, clause 7.6.3.1", + "ETSI GS MEC 028 2.3.1, clause 6.3.2", + "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.3.1/WlanInformationApi.yaml#L1309" Config Id Config_MEC_4 @@ -42,7 +43,7 @@ Package MEC_MEC028_SRV_WAI { subscriptionType set to "AssocStaSubscription", callbackReference set to CALLBACK_URI, apId containing - macId set to MAC_ID + bssid indicating value BSSID ; ; ; @@ -56,8 +57,9 @@ Package MEC_MEC028_SRV_WAI { Test Purpose { TP Id "TP_MEC_MEC028_SRV_WAI_008_NF" Test objective - "Check that the IUT responds with an error when a request for existing subscription with incorrect parameters is sent" - Reference "ETSI GS MEC 028 2.2.1, clause 7.6.3.1" + "Check that the IUT responds with an error + when a request for existing subscription with incorrect parameters is sent" + Reference "ETSI GS MEC 028 2.3.1, clause 7.6.3.1" Config Id Config_MEC_4 @@ -87,14 +89,15 @@ Package MEC_MEC028_SRV_WAI { } } } - - + Test Purpose { TP Id "TP_MEC_MEC028_SRV_WAI_009_OK" Test objective "Check that the IUT responds with a Notification Subscription when it is modified" - Reference "ETSI GS MEC 028 2.2.1, clause 7.6.3.2" + Reference "ETSI GS MEC 028 2.3.1, clause 7.6.3.2", + "ETSI GS MEC 028 2.3.1, clause 6.3.2", + "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.3.1/WlanInformationApi.yaml#L1309" Config Id Config_MEC_4 @@ -108,7 +111,7 @@ Package MEC_MEC028_SRV_WAI { _links containing self set to URI_TO_RESOURCE, apId containing - macId set to MAC_ID + bssid indicating value BSSID ; ; ; @@ -127,7 +130,7 @@ Package MEC_MEC028_SRV_WAI { _links containing self set to URI_TO_RESOURCE, apId containing - macId set to MAC_ID + bssid indicating value BSSID ; ; ; @@ -147,7 +150,7 @@ Package MEC_MEC028_SRV_WAI { _links containing self set to "uri/to/resource", apId containing - macId set to MAC_ID + bssid indicating value BSSID ; ; ; @@ -161,8 +164,9 @@ Package MEC_MEC028_SRV_WAI { Test Purpose { TP Id "TP_MEC_MEC028_SRV_WAI_009_BR" Test objective - "Check that the IUT responds with an error when an invalid field is set in the subscription modification request" - Reference "ETSI GS MEC 028 2.2.1, clause 7.6.3.2" + "Check that the IUT responds with an error + when an invalid field is set in the subscription modification request" + Reference "ETSI GS MEC 028 2.3.1, clause 7.6.3.2" Config Id Config_MEC_4 @@ -176,7 +180,7 @@ Package MEC_MEC028_SRV_WAI { _links containing self set to URI_TO_RESOURCE, apId containing - macId set to MAC_ID + bssid indicating value BSSID ; ; ; @@ -196,7 +200,7 @@ Package MEC_MEC028_SRV_WAI { _links containing self set to "uri/to/resource", apId containing - macId set to MAC_ID + bssid indicating value BSSID ; ; ; @@ -219,7 +223,7 @@ Package MEC_MEC028_SRV_WAI { TP Id "TP_MEC_MEC028_SRV_WAI_010_OK" Test objective "Check that the IUT responds with 204 when an existing subscription is correctly deleted" - Reference "ETSI GS MEC 028 2.2.1, clause 7.6.3.5" + Reference "ETSI GS MEC 028 2.3.1, clause 7.6.3.5" Config Id Config_MEC_4 @@ -233,7 +237,7 @@ Package MEC_MEC028_SRV_WAI { _links containing self set to URI_TO_RESOURCE, apId containing - macId set to MAC_ID + bssid indicating value BSSID ; ; ; @@ -263,7 +267,7 @@ Package MEC_MEC028_SRV_WAI { TP Id "TP_MEC_MEC028_SRV_WAI_010_NF" Test objective "Check that the IUT responds with an error when an not existing subscription cannot be deleted" - Reference "ETSI GS MEC 028 2.2.1, clause 7.6.3.5" + Reference "ETSI GS MEC 028 2.3.1, clause 7.6.3.5" Config Id Config_MEC_4 diff --git a/Test Purposes/MEC028/SRV/WAI/Measurement.tplan2 b/Test Purposes/MEC028/SRV/WAI/Measurement.tplan2 index e1d1bed486c61dc5c209cebf8ddfbcb75593e423..f02f71600fe66397d6d57f91e72ce40de50e84a2 100644 --- a/Test Purposes/MEC028/SRV/WAI/Measurement.tplan2 +++ b/Test Purposes/MEC028/SRV/WAI/Measurement.tplan2 @@ -1,5 +1,5 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters */ @@ -9,9 +9,11 @@ Package MEC_MEC028_SRV_WAI { Test Purpose { TP Id "TP_MEC_MEC028_SRV_WAI_012_OK" Test objective - "Check that the IUT responds with a list of measurement configurations available from the WLAN Access Information Service" - Reference "ETSI GS MEC 028 2.2.1, clause 7.7.3.1", - "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.2.1/WlanInformationApi.yaml#/schemas/MeasurementConfigLinkList" + "Check that the IUT responds with a list of measurement configurations available + from the WLAN Access Information Service" + Reference "ETSI GS MEC 028 2.3.1, clause 7.7.3.1", + "ETSI GS MEC 028 2.3.1, clause 6.2.5", + "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.3.1/WlanInformationApi.yaml#L1961" Config Id Config_MEC_4 @@ -19,8 +21,14 @@ Package MEC_MEC028_SRV_WAI { Initial conditions with { the IUT entity being_in idle_state and - the IUT entity having a MeasurementConfig containing - measurementConfig set to ANY_VALUE + the IUT entity having a MeasurementConfigLinkList containing + _links containing + href indicating value "/wai/v2/queries/measurements/MEASUREMENT_ID", + measurementConfig containing + href set to ANY_VALUE, + measurementId set to MEASUREMENT_ID + ; + ; ; } // MEC 028, clause 5.2.7 @@ -39,99 +47,29 @@ Package MEC_MEC028_SRV_WAI { status_code set to "200 OK" body containing MeasurementConfigLinkList containing - measurementConfig set to ANY_VALUE - ; - ; - ; + _links containing + href indicating value "/wai/v2/queries/measurements/MEASUREMENT_ID", + measurementConfig containing + href set to ANY_VALUE, + measurementId set to MEASUREMENT_ID + ; + ; + ; + ; + ; to the MEC_APP entity } } } -/* - //Bad request - Test Purpose { - TP Id "TP_MEC_MEC028_SRV_WAI_012_BR" - Test objective - "Check that the IUT responds with an error when a request with - incorrect parameters is sent by a MEC Application" - Reference "ETSI GS MEC 028 2.2.1, clause 7.7.3.1" - - Config Id Config_MEC_4 - - PICS Selection PIC_MEC_SYSTEM and PIC_SERVICES - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a MeasurementConfig containing - measurementConfig set to ANY_VALUE - ; - } - // MEC 028, clause 5.2.7 - Expected behaviour - ensure that { - when { - the IUT entity receives - a vGET containing - // How to trigger an error response. - uri indicating value "/wai/v2/queries/measurements" - ; - from the MEC_APP entity - } - then { - // MEC 028, clause 7.7.3.1 - the IUT entity sends - a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; - to the MEC_APP entity - } - } - } - - //Bad request - Test Purpose { - TP Id "TP_MEC_MEC028_SRV_WAI_012_NF" - Test objective - "Check that the IUT responds with an error when a request with - incorrect parameters is sent by a MEC Application" - Reference "ETSI GS MEC 028 2.2.1, clause 7.7.3.1" - - Config Id Config_MEC_4 - - PICS Selection PIC_MEC_SYSTEM and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity not having a MeasurementConfig - } - // MEC 028, clause 5.2.7 - Expected behaviour - ensure that { - when { - the IUT entity receives - a vGET containing - uri indicating value "/wai/v2/queries/measurements" - ; - from the MEC_APP entity - } - then { - // MEC 028, clause 7.7.3.1 - the IUT entity sends - a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; - to the MEC_APP entity - } - } - } - */ Test Purpose { TP Id "TP_MEC_MEC028_SRV_WAI_013_OK" Test objective "Check that the IUT responds with a new measurement configuration" - Reference "ETSI GS MEC 028 2.2.1, clause 7.7.3.4", - "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.2.1/WlanInformationApi.yaml#/schemas/MeasurementConfig" + Reference "ETSI GS MEC 028 2.3.1, clause 7.7.3.4", + "ETSI GS MEC 028 2.3.1, clause 6.2.4", + "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.3.1/WlanInformationApi.yaml#L1941" Config Id Config_MEC_4 @@ -163,12 +101,12 @@ Package MEC_MEC028_SRV_WAI { the IUT entity sends a HTTP_RESPONSE containing status_code set to "200 OK" body containing - MeasurementConfig containing - staId containing - macId set to MAC_ID - ;, + MeasurementConfig containing measurementId set to MEAS_ID, measurementInfo set to CONFIG_VALUE + staId containing + macId set to MAC_ID + ; ; ; ; @@ -181,9 +119,10 @@ Package MEC_MEC028_SRV_WAI { TP Id "TP_MEC_MEC028_SRV_WAI_013_BR" Test objective "Check that the IUT responds with an error when an invalid request is sent" - Reference "ETSI GS MEC 028 2.2.1, clause 7.7.3.4", - "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.2.1/WlanInformationApi.yaml#/schemas/MeasurementConfigLinkList" - + Reference "ETSI GS MEC 028 2.3.1, clause 7.7.3.4", + "ETSI GS MEC 028 2.3.1, clause 6.2.4", + "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.3.1/WlanInformationApi.yaml#L1941" + Config Id Config_MEC_4 PICS Selection PIC_SERVICES and PIC_MEC_PLAT @@ -201,11 +140,11 @@ Package MEC_MEC028_SRV_WAI { // How to trigger an error response. body containing MeasurementConfig containing - statId containing //staId is misspelled - macId set to MAC_ID - ;, measurementId set to MEAS_ID, measurementInfo set to CONFIG_VALUE + statId containing //staId is misspelled + macId set to MAC_ID + ; ; ; ; @@ -220,58 +159,14 @@ Package MEC_MEC028_SRV_WAI { } } } -/* - Test Purpose { - TP Id "TP_MEC_MEC028_SRV_WAI_013_NF" - Test objective - "Check that the IUT responds with an error when an invalid request is sent" - Reference "ETSI GS MEC 028 2.2.1, clause 7.7.3.4", - "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.2.1/WlanInformationApi.yaml#/schemas/MeasurementConfigLinkList" - - Config Id Config_MEC_4 - - PICS Selection PIC_SERVICES and PIC_MEC_PLAT - Initial conditions with { - the IUT entity being_in idle_state - } - // MEC 028, clause 5.2.7 - Expected behaviour - ensure that { - when { - the IUT entity receives - a vPOST containing - uri indicating value "/wai/v2/queries/measurements_INVALID_URI" - body containing - MeasurementConfig containing - links indicating value H_LINKS, - staId containing - macId set to MAC_ID - ;, - measurementId set to MEAS_ID, - measurementInfo set to CONFIG_VALUE - ; - ; - ; - from the MEC_APP entity - } - then { - // MEC 028, clause 7.7.3.4 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; - to the MEC_APP entity - } - } - } - */ - Test Purpose { + Test Purpose { TP Id "TP_MEC_MEC028_SRV_WAI_014_OK" Test objective "Check that the IUT responds with the specified measurement configuration" - Reference "ETSI GS MEC 028 2.2.1, clause 7.8.3.1", - "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.2.1/WlanInformationApi.yaml#/schemas/MeasurementConfigLinkList" - + Reference "ETSI GS MEC 028 2.3.1, clause 7.8.3.1", + "ETSI GS MEC 028 2.3.1, clause 6.2.4", + "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.3.1/WlanInformationApi.yaml#L1941" Config Id Config_MEC_4 PICS Selection PIC_SERVICES and PIC_MEC_PLAT @@ -300,11 +195,11 @@ Package MEC_MEC028_SRV_WAI { status_code set to "200 OK" body containing MeasurementConfig containing - staId containing - macId set to MAC_ID - ;, measurementId set to MEASUREMENT_CONFIG_ID, measurementInfo set to CONFIG_VALUE + staId containing + macId set to MAC_ID + ; ; ; ; @@ -317,9 +212,7 @@ Package MEC_MEC028_SRV_WAI { TP Id "TP_MEC_MEC028_SRV_WAI_014_NF" Test objective "Check that the IUT responds with an error when an invalid request is sent" - Reference "ETSI GS MEC 028 2.2.1, clause 7.8.3.1", - "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.2.1/WlanInformationApi.yaml#/schemas/MeasurementConfigLinkList" - + Reference "ETSI GS MEC 028 2.3.1, clause 7.8.3.1" Config Id Config_MEC_4 PICS Selection PIC_SERVICES and PIC_MEC_PLAT @@ -328,7 +221,7 @@ Package MEC_MEC028_SRV_WAI { the IUT entity being_in idle_state and the IUT entity not having a MeasurementConfig containing measurementConfig containing - measurementId set to INVALID_MEASUREMENT_CONFIG_ID + measurementId set to MEASUREMENT_CONFIG_ID ; ; } @@ -338,7 +231,7 @@ Package MEC_MEC028_SRV_WAI { when { the IUT entity receives a vGET containing - uri indicating value "/wai/v2/queries/measurements/{INVALID_MEASUREMENT_CONFIG_ID}" + uri indicating value "/wai/v2/queries/measurements/{MEASUREMENT_CONFIG_ID}" ; from the MEC_APP entity } @@ -356,9 +249,10 @@ Package MEC_MEC028_SRV_WAI { TP Id "TP_MEC_MEC028_SRV_WAI_015_OK" Test objective "Check that the IUT responds with the modified measurement configuration" - Reference "ETSI GS MEC 028 2.2.1, clause 7.8.3.2", - "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.2.1/WlanInformationApi.yaml#/schemas/MeasurementConfigLinkList" - + Reference "ETSI GS MEC 028 2.3.1, clause 7.8.3.2", + "ETSI GS MEC 028 2.3.1, clause 6.2.4", + "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.3.1/WlanInformationApi.yaml#L1941" + Config Id Config_MEC_4 PICS Selection PIC_SERVICES and PIC_MEC_PLAT @@ -367,11 +261,11 @@ Package MEC_MEC028_SRV_WAI { the IUT entity being_in idle_state and the IUT entity having a MeasurementConfig containing measurementConfig containing + measurementId set to MEASUREMENT_CONFIG_ID, + measurementInfo set to CONFIG_VALUE staId containing macId set to MAC_ID - ;, - measurementId set to INVALID_MEASUREMENT_CONFIG_ID, - measurementInfo set to CONFIG_VALUE + ; ; ; } @@ -381,14 +275,14 @@ Package MEC_MEC028_SRV_WAI { when { the IUT entity receives a vPUT containing - uri indicating value "/wai/v2/queries/measurements/{measurementConfigId}", + uri indicating value "/wai/v2/queries/measurements/{MEASUREMENT_CONFIG_ID}", body containing MeasurementConfig containing + measurementId set to MEASUREMENT_CONFIG_ID, + measurementInfo set to NEW_CONFIG_VALUE, staId containing macId set to MAC_ID - ;, - measurementId set to MEASUREMENT_CONFIG_ID, - measurementInfo set to NEW_CONFIG_VALUE + ; ; ; ; @@ -400,11 +294,11 @@ Package MEC_MEC028_SRV_WAI { status_code set to "200 OK" body containing MeasurementConfigLinkList containing + measurementId set to MEASUREMENT_CONFIG_ID, + measurementInfo set to NEW_CONFIG_VALUE, staId containing macId set to MAC_ID - ;, - measurementId set to MEASUREMENT_CONFIG_ID, - measurementInfo set to NEW_CONFIG_VALUE + ; ; ; ; @@ -417,9 +311,7 @@ Package MEC_MEC028_SRV_WAI { TP Id "TP_MEC_MEC028_SRV_WAI_015_NF" Test objective "Check that the IUT responds with an error when an invalid request is sent" - Reference "ETSI GS MEC 028 2.2.1, clause 7.8.3.2", - "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.2.1/WlanInformationApi.yaml#/schemas/MeasurementConfigLinkList" - + Reference "ETSI GS MEC 028 2.3.1, clause 7.8.3.2" Config Id Config_MEC_4 PICS Selection PIC_SERVICES and PIC_MEC_PLAT @@ -428,7 +320,7 @@ Package MEC_MEC028_SRV_WAI { the IUT entity being_in idle_state and the IUT entity not having a MeasurementConfig containing measurementConfig containing - measurementId set to INVALID_MEASUREMENT_CONFIG_ID + measurementId set to MEASUREMENT_CONFIG_ID ; ; } @@ -441,11 +333,11 @@ Package MEC_MEC028_SRV_WAI { uri indicating value "/wai/v2/queries/measurements/{INVALID_MEASUREMENT_CONFIG_ID}", body containing MeasurementConfigLinkList containing + measurementId set to MEASUREMENT_CONFIG_ID, + measurementInfo set to NEW_CONFIG_VALUE, staId containing macId set to MAC_ID - ;, - measurementId set to INVALID_MEASUREMENT_CONFIG_ID, - measurementInfo set to NEW_CONFIG_VALUE + ; ; ; ; @@ -464,10 +356,9 @@ Package MEC_MEC028_SRV_WAI { Test Purpose { TP Id "TP_MEC_MEC028_SRV_WAI_016_OK" Test objective - "Check that the IUT responds with with 204 when requested to delete the specified measurement configuration" - Reference "ETSI GS MEC 028 2.2.1, clause 7.8.3.5", - "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.2.1/WlanInformationApi.yaml#/schemas/MeasurementConfigLinkList" - + "Check that the IUT responds with with 204 + when requested to delete the specified measurement configuration" + Reference "ETSI GS MEC 028 2.3.1, clause 7.8.3.5" Config Id Config_MEC_4 PICS Selection PIC_SERVICES and PIC_MEC_PLAT @@ -476,11 +367,11 @@ Package MEC_MEC028_SRV_WAI { the IUT entity being_in idle_state and the IUT entity having a MeasurementConfig containing measurementConfig containing + measurementId set to MEASUREMENT_CONFIG_ID, + measurementInfo set to NCONFIG_VALUE, staId containing macId set to MAC_ID - ;, - measurementId set to MEASUREMENT_CONFIG_ID, - measurementInfo set to NCONFIG_VALUE + ; ; ; } @@ -508,9 +399,7 @@ Package MEC_MEC028_SRV_WAI { TP Id "TP_MEC_MEC028_SRV_WAI_016_NF" Test objective "Check that the IUT responds with an error when an invalid request is sent" - Reference "ETSI GS MEC 028 2.2.1, clause 7.8.3.5", - "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.2.1/WlanInformationApi.yaml#/schemas/MeasurementConfigLinkList" - + Reference "ETSI GS MEC 028 2.3.1, clause 7.8.3.5" Config Id Config_MEC_4 PICS Selection PIC_SERVICES and PIC_MEC_PLAT @@ -519,7 +408,7 @@ Package MEC_MEC028_SRV_WAI { the IUT entity being_in idle_state and the IUT entity not having a MeasurementConfig containing - measurementId set to INVALID_MEASUREMENT_CONFIG_ID + measurementId set to MEASUREMENT_CONFIG_ID ; } // MEC 028, clause 5.2.7 diff --git a/Test Purposes/MEC028/SRV/WAI/NotificationCallback.tplan2 b/Test Purposes/MEC028/SRV/WAI/NotificationCallback.tplan2 index 9a7d5f828ced88262259d18150e47b48ece5f7fb..1bf51afa6824cf216d14c9bbda32fee3ff534901 100644 --- a/Test Purposes/MEC028/SRV/WAI/NotificationCallback.tplan2 +++ b/Test Purposes/MEC028/SRV/WAI/NotificationCallback.tplan2 @@ -1,5 +1,5 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters */ @@ -13,8 +13,11 @@ Package MEC_MEC028_SRV_WAI { "Check that the IUT sends a notification about WLAN event notification if the MEC service has an associated subscription and the event is generated" - Reference "ETSI GS MEC 028 2.2.1, clause 6.4.2", - "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.2.1/WlanInformationApi.yaml" + Reference "ETSI GS MEC 028 2.3.1, clause 6.4.2", + "ETSI GS MEC 028 2.3.1, clause 6.3.2", + "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.3.1/WlanInformationApi.yaml#L1309", + "ETSI GS MEC 028 2.3.1, clause 6.4.2", + "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.3.1/WlanInformationApi.yaml#L1292" Config Id Config_MEC_4 @@ -25,7 +28,7 @@ Package MEC_MEC028_SRV_WAI { subscriptionType indicating value "AssocStaSubscription", callbackReference indicating value CALLBACK_URI, apId containing - macId set to MAC_ID + bssid set to BSSID ; ; } @@ -42,8 +45,8 @@ Package MEC_MEC028_SRV_WAI { uri indicating value CALLBACK_URI, body containing notificationType indicating value "AssocStaNotification", - apId containing - macId set to MAC_ID + apId containing + bssid set to BSSID ; ; ; diff --git a/Test Purposes/MEC028/SRV/WAI/StationInfo.tplan2 b/Test Purposes/MEC028/SRV/WAI/StationInfo.tplan2 index 6798a90f01d81281f9ab5236bd497ea5e2de3d6a..340c943f59635fec4a762fee1b8ec359b1b09e3d 100644 --- a/Test Purposes/MEC028/SRV/WAI/StationInfo.tplan2 +++ b/Test Purposes/MEC028/SRV/WAI/StationInfo.tplan2 @@ -1,17 +1,18 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters */ Package MEC_MEC028_SRV_WAI { import all from MEC_Common; - Test Purpose { + Test Purpose { TP Id "TP_MEC_MEC028_SRV_WAI_003_OK" Test objective "Check that the IUT responds with the list of Station Point" - Reference "ETSI GS MEC 028 2.2.1, clause 7.4.3.1", - "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.2.1/WlanInformationApi.yaml#/schema/StaInfo" + Reference "ETSI GS MEC 028 2.3.1, clause 7.4.3.1", + "ETSI GS MEC 028 2.3.1, clause 6.2.3", + "https://forge.etsi.org/rep/mec/gs028-wai-api/-/blob/v2.3.1/WlanInformationApi.yaml#L2374" Config Id Config_MEC_4 @@ -56,9 +57,11 @@ Package MEC_MEC028_SRV_WAI { Test Purpose { TP Id "TP_MEC_MEC028_SRV_WAI_004_OK" Test objective - "Check that the IUT responds with the list of Station Point filtered by the macId provided as query parameter" - Reference "ETSI GS MEC 028 2.2.1, clause 7.4.3.1", - "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.2.1/WlanInformationApi.yaml#/schema/StaInfo" + "Check that the IUT responds with the list of Station Point filtered + by the macId provided as query parameter" + Reference "ETSI GS MEC 028 2.3.1, clause 7.4.3.1", + "ETSI GS MEC 028 2.3.1, clause 6.2.3", + "https://forge.etsi.org/rep/mec/gs028-wai-api/-/blob/v2.3.1/WlanInformationApi.yaml#L2374" Config Id Config_MEC_4 @@ -108,7 +111,7 @@ Package MEC_MEC028_SRV_WAI { Test objective "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" - Reference "ETSI GS MEC 028 2.2.1, clause 7.4.3.1" + Reference "ETSI GS MEC 028 2.3.1, clause 7.4.3.1" Config Id Config_MEC_4 diff --git a/Test Purposes/MEC028/SRV/WAI/Subscription.tplan2 b/Test Purposes/MEC028/SRV/WAI/Subscription.tplan2 index 13fa67fa20eb51987bff8200ab04df442e599388..0fece4bda427de118cf75671b8c2f6dc10a3844f 100644 --- a/Test Purposes/MEC028/SRV/WAI/Subscription.tplan2 +++ b/Test Purposes/MEC028/SRV/WAI/Subscription.tplan2 @@ -1,5 +1,5 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters */ @@ -10,8 +10,9 @@ Package MEC_MEC028_SRV_WAI { TP Id "TP_MEC_MEC028_SRV_WAI_005_OK" Test objective "Check that the IUT responds with the requested list of subscription" - Reference "ETSI GS MEC 028 2.2.1, clause 7.5.3.1", - "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.2.1/WlanInformationApi.yaml#/schemas/AssocStaSubscription" + Reference "ETSI GS MEC 028 2.3.1, clause 7.5.3.1", + "ETSI GS MEC 028 2.3.1, clause 6.3.4", + "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.3.1/WlanInformationApi.yaml#L2625" Config Id Config_MEC_4 @@ -63,9 +64,11 @@ Package MEC_MEC028_SRV_WAI { Test Purpose { TP Id "TP_MEC_MEC028_SRV_WAI_006_OK" Test objective - "Check that the IUT responds with the requested list of subscription" - Reference "ETSI GS MEC 028 2.2.1, clause 7.5.3.1", - "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.2.1/WlanInformationApi.yaml#/schemas/AssocStaSubscription" + "Check that the IUT responds with the requested list of subscription + when the MEC Platform is queried using a filter on subscription type." + Reference "ETSI GS MEC 028 2.3.1, clause 7.5.3.1", + "ETSI GS MEC 028 2.3.1, clause 6.3.2", + "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.3.1/WlanInformationApi.yaml#L1309" Config Id Config_MEC_4 @@ -121,9 +124,9 @@ Package MEC_MEC028_SRV_WAI { Test Purpose { TP Id "TP_MEC_MEC028_SRV_WAI_006_BR" Test objective - "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" - Reference "ETSI GS MEC 028 2.2.1, clause 7.5.3.1", - "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.2.1/WlanInformationApi.yaml#/schemas/AssocStaSubscription" + "Check that the IUT responds with an error when a request with + incorrect parameters is sent by a MEC Application" + Reference "ETSI GS MEC 028 2.3.1, clause 7.5.3.1" Config Id Config_MEC_4 @@ -162,7 +165,7 @@ Package MEC_MEC028_SRV_WAI { Test objective "Check that the IUT responds with an error when a request with not existing parameters is sent" - Reference "ETSI GS MEC 028 2.2.1, clause 7.5.3.1" + Reference "ETSI GS MEC 028 2.3.1, clause 7.5.3.1" Config Id Config_MEC_4 @@ -198,7 +201,10 @@ Package MEC_MEC028_SRV_WAI { TP Id "TP_MEC_MEC028_SRV_WAI_007_OK" Test objective "Check that the IUT responds with a Notification Subscription" - Reference "ETSI GS MEC 028 2.2.1, clause 7.5.3.4" + Reference "ETSI GS MEC 028 2.3.1, clause 7.5.3.4", + "ETSI GS MEC 028 2.3.1, clause 6.3.2", + "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.3.1/WlanInformationApi.yaml#L1309" + Config Id Config_MEC_4 @@ -219,7 +225,7 @@ Package MEC_MEC028_SRV_WAI { subscriptionType set to "AssocStaSubscription", callbackReference set to CALLBACK_URI, apId containing - macId set to MAC_ID + bssid set to BSSID ; ; ; @@ -239,7 +245,7 @@ Package MEC_MEC028_SRV_WAI { self containing href set to "/wai/v2/subscriptions/{SUBSCRIPTION_ID}", apId containing - macId set to MAC_ID + bssid set to BSSID ; ; ; @@ -255,7 +261,9 @@ Package MEC_MEC028_SRV_WAI { TP Id "TP_MEC_MEC028_SRV_WAI_007_BR" Test objective "Check that the IUT responds with an error when an invalid Subscription request is sent" - Reference "ETSI GS MEC 028 2.2.1, clause 7.5.3.4" + Reference "ETSI GS MEC 028 2.3.1, clause 7.5.3.4", + "ETSI GS MEC 028 2.3.1, clause 6.3.2", + "https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.3.1/WlanInformationApi.yaml#L1309" Config Id Config_MEC_4 @@ -297,7 +305,7 @@ Package MEC_MEC028_SRV_WAI { Test objective "Check that the IUT responds with an error when a request with not existing parameters is sent" - Reference "ETSI GS MEC 028 2.2.1, clause 7.5.3.1" + Reference "ETSI GS MEC 028 2.3.1, clause 7.5.3.1" Config Id Config_MEC_4 diff --git a/Test Purposes/MEC029/SRV/FAIS/PlatFixedAcessInfo.tplan2 b/Test Purposes/MEC029/SRV/FAIS/PlatFixedAcessInfo.tplan2 index 046bcceb58b993540fa269553ae49e28d7df3059..ca11838db6cf1dba06dfb23dee0ca99139f25dd8 100644 --- a/Test Purposes/MEC029/SRV/FAIS/PlatFixedAcessInfo.tplan2 +++ b/Test Purposes/MEC029/SRV/FAIS/PlatFixedAcessInfo.tplan2 @@ -1,5 +1,5 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. This software is subject to copyrights owned by ETSI. Non-exclusive permission is hereby granted, free of charge, to copy, reproduce and amend this file @@ -28,7 +28,7 @@ Package MEC_MEC029_SRV_FAIS { "Check that the IUT responds with the current status of the fixed access information when queried by a MEC Application" - Reference "ETSI GS MEC 029 2.1.1, clause 7.3.3.1" + Reference "ETSI GS MEC 029 2.2.1, clause 7.3.3.1" Config Id Config_MEC_1 @@ -68,7 +68,7 @@ Package MEC_MEC029_SRV_FAIS { "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" - Reference "ETSI GS MEC 029 2.1.1, clause 7.3.3.1" + Reference "ETSI GS MEC 029 2.2.1, clause 7.3.3.1" Config Id Config_MEC_1 @@ -109,7 +109,7 @@ Package MEC_MEC029_SRV_FAIS { "Check that the IUT responds with an error when a request for non-existing data is sent by a MEC Application" - Reference "ETSI GS MEC 029 2.1.1, clause 7.3.3.1" + Reference "ETSI GS MEC 029 2.2.1, clause 7.3.3.1" Config Id Config_MEC_1 @@ -149,7 +149,7 @@ Package MEC_MEC029_SRV_FAIS { "Check that the IUT responds with the current status of the device information when queried by a MEC Application" - Reference "ETSI GS MEC 029 2.1.1, clause 7.4.3.1" + Reference "ETSI GS MEC 029 2.2.1, clause 7.4.3.1" Config Id Config_MEC_1 @@ -189,7 +189,7 @@ Package MEC_MEC029_SRV_FAIS { "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" - Reference "ETSI GS MEC 029 2.1.1, clause 7.4.3.1" + Reference "ETSI GS MEC 029 2.2.1, clause 7.4.3.1" Config Id Config_MEC_1 @@ -230,7 +230,7 @@ Package MEC_MEC029_SRV_FAIS { "Check that the IUT responds with an error when a request for non-existing data is sent by a MEC Application" - Reference "ETSI GS MEC 029 2.1.1, clause 7.4.3.1" + Reference "ETSI GS MEC 029 2.2.1, clause 7.4.3.1" Config Id Config_MEC_1 @@ -270,7 +270,7 @@ Package MEC_MEC029_SRV_FAIS { "Check that the IUT responds with the current status of the cable line information when queried by a MEC Application" - Reference "ETSI GS MEC 029 2.1.1, clause 7.5.3.1" + Reference "ETSI GS MEC 029 2.2.1, clause 7.5.3.1" Config Id Config_MEC_1 @@ -310,7 +310,7 @@ Package MEC_MEC029_SRV_FAIS { "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" - Reference "ETSI GS MEC 029 2.1.1, clause 7.5.3.1" + Reference "ETSI GS MEC 029 2.2.1, clause 7.5.3.1" Config Id Config_MEC_1 @@ -351,7 +351,7 @@ Package MEC_MEC029_SRV_FAIS { "Check that the IUT responds with an error when a request for non-existing data is sent by a MEC Application" - Reference "ETSI GS MEC 029 2.1.1, clause 7.5.3.1" + Reference "ETSI GS MEC 029 2.2.1, clause 7.5.3.1" Config Id Config_MEC_1 @@ -391,7 +391,7 @@ Package MEC_MEC029_SRV_FAIS { "Check that the IUT responds with the current status of the optical network information when queried by a MEC Application" - Reference "ETSI GS MEC 029 2.1.1, clause 7.6.3.1" + Reference "ETSI GS MEC 029 2.2.1, clause 7.6.3.1" Config Id Config_MEC_1 @@ -431,7 +431,7 @@ Package MEC_MEC029_SRV_FAIS { "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" - Reference "ETSI GS MEC 029 2.1.1, clause 7.6.3.1" + Reference "ETSI GS MEC 029 2.2.1, clause 7.6.3.1" Config Id Config_MEC_1 @@ -472,7 +472,7 @@ Package MEC_MEC029_SRV_FAIS { "Check that the IUT responds with an error when a request for non-existing data is sent by a MEC Application" - Reference "ETSI GS MEC 029 2.1.1, clause 7.6.3.1" + Reference "ETSI GS MEC 029 2.2.1, clause 7.6.3.1" Config Id Config_MEC_1 @@ -512,7 +512,7 @@ Package MEC_MEC029_SRV_FAIS { "Check that the IUT responds with the subscriptions for fixed access information notifications when queried by a MEC Application" - Reference "ETSI GS MEC 029 2.1.1, clause 7.7.3.1" + Reference "ETSI GS MEC 029 2.2.1, clause 7.7.3.8" Config Id Config_MEC_1 @@ -532,7 +532,7 @@ Package MEC_MEC029_SRV_FAIS { from the MEC_APP entity } then { - // MEC 029, clause 7.7.3.1 + // MEC 029, clause 7.7.3.8 the IUT entity sends a HTTP_RESPONSE containing status_code set to "200 OK" body containing @@ -552,7 +552,7 @@ Package MEC_MEC029_SRV_FAIS { "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" - Reference "ETSI GS MEC 029 2.1.1, clause 7.7.3.1" + Reference "ETSI GS MEC 029 2.2.1, clause 7.7.3.1" Config Id Config_MEC_1 @@ -593,7 +593,7 @@ Package MEC_MEC029_SRV_FAIS { "Check that the IUT responds with an error when a request for non-existing data is sent by a MEC Application" - Reference "ETSI GS MEC 029 2.1.1, clause 7.7.3.1" + Reference "ETSI GS MEC 029 2.2.1, clause 7.7.3.1" Config Id Config_MEC_1 @@ -633,7 +633,7 @@ Package MEC_MEC029_SRV_FAIS { "Check that the IUT acknowledges the subscription by a MEC Application to notifications on Optical Network Unit alarm events" - Reference "ETSI GS MEC 029 2.1.1, clause 7.7.3.4" + Reference "ETSI GS MEC 029 2.2.1, clause 7.7.3.4" Config Id Config_MEC_1 @@ -693,7 +693,7 @@ Package MEC_MEC029_SRV_FAIS { "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" - Reference "ETSI GS MEC 029 2.1.1, clause 7.7.3.4" + Reference "ETSI GS MEC 029 2.2.1, clause 7.7.3.4" Config Id Config_MEC_1 @@ -737,7 +737,7 @@ Package MEC_MEC029_SRV_FAIS { "Check that the IUT responds with the information on a given subscription when queried by a MEC Application" - Reference "ETSI GS MEC 029 2.1.1, clause 7.8.3.1" + Reference "ETSI GS MEC 029 2.2.1, clause 7.8.3.1" Config Id Config_MEC_1 @@ -782,7 +782,7 @@ Package MEC_MEC029_SRV_FAIS { "Check that the IUT responds with an error when a request for an unknown URI is sent by a MEC Application" - Reference "ETSI GS MEC 029 2.1.1, clause 7.8.3.1" + Reference "ETSI GS MEC 029 2.2.1, clause 7.8.3.1" Config Id Config_MEC_1 @@ -822,7 +822,7 @@ Package MEC_MEC029_SRV_FAIS { "Check that the IUT updates an existing subscription when commanded by a MEC Application" - Reference "ETSI GS MEC 029 2.1.1, clause 7.8.3.2" + Reference "ETSI GS MEC 029 2.2.1, clause 7.8.3.2" Config Id Config_MEC_1 @@ -873,7 +873,7 @@ Package MEC_MEC029_SRV_FAIS { "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" - Reference "ETSI GS MEC 029 2.1.1, clause 7.8.3.2" + Reference "ETSI GS MEC 029 2.2.1, clause 7.8.3.2" Config Id Config_MEC_1 @@ -920,7 +920,7 @@ Package MEC_MEC029_SRV_FAIS { "Check that the IUT responds with an error when a request for an unknown URI is sent by a MEC Application" - Reference "ETSI GS MEC 029 2.1.1, clause 7.8.3.2" + Reference "ETSI GS MEC 029 2.2.1, clause 7.8.3.2" Config Id Config_MEC_1 @@ -966,7 +966,7 @@ Package MEC_MEC029_SRV_FAIS { "Check that the IUT responds with an error when a request sent by a MEC Application doesn't comply with a required condition" - Reference "ETSI GS MEC 029 2.1.1, clause 7.8.3.2" + Reference "ETSI GS MEC 029 2.2.1, clause 7.8.3.2" Config Id Config_MEC_1 @@ -1012,7 +1012,7 @@ Package MEC_MEC029_SRV_FAIS { "Check that the IUT cancels an existing subscription when commanded by a MEC Application" - Reference "ETSI GS MEC 029 2.1.1, clause 7.8.3.5" + Reference "ETSI GS MEC 029 2.2.1, clause 7.8.3.5" Config Id Config_MEC_1 @@ -1052,7 +1052,7 @@ Package MEC_MEC029_SRV_FAIS { "Check that the IUT responds with an error when a request for an unknown URI is sent by a MEC Application" - Reference "ETSI GS MEC 029 2.1.1, clause 7.8.3.5" + Reference "ETSI GS MEC 029 2.2.1, clause 7.8.3.5" Config Id Config_MEC_1 @@ -1092,7 +1092,7 @@ Package MEC_MEC029_SRV_FAIS { "Check that the IUT sends notification on expiry of Fixed Access Information event subscription to a MEC Application" - Reference "ETSI GS MEC 029 2.1.1, clause 7.7.3.4" + Reference "ETSI GS MEC 029 2.2.1, clause 7.7.3.4" Config Id Config_MEC_1 @@ -1155,7 +1155,7 @@ Package MEC_MEC029_SRV_FAIS { "Check that the IUT sends notifications on Fixed Access Information events to a subscribed MEC Application" - Reference "ETSI GS MEC 029 2.1.1, clause 5.2.7" + Reference "ETSI GS MEC 029 2.2.1, clause 5.2.7" Config Id Config_MEC_1 diff --git a/Test Purposes/MEC030/SRV/V2XInformationService.tplan2 b/Test Purposes/MEC030/SRV/V2XInformationService.tplan2 index 2d9cb6d8daa6dd29fc489581ee1ddf29e3a45509..4a6b380e726373ecc4b2def1a3a3c98fd05491a8 100644 --- a/Test Purposes/MEC030/SRV/V2XInformationService.tplan2 +++ b/Test Purposes/MEC030/SRV/V2XInformationService.tplan2 @@ -1,2300 +1,2715 @@ /* -Copyright (c) ETSI 2018-2021. +Copyright (c) ETSI 2018-2023. Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters */ Package MEC_MEC030_SRV_V2X { - import all from MEC_Common; - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_001_OK_01" - - Test objective - "Check that the IUT responds with a configured provisioning information over Uu unicast - when queried by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.3.3.1", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a uuUnicastProvisioningInfo containing - location_info indicating value LOCATION_INFO_ECGI - ; - } - - // MEC 030 Clause 6.2.2 Type: UuUnicastProvisioningInfo - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "vis/v1/queries/uu_unicast_provisioning_info" - query_parameters containing - location_info indicating value LOCATION_INFO_ECGI - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.3.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" - body containing - uuUnicastProvisioningInfo set to any_value - ; - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_001_OK_02" - - Test objective - "Check that the IUT responds with a configured provisioning information over Uu unicast - when queried by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.3.3.1", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a uuUnicastProvisioningInfo containing - location_info indicating value LOCATION_INFO_LATITUDE - ; - } - - // MEC 030 Clause 6.2.2 Type: UuUnicastProvisioningInfo - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "vis/v1/queries/uu_unicast_provisioning_info" - query_parameters containing - location_info indicating value LOCATION_INFO_LATITUDE - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.3.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" - body containing - uuUnicastProvisioningInfo set to any_value - ; - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_001_BR" - - Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.3.3.1", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a uuUnicastProvisioningInfo containing - location_info indicating value LOCATION_INFO_LATITUDE - ; - } - - // MEC 030 Clause 6.2.2 Type: UuUnicastProvisioningInfo - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "vis/v1/queries/uu_unicast_provisioning_info" - query_parameters containing - location_info indicating value LOCATION_INFO_LATITUDE - // Wrong parameter name should trigger an error response. - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.3.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_001_NF" - - Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.3.3.1", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a uuUnicastProvisioningInfo containing - location_info indicating value LOCATION_INFO_ECGI - ; - } - - // MEC 030 Clause 6.2.2 Type: UuUnicastProvisioningInfo - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "vis/v1/queries/uu_unicast_provisioning_info" - query_parameters containing - location_info indicating value LOCATION_INFO_UNKNOWN_ECGI - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.3.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_002_OK_01" - - Test objective - "Check that the IUT responds with a configured provisioning information over Uu MBMS - when queried by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.4.3.1", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a uuMbmsProvisioningInfo containing - location_info indicating value LOCATION_INFO_ECGI - ; - } - - // MEC 030 Clause 6.2.3 Type: UuMbmsProvisioningInfo - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "vis/v1/queries/uu_mbms_provisioning_info" - query_parameters containing - location_info indicating value LOCATION_INFO_ECGI - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.4.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" - body containing - uuMbmsProvisioningInfo set to any_value - ; - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_002_OK_02" - - Test objective - "Check that the IUT responds with a configured provisioning information over Uu MBMS - when queried by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.4.3.1", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a uuMbmsProvisioningInfo containing - location_info indicating value LOCATION_INFO - ; - } - - // MEC 030 Clause 6.2.3 Type: UuMbmsProvisioningInfo - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "vis/v1/queries/uu_mbms_provisioning_info" - query_parameters containing - location_info indicating value LOCATION_INFO_LATITUDE - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.4.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" - body containing - uuMbmsProvisioningInfo set to any_value - ; - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_002_BR" - - Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.4.3.1", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a uuMbmsProvisioningInfo containing - location_info indicating value LOCATION_INFO - ; - } - - // MEC 030 Clause 6.2.3 Type: UuMbmsProvisioningInfo - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "vis/v1/queries/uu_mbms_provisioning_info" - query_parameters containing - location_info indicating value LOCATION_INFO_ECGI - // Wrong parameter name should trigger an error response. - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.4.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_002_NF" - - Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.4.3.1", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a uuMbmsProvisioningInfo containing - location_info indicating value LOCATION_INFO - ; - } - - // MEC 030 Clause 6.2.3 Type: UuMbmsProvisioningInfo - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "vis/v1/queries/uu_mbms_provisioning_info" - query_parameters containing - location_info indicating value LOCATION_INFO_UNKNOWN_LATITUDE - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.4.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_003_OK_01" - - Test objective - "Check that the IUT responds with a configured provisioning information over PC5 - when queried by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.5.3.1", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a pc5ProvisioningInfo containing - location_info indicating value LOCATION_INFO - ; - } - - // MEC 030 Clause 6.2.4 Type: Pc5ProvisioningInfo - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "vis/v1/queries/pc5_provisioning_info" - query_parameters containing - location_info indicating value LOCATION_INFO_ECGI - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.5.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" - body containing - pc5ProvisioningInfo set to any_value - ; - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_003_OK_02" - - Test objective - "Check that the IUT responds with a configured provisioning information over PC5 - when queried by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.5.3.1", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a pc5ProvisioningInfo containing - location_info indicating value LOCATION_INFO - ; - } - - // MEC 030 Clause 6.2.4 Type: Pc5ProvisioningInfo - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "vis/v1/queries/pc5_provisioning_info" - query_parameters containing - location_info indicating value LOCATION_INFO_LATITUDE - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.5.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" - body containing - pc5ProvisioningInfo set to any_value - ; - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_003_BR" - - Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.5.3.1", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a pc5ProvisioningInfo containing - location_info indicating value LOCATION_INFO - ; - } - - // MEC 030 Clause 6.2.4 Type: Pc5ProvisioningInfo - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "vis/v1/queries/pc5_provisioning_info" - query_parameters containing - location_info indicating value LOCATION_INFO_ECGI - // Wrong parameter name should trigger an error response. - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.5.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_003_NF" - - Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.5.3.1", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a pc5ProvisioningInfo containing - location_info indicating value LOCATION_INFO - ; - } - - // MEC 030 Clause 6.2.4 Type: Pc5ProvisioningInfo - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "vis/v1/queries/pc5_provisioning_info" - query_parameters containing - location_info indicating value LOCATION_INFO_UNKNOWN_ECGI - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.5.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_004_OK" - - Test objective - "Check that the IUT sends a request about QoS information for a vehicular UE - when queried by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.6.3.4", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a predictedQos - } - - // MEC 030 Clause 6.2.5 Type: PredictedQos - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "vis/v1/provide_predicted_qos" - body containing - predictedQos containing - locationGranularity indicating value PREDICTED_LOCATION_GRANULARITY, - routes indicating value PREDICTED_ROUTES - ; - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.6.3.4 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" - body containing - predictedQos containing - locationGranularity set to any_value, - routes set to any_value - ; - ; - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_004_BR" - - Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.6.3.4", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a predictedQos - } - - // MEC 030 Clause 6.2.5 Type: PredictedQos - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "vis/v1/provide_predicted_qos" - // Wrong parameter name should trigger an error response. - body containing - predictedQos containing - locationGranularity indicating value PREDICTED_LOCATION_GRANULARITY, - routes indicating value PREDICTED_ROUTES - ; - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.6.3.4 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_004_NF" - - Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.6.3.4", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity not having a predictedQos - } - - // MEC 030 Clause 6.2.5 Type: PredictedQos - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "vis/v1/provide_predicted_qos" - body containing - predictedQos containing - locationGranularity indicating value PREDICTED_LOCATION_GRANULARITY, - routes indicating value PREDICTED_UNKNOWN_ROUTES - ; - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.6.3.4 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_005_OK" - - Test objective - "Check that the IUT processes properly a request to publish a V2X message" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.7.3.4", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state - } - - // MEC 030 Clause 6.2.6 Type: V2xMsgPublication - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "vis/v1/publish_v2x_message" - body containing - V2xMsgPublication containing - stdOrganization indicating value "ETSI", - msgType indicating value 2, // ETSI ITS CAM, See ETSI TS 102 894-2 - msgEncodeFormat indicating value "base64", - msgContent indicating value CAM_VALUE_BASE_64 - ; - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.7.3.4 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "204 No Content" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_005_BR" - - Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.7.3.4", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state - } - - // MEC 030 Clause 6.2.6 Type: V2xMsgPublication - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "vis/v1/publish_v2x_message", - body containing - V2xMsgPublication containing - stdOrganization indicating value "UNKNOWN_ORG" - ; - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.7.3.4 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_006_OK_01" - - Test objective - "Check that the IUT responds with the requested list of subscription - when queried by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.8.3.1", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a provChgUuUniSubscription containing - _links containing - self indicating value HREF_UU_UNI_SUBSCRIPTION - ; - ; - } - - // MEC 030 Clause 6.3.2 Type: ProvChgUuUniSubscription - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "vis/v1/subscriptions/prov_chg_uu_uni" - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.8.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" containing - body containing - subscriptionLinkList containing - subscriptions containing - href indicating value HREF_UU_UNI_SUBSCRIPTION, - subscriptionType indicating value "ProvChgUuUniSubscription" - ; - ; - ;; - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_006_OK_02" - - Test objective - "Check that the IUT responds with the requested list of subscription - when queried by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.8.3.1", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a provChgUuMbmsSubscription containing - _links containing - self indicating value HREF_UU_MBMS_SUBSCRIPTION - ; - ; - } - - // MEC 030 Clause 6.3.3 Type: ProvChgUuMbmsSubscription - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "vis/v1/subscriptions/prov_chg_uu_mbms" - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.8.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" containing - body containing - subscriptionLinkList containing - subscriptions containing - href indicating value HREF_UU_MBMS_SUBSCRIPTION, - subscriptionType indicating value "ProvChgUuMbmsSubscription" - ; - ; - ;; - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_006_OK_03" - - Test objective - "Check that the IUT responds with the requested list of subscription - when queried by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.8.3.1", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a pc5ProvisioningInfo containing - _links containing - self indicating value HREF_PC5_SUBSCRIPTION - ; - ; - } - - // MEC 030 Clause 6.3.3 Type: ProvChgUuMbmsSubscription - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "vis/v1/subscriptions/prov_chg_pc5" - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.8.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" containing - body containing - subscriptionLinkList containing - subscriptions containing - href indicating value HREF_PC5_SUBSCRIPTION, - subscriptionType indicating value "ProvChgPc5Subscription" - ; - ; - ; - ;; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_006_OK_04" - - Test objective - "Check that the IUT responds with the requested list of subscription - when queried by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.8.3.1", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a v2xMsgSubscription containing - _links containing - self indicating value HREF_V2X_MSG_SUBSCRIPTION - ; - ; - } - - // MEC 030 Clause 6.3.5 Type: V2xMsgSubscription - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "vis/v1/subscriptions/v2x_msg" - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.8.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" containing - body containing - subscriptionLinkList containing - subscriptions containing - href indicating value HREF_V2X_MSG_SUBSCRIPTION, - subscriptionType indicating value "V2xMsgSubscription" - ; - ; - ;; - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_006_BR" - - Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.8.3.1", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a provChgUuUniSubscription containing - _links containing - self indicating value HREF_UU_UNI_SUBSCRIPTION - ; - ; - } - - // MEC 030 Clause 6.3.2 Type: ProvChgUuUniSubscription - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "vis/v1/subscriptions/{subscriptionType}", - query_parameters containing - // Wrong parameter name should trigger an error response. - subscriptionType indicating value ANY - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.8.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_007_OK_01" - - Test objective - "Check that the IUT responds with the requested to create a subscription" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.8.3.4", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state - } - - // MEC 030 Clause 6.3.2 Type: ProvChgUuUniSubscription - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "vis/v1/subscriptions", - body containing - provChgUuUniSubscription containing - subscriptionType indicating value "ProvChgUuUniSubscription", - callbackReference indicating value CALLBACK_UU_UNI_SUBSCRIPTION, - filterCriteria indicating value FILTER_UU_UNI_CRITERIA - ; - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.8.3.4 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "201 Created" containing - body containing - provChgUuUniSubscription containing - subscriptionType indicating value "ProvChgUuUniSubscription", - callbackReference indicating value CALLBACK_UU_UNI_SUBSCRIPTION, - filterCriteria indicating value FILTER_UU_UNI_CRITERIA, - _links indicating value HREF_UU_UNI_SUBSCRIPTION - ; - ;; - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_007_OK_02" - - Test objective - "Check that the IUT responds with the requested to create a subscription" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.8.3.4", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state - } - - // MEC 030 Clause 6.3.3 Type: ProvChgUuMbmsSubscription - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "vis/v1/subscriptions", - body containing - provChgUuMbmsSubscription containing - subscriptionType indicating value "ProvChgUuMbmsSubscription", - callbackReference indicating value CALLBACK_UU_MBMS_SUBSCRIPTION, - filterCriteria indicating value FILTER_UU_MBMS_CRITERIA - ; - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.8.3.4 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "201 Created" containing - body containing - provChgUuMbmsSubscription containing - subscriptionType indicating value "ProvChgUuMbmsSubscription", - callbackReference indicating value CALLBACK_UU_MBMS_SUBSCRIPTION, - filterCriteria indicating value FILTER_UU_MBMS_CRITERIA, - _links indicating value HREF_UU_MBMS_SUBSCRIPTION - ; - ;; - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_007_OK_03" - - Test objective - "Check that the IUT responds with the requested to create a subscription" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.8.3.4", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state - } - - // MEC 030 Clause 6.3.4 Type: ProvChgPc5Subscription - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "vis/v1/subscriptions" - body containing - provChgPc5Subscription containing - subscriptionType indicating value "ProvChgPc5Subscription", - callbackReference indicating value CALLBACK_PC5_SUBSCRIPTION, - filterCriteria indicating value FILTER_PC5_CRITERIA - ; - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.8.3.4 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "201 Created" containing - body containing - provChgPc5Subscription containing - subscriptionType indicating value "ProvChgPc5Subscription", - callbackReference indicating value CALLBACK_PC5_SUBSCRIPTION, - filterCriteria indicating value FILTER_PC5_CRITERIA, - _links indicating value HREF_PC5_SUBSCRIPTION - ; - ;; - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_007_OK_04" - - Test objective - "Check that the IUT responds with the requested to create a subscription" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.8.3.4", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state - } - - // MEC 030 Clause 6.3.5 Type: V2xMsgSubscription - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "vis/v1/subscriptions" - body containing - v2xMsgSubscription containing - subscriptionType indicating value "V2xMsgSubscription", - callbackReference indicating value CALLBACK_PC5_SUBSCRIPTION, - filterCriteria indicating value FILTER_V2XMSG_CRITERIA - ; - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.8.3.4 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "201 Created" containing - body containing - v2xMsgSubscription containing - subscriptionType indicating value "V2xMsgSubscription", - callbackReference indicating value CALLBACK_V2XMSG_SUBSCRIPTION, - filterCriteria indicating value FILTER_V2XMSG_CRITERIA, - _links indicating value HREF_V2XMSG_SUBSCRIPTION - ; - ;; - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_007_BR" - - Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.8.3.4", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state - } - - // MEC 030 Clause 6.3.3 Type: ProvChgUuMbmsSubscription - Expected behaviour - ensure that { - when { - the IUT entity receives a vPOST containing - uri indicating value "vis/v1/subscriptions" - body containing - provChgUuMbmsSubscription containing - subscriptionType indicating value "InvalidProvChgUuMbmsSubscription", // Invalid SubscriptionType - callbackReference indicating value CALLBACK_UU_MBMS_SUBSCRIPTION, - filterCriteria indicating value FILTER_UU_MBMS_CRITERIA - ; - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.8.3.4 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_008_OK_01" - - Test objective - "Check that the IUT responds with the requested of subscription information - when queried by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.9.3.1", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a provChgUuUniSubscription containing - _links containing - self indicating value HREF_UU_UNI_SUBSCRIPTION - ; - ; - } - - // MEC 030 Clause 6.3.2 Type: ProvChgUuUniSubscription - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "vis/v1/subscriptions/{subscriptionId}", - query_parameters containing - subscriptionId indicating value HREF_UU_UNI_SUBSCRIPTION - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.9.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" containing - body containing - provChgUuUniSubscription containing - subscriptionType indicating value "ProvChgUuUniSubscription", - callbackReference indicating value CALLBACK_UU_UNI_SUBSCRIPTION, - filterCriteria indicating value FILTER_UU_UNI_CRITERIA, - _links indicating value HREF_UU_UNI_SUBSCRIPTION - ; - ;; - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_008_OK_02" - - Test objective - "Check that the IUT responds with the requested of subscription information - when queried by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.9.3.1", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a provChgUuMbmsSubscription containing - _links containing - self indicating value HREF_UU_MBMS_SUBSCRIPTION - ; - ; - } - - // MEC 030 Clause 6.3.3 Type: ProvChgUuMbmsSubscription - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "vis/v1/subscriptions/{subscriptionId}", - query_parameters containing - subscriptionId indicating value HREF_UU_MBMS_SUBSCRIPTION - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.9.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" containing - body containing - provChgUuMbmsSubscription containing - subscriptionType indicating value "ProvChgUuMbmsSubscription", - callbackReference indicating value CALLBACK_UU_MBMS_SUBSCRIPTION, - filterCriteria indicating value FILTER_UU_MBMS_CRITERIA, - _links indicating value HREF_UU_MBMS_SUBSCRIPTION - ; - ;; - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_008_OK_03" - - Test objective - "Check that the IUT responds with the requested of subscription information - when queried by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.9.3.1", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a provChgPc5Subscription containing - _links containing - self indicating value HREF_PC5_SUBSCRIPTION - ; - ; - } - - // MEC 030 Clause 6.3.4 Type: ProvChgPc5Subscription - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "vis/v1/subscriptions/{subscriptionId}", - query_parameters containing - subscriptionId indicating value HREF_PC5_SUBSCRIPTION - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.9.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" containing - body containing - provChgPc5Subscription containing - subscriptionType indicating value "ProvChgPc5Subscription", - callbackReference indicating value CALLBACK_PC5_SUBSCRIPTION, - filterCriteria indicating value FILTER_PC5_CRITERIA, - _links indicating value HREF_PC5_SUBSCRIPTION - ; - ;; - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_008_OK_04" - - Test objective - "Check that the IUT responds with the requested of subscription information - when queried by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.9.3.1", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a v2xMsgSubscription containing - _links containing - self indicating value HREF_V2XMSG_SUBSCRIPTION - ; - ; - } - - // MEC 030 Clause 6.3.5 Type: V2xMsgSubscription - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "vis/v1/subscriptions/{subscriptionId}", - query_parameters containing - subscriptionId indicating value HREF_V2XMSG_SUBSCRIPTION - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.9.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" containing - body containing - v2xMsgSubscription containing - subscriptionType indicating value "V2xMsgSubscription", - callbackReference indicating value CALLBACK_V2XMSG_SUBSCRIPTION, - filterCriteria indicating value FILTER_V2XMSG_CRITERIA, - _links indicating value HREF_V2XMSG_SUBSCRIPTION - ; - ;; - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_008_BR" - - Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.9.3.1", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a v2xMsgSubscription containing - _links containing - self indicating value HREF_V2XMSG_SUBSCRIPTION - ; - ; - } - - // MEC 030 Clause 6.3.5 Type: V2xMsgSubscription - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "vis/v1/subscriptions/{subscriptionId}", - query_parameters containing - // Wrong parameter name should trigger an error response. - subscriptionId indicating value HREF_V2XMSG_SUBSCRIPTION - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.9.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_008_NF" - - Test objective - "Check that the IUT responds with an error when - a request with incorrect parameters is sent by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.9.3.1", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a v2xMsgSubscription containing - _links containing - self indicating value HREF_V2XMSG_SUBSCRIPTION - ; - ; - } - - // MEC 030 Clause 6.3.5 Type: V2xMsgSubscription - Expected behaviour - ensure that { - when { - the IUT entity receives a vGET containing - uri indicating value "vis/v1/subscriptions/{subscriptionId}", - query_parameters containing - subscriptionId indicating value HREF_V2XMSG_UNKNOWN_SUBSCRIPTION - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.9.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_009_OK_01" - - Test objective - "Check that the IUT responds with the requested of updating subscription - when queried by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.9.3.2", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a provChgUuUniSubscription containing - _links containing - self indicating value HREF_UU_UNI_SUBSCRIPTION - ; - ; - } - - // MEC 030 Clause 6.3.2 Type: ProvChgUuUniSubscription - Expected behaviour - ensure that { - when { - the IUT entity receives a vPUT containing - uri indicating value "vis/v1/subscriptions/{subscriptionId}", - query_parameters containing - subscriptionId indicating value HREF_UU_UNI_SUBSCRIPTION, - body containing - provChgUuUniSubscription containing - subscriptionType indicating value "ProvChgUuUniSubscription", - callbackReference indicating value CALLBACK_UU_UNI_SUBSCRIPTION, - filterCriteria indicating value FILTER_UU_UNI_CRITERIA_1, - _links indicating value HREF_UU_UNI_SUBSCRIPTION - ; - ;; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.9.3.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" containing - body containing - provChgUuUniSubscription containing - subscriptionType indicating value "ProvChgUuUniSubscription", - callbackReference indicating value CALLBACK_UU_UNI_SUBSCRIPTION, - filterCriteria indicating value FILTER_UU_UNI_CRITERIA_1, - _links indicating value HREF_UU_UNI_SUBSCRIPTION - ; - ;; - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_009_OK_02" - - Test objective - "Check that the IUT responds with the requested of updating subscription - when queried by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.9.3.2", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a provChgUuMbmsSubscription containing - _links containing - self indicating value HREF_UU_MBMS_SUBSCRIPTION - ; - ; - } - - // MEC 030 Clause 6.3.3 Type: ProvChgUuMbmsSubscription - Expected behaviour - ensure that { - when { - the IUT entity receives a vPUT containing - uri indicating value "vis/v1/subscriptions/{subscriptionId}", - query_parameters containing - subscriptionId indicating value HREF_UU_MBMS_SUBSCRIPTION, - body containing - provChgUuMbmsSubscription containing - subscriptionType indicating value "ProvChgUuMbmsSubscription", - callbackReference indicating value CALLBACK_UU_MBMS_SUBSCRIPTION, - filterCriteria indicating value FILTER_UU_MBMS_CRITERIA_1, - _links indicating value HREF_UU_MBMS_SUBSCRIPTION - ; - ;; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.9.3.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" containing - body containing - provChgUuMbmsSubscription containing - subscriptionType indicating value "ProvChgUuMbmsSubscription", - callbackReference indicating value CALLBACK_UU_MBMS_SUBSCRIPTION, - filterCriteria indicating value FILTER_UU_MBMS_CRITERIA_1, - _links indicating value HREF_UU_MBMS_SUBSCRIPTION - ; - ;; - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_009_OK_03" - - Test objective - "Check that the IUT responds with the requested of updating subscription - when queried by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.9.3.2", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a provChgPc5Subscription containing - _links containing - self indicating value HREF_PC5_SUBSCRIPTION - ; - ; - } - - // MEC 030 Clause 6.3.4 Type: ProvChgPc5Subscription - Expected behaviour - ensure that { - when { - the IUT entity receives a vPUT containing - uri indicating value "vis/v1/subscriptions/{subscriptionId}", - query_parameters containing - subscriptionId indicating value HREF_PC5_SUBSCRIPTION, - body containing - provChgPc5Subscription containing - subscriptionType indicating value "ProvChgPc5Subscription", - callbackReference indicating value CALLBACK_PC5_SUBSCRIPTION, - filterCriteria indicating value FILTER_PC5_CRITERIA_1, - _links indicating value HREF_PC5_SUBSCRIPTION - ; - ;; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.9.3.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" containing - body containing - provChgPc5Subscription containing - subscriptionType indicating value "ProvChgPc5Subscription", - callbackReference indicating value CALLBACK_PC5_SUBSCRIPTION, - filterCriteria indicating value FILTER_PC5_CRITERIA_1, - _links indicating value HREF_PC5_SUBSCRIPTION - ; - ;; - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_009_OK_04" - - Test objective - "Check that the IUT responds with the requested of updating subscription - when queried by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.9.3.2", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a v2xMsgSubscription containing - _links containing - self indicating value HREF_V2XMSG_SUBSCRIPTION - ; - ; - } - - // MEC 030 Clause 6.3.5 Type: V2xMsgSubscription - Expected behaviour - ensure that { - when { - the IUT entity receives a vPUT containing - uri indicating value "vis/v1/subscriptions/{subscriptionId}", - query_parameters containing - subscriptionId indicating value HREF_V2XMSG_SUBSCRIPTION, - body containing - v2xMsgSubscription containing - subscriptionType indicating value "ProvChgPc5Subscription", - callbackReference indicating value CALLBACK_V2XMSG_SUBSCRIPTION, - filterCriteria indicating value FILTER_V2XMSG_CRITERIA_1, - _links indicating value HREF_V2XMSG_SUBSCRIPTION - ; - ;; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.9.3.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "200 OK" containing - body containing - v2xMsgSubscription containing - subscriptionType indicating value "V2xMsgSubscription", - callbackReference indicating value CALLBACK_V2XMSG_SUBSCRIPTION, - filterCriteria indicating value FILTER_V2XMSG_CRITERIA_1, - _links indicating value HREF_V2XMSG_SUBSCRIPTION - ; - ;; - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_009_BR" - - Test objective - "Check that the IUT responds with the requested of updating subscription - when queried by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.9.3.2", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a provChgUuUniSubscription containing - _links containing - self indicating value HREF_UU_UNI_SUBSCRIPTION - ; - ; - } - - // MEC 030 Clause 6.3.2 Type: ProvChgUuUniSubscription - Expected behaviour - ensure that { - when { - the IUT entity receives a vPUT containing - uri indicating value "vis/v1/subscriptions/{subscriptionId}", - query_parameters containing - subscriptionId indicating value HREF_UU_UNI_SUBSCRIPTION, - body containing - provChgUuUniSubscription containing - subscriptionType indicating value "InvalidProvChgUuUniSubscription", // Invalid SubscriptionType - callbackReference indicating value CALLBACK_UU_UNI_SUBSCRIPTION, - filterCriteria indicating value FILTER_UU_UNI_CRITERIA_1, - _links indicating value HREF_UU_UNI_SUBSCRIPTION - ; - ;; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.9.3.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "400 Bad Request" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_009_NF" - - Test objective - "Check that the IUT responds with the requested of updating subscription - when queried by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.9.3.2", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a provChgUuUniSubscription containing - _links containing - self indicating value HREF_UU_UNI_SUBSCRIPTION - ; - ; - } - - // MEC 030 Clause 6.3.2 Type: ProvChgUuUniSubscription - Expected behaviour - ensure that { - when { - the IUT entity receives a vPUT containing - uri indicating value "vis/v1/subscriptions/{subscriptionId}", - query_parameters containing - subscriptionId indicating value HREF_UU_UNI_UNKNOWN_SUBSCRIPTION, - body containing - provChgUuUniSubscription containing - subscriptionType indicating value "ProvChgUuUniSubscription", - callbackReference indicating value CALLBACK_UU_UNI_SUBSCRIPTION, - filterCriteria indicating value FILTER_UU_UNI_CRITERIA_1, - _links indicating value HREF_UU_UNI_SUBSCRIPTION - ; - ;; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.9.3.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_010_OK_01" - - Test objective - "Check that the IUT responds with the requested of removing subscription - when queried by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.9.3.2", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a provChgUuUniSubscription containing - _links containing - self indicating value HREF_UU_UNI_SUBSCRIPTION - ; - ; - } - - // MEC 030 Clause 6.3.2 Type: ProvChgUuUniSubscription - Expected behaviour - ensure that { - when { - the IUT entity receives a vDELETE containing - uri indicating value "vis/v1/subscriptions/{subscriptionId}", - query_parameters containing - subscriptionId indicating value HREF_UU_UNI_SUBSCRIPTION - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.9.3.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "204 No Content" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_010_OK_02" - - Test objective - "Check that the IUT responds with the requested of removing subscription - when queried by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.9.3.2", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a provChgUuMbmsSubscription containing - _links containing - self indicating value HREF_UU_MBMS_SUBSCRIPTION - ; - ; - } - - // MEC 030 Clause 6.3.3 Type: ProvChgUuMbmsSubscription - Expected behaviour - ensure that { - when { - the IUT entity receives a vDELETE containing - uri indicating value "vis/v1/subscriptions/{subscriptionId}", - query_parameters containing - subscriptionId indicating value HREF_UU_MBMS_SUBSCRIPTION - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.9.3.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "204 No Content" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_010_OK_03" - - Test objective - "Check that the IUT responds with the requested of removing subscription - when queried by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.9.3.2", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a provChgPc5Subscription containing - _links containing - self indicating value HREF_PC5_SUBSCRIPTION - ; - ; - } - - // MEC 030 Clause 6.3.4 Type: ProvChgPc5Subscription - Expected behaviour - ensure that { - when { - the IUT entity receives a vDELETE containing - uri indicating value "vis/v1/subscriptions/{subscriptionId}", - query_parameters containing - subscriptionId indicating value HREF_PC5_SUBSCRIPTION - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.9.3.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "204 No Content" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_010_OK_04" - - Test objective - "Check that the IUT responds with the requested of removing subscription - when queried by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.9.3.2", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a v2xMsgSubscription containing - _links containing - self indicating value HREF_V2XMSG_SUBSCRIPTION - ; - ; - } - - // MEC 030 Clause 6.3.5 Type: V2xMsgSubscription - Expected behaviour - ensure that { - when { - the IUT entity receives a vDELETE containing - uri indicating value "vis/v1/subscriptions/{subscriptionId}", - query_parameters containing - subscriptionId indicating value HREF_V2XMSG_SUBSCRIPTION - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.9.3.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "204 No Content" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_010_NF" - - Test objective - "Check that the IUT responds with the requested of removing subscription - when queried by a MEC Application" - - Reference "ETSI GS MEC 030 V2.1.1, clause 7.9.3.2", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the IUT entity having a provChgUuUniSubscription containing - _links containing - self indicating value HREF_UU_UNI_SUBSCRIPTION - ; - ; - } - - // MEC 030 Clause 6.3.2 Type: ProvChgUuUniSubscription - Expected behaviour - ensure that { - when { - the IUT entity receives a vDELETE containing - uri indicating value "vis/v1/subscriptions/{subscriptionId}", - query_parameters containing - subscriptionId indicating value HREF_UU_UNI_SUBSCRIPTION - ; - ; - from the MEC_APP entity - } - then { - // MEC 030 Clause 7.9.3.2 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "404 Not Found" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_011_OK_01" - - Test objective - "Check that the IUT sends a notification about the provisioning information changes for V2X communication over Uu unicast" - - Reference "ETSI GS MEC 030 V2.1.1, clause 5.5.6", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a ProvChgUuUniSubscription containing - callbackReference indicating value CALLBACK_UU_UNI_URI - ; - } - - // MEC 030 Clause 6.4.2 Type: ProvChgUuUniSubscription - Expected behaviour - ensure that { - when { - the IUT entity generates a provChgUuUniNotification containing - notificationType indicating value "ProvChgUuUniNotification", - locationInfo indicating value LOCATION_INFO; - } - then { - // MEC 030 Clause 7.3.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "204 No Content" - ; - to the MEC_APP entity - } - } - } - - - Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_011_OK_02" - - Test objective - "Check that the IUT sends a notification about the provisioning information changes for V2X communication over Uu MBMS" - - Reference "ETSI GS MEC 030 V2.1.1, clause 5.5.7", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a ProvChgUuMbmsSubscription containing - callbackReference indicating value CALLBACK_UU_MBMS_URI - ; - } - - // MEC 030 Clause 6.4.3 Type: ProvChgUuMbmsSubscription - Expected behaviour - ensure that { - when { - the IUT entity generates a provChgUuMbmsNotification containing - notificationType indicating value "ProvChgUuMbmsNotification", + import all from MEC_Common; + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_001_OK_01" + + Test objective + "Check that the IUT responds with a configured provisioning information over Uu unicast when queried by a MEC Application" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.1", + "ETSI GS MEC 030 V3.1.1, clause 6.2.2", + "ETSI GS MEC 030 V3.1.1, clause 7.3.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a uuUnicastProvisioningInfo containing + locationInfo indicating value LOCATION_INFO_ECGI; + } + + // MEC 030 Clause 6.2.2 Type: UuUnicastProvisioningInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "vis/v2/queries/uu_unicast_provisioning_info" + query_parameters containing + locationInfo indicating value LOCATION_INFO_ECGI;; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.3.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + uuUnicastProvisioningInfo containing + locationInfo indicating value LOCATION_INFO_ECGI;;; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_001_OK_02" + + Test objective + "Check that the IUT responds with a configured provisioning information over Uu unicast when queried by a MEC Application" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.1", + "ETSI GS MEC 030 V3.1.1, clause 6.2.2", + "ETSI GS MEC 030 V3.1.1, clause 7.3.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a uuUnicastProvisioningInfo containing + locationInfo indicating value LOCATION_INFO_LATITUDE; + } + + // MEC 030 Clause 6.2.2 Type: UuUnicastProvisioningInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "vis/v2/queries/uu_unicast_provisioning_info" + query_parameters containing + locationInfo indicating value LOCATION_INFO_LATITUDE;; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.3.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + uuUnicastProvisioningInfo containing + locationInfo indicating value LOCATION_INFO_LATITUDE;;; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_001_BR" + + Test objective + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.1", + "ETSI GS MEC 030 V3.1.1, clause 6.2.2", + "ETSI GS MEC 030 V3.1.1, clause 7.3.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a uuUnicastProvisioningInfo containing + locationInfo indicating value LOCATION_INFO_LATITUDE; + } + + // MEC 030 Clause 6.2.2 Type: UuUnicastProvisioningInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "vis/v2/queries/uu_unicast_provisioning_info" + query_parameters containing + locationInfo indicating value LOCATION_INFO_LATITUDE_AND_ECGI;; // Wrong parameter: Either ecgi or geoArea shall be present, but not both + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.3.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_001_NF" + + Test objective + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.1", + "ETSI GS MEC 030 V3.1.1, clause 6.2.2", + "ETSI GS MEC 030 V3.1.1, clause 7.3.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a uuUnicastProvisioningInfo containing + locationInfo indicating value LOCATION_INFO_ECGI ; + } + + // MEC 030 Clause 6.2.2 Type: UuUnicastProvisioningInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "vis/v2/queries/uu_unicast_provisioning_info" + query_parameters containing + locationInfo indicating value LOCATION_INFO_UNKNOWN_ECGI;; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.3.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_002_OK_01" + + Test objective + "Check that the IUT responds with a configured provisioning information over Uu MBMS when queried by a MEC Application" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.2", + "ETSI GS MEC 030 V3.1.1, clause 6.2.3", + "ETSI GS MEC 030 V3.1.1, clause 7.4.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a uuMbmsProvisioningInfo containing + locationInfo indicating value LOCATION_INFO_ECGI; + } + + // MEC 030 Clause 6.2.3 Type: UuMbmsProvisioningInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "vis/v2/queries/uu_mbms_provisioning_info" + query_parameters containing + locationInfo indicating value LOCATION_INFO_ECGI;; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.4.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + uuMbmsProvisioningInfo containing + locationInfo indicating value LOCATION_INFO_ECGI;;; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_002_OK_02" + + Test objective + "Check that the IUT responds with a configured provisioning information over Uu MBMS + when queried by a MEC Application" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.2", + "ETSI GS MEC 030 V3.1.1, clause 6.2.3", + "ETSI GS MEC 030 V3.1.1, clause 7.4.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a uuMbmsProvisioningInfo containing + locationInfo indicating value LOCATION_INFO; + } + + // MEC 030 Clause 6.2.3 Type: UuMbmsProvisioningInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "vis/v2/queries/uu_mbms_provisioning_info" + query_parameters containing + locationInfo indicating value LOCATION_INFO_LATITUDE;; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.4.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + uuMbmsProvisioningInfo containing + locationInfo indicating value LOCATION_INFO_LATITUDE;;; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_002_BR" + + Test objective + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.2", + "ETSI GS MEC 030 V3.1.1, clause 6.2.3", + "ETSI GS MEC 030 V3.1.1, clause 7.4.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a uuMbmsProvisioningInfo containing locationInfo indicating value LOCATION_INFO; - } - then { - // MEC 030 Clause 7.3.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "204 No Content" - ; - to the MEC_APP entity - } - } - } - + } + + // MEC 030 Clause 6.2.3 Type: UuMbmsProvisioningInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "vis/v2/queries/uu_mbms_provisioning_info" + query_parameters containing + locationInfo indicating value LOCATION_INFO_LATITUDE_AND_ECGI;; // Wrong parameter: Either ecgi or geoArea shall be present, but not both + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.4.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_002_NF" + + Test objective + "Check that the IUT responds with an error when + a request with incorrect parameters is sent by a MEC Application" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.2", + "ETSI GS MEC 030 V3.1.1, clause 6.2.3", + "ETSI GS MEC 030 V3.1.1, clause 7.4.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a uuMbmsProvisioningInfo containing + locationInfo indicating value LOCATION_INFO; + } + + // MEC 030 Clause 6.2.3 Type: UuMbmsProvisioningInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "vis/v2/queries/uu_mbms_provisioning_info" + query_parameters containing + locationInfo indicating value LOCATION_INFO_UNKNOWN_LATITUDE;; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.4.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_003_OK_01" + + Test objective + "Check that the IUT responds with a configured provisioning information over PC5 when queried by a MEC Application" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.3", + "ETSI GS MEC 030 V3.1.1, clause 6.2.4", + "ETSI GS MEC 030 V3.1.1, clause 7.5.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a pc5ProvisioningInfo containing + locationInfo indicating value LOCATION_INFO; + } + + // MEC 030 Clause 6.2.4 Type: Pc5ProvisioningInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "vis/v2/queries/pc5_provisioning_info" + query_parameters containing + locationInfo indicating value LOCATION_INFO_ECGI;; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.5.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + pc5ProvisioningInfo containing + locationInfo indicating value LOCATION_INFO_ECGI;;; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_003_OK_02" + + Test objective + "Check that the IUT responds with a configured provisioning information over PC5 when queried by a MEC Application" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.3", + "ETSI GS MEC 030 V3.1.1, clause 6.2.4", + "ETSI GS MEC 030 V3.1.1, clause 7.5.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a pc5ProvisioningInfo containing + locationInfo indicating value LOCATION_INFO; + } + + // MEC 030 Clause 6.2.4 Type: Pc5ProvisioningInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "vis/v2/queries/pc5_provisioning_info" + query_parameters containing + locationInfo indicating value LOCATION_INFO_LATITUDE;; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.5.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + pc5ProvisioningInfo set to any_value containing + locationInfo indicating value LOCATION_INFO_LATITUDE;;; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_003_BR" + + Test objective + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.3", + "ETSI GS MEC 030 V3.1.1, clause 6.2.4", + "ETSI GS MEC 030 V3.1.1, clause 7.5.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a pc5ProvisioningInfo containing + locationInfo indicating value LOCATION_INFO; + } + + // MEC 030 Clause 6.2.4 Type: Pc5ProvisioningInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "vis/v2/queries/pc5_provisioning_info" + query_parameters containing + locationInfo indicating value LOCATION_INFO_LATITUDE_AND_ECGI;; // Wrong parameter: Either ecgi or geoArea shall be present, but not both + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.5.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_003_NF" + + Test objective + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.3", + "ETSI GS MEC 030 V3.1.1, clause 6.2.4", + "ETSI GS MEC 030 V3.1.1, clause 7.5.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a pc5ProvisioningInfo containing + locationInfo indicating value LOCATION_INFO; + } + + // MEC 030 Clause 6.2.4 Type: Pc5ProvisioningInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "vis/v2/queries/pc5_provisioning_info" + query_parameters containing + locationInfo indicating value LOCATION_INFO_UNKNOWN_ECGI;; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.5.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_004_OK" + + Test objective + "Check that the IUT processes properly a request to information of V2X Message Distribution servers" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.4", + "ETSI GS MEC 030 V3.1.1, clause 6.2.5", + "ETSI GS MEC 030 V3.1.1, clause 7.6.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having V2xMsgDistributionServerMqtt + } + + // MEC 030 Clause 6.2.5 Type: V2xMsgDistributionServerInfo + Expected behaviour + ensure that { + when { + the IUT entity sends a vPOST containing + uri indicating value "vis/v2/provide_v2x_msg_distribution_server_info", + body containing + V2xMsgDistributionServerInfo containing + v2xMsgDistributionServer containing + infoProtocol containing + msgProtocol indicating value 0;;, + not infoConnection;;; // MQTT v3.1.0 + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.6.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK", + body containing + V2xMsgDistributionServerInfo containing + v2xMsgDistributionServer containing + infoProtocol containing + msgProtocol indicating value 0;;, // MQTT v3.1.0 + infoConnection indicating value any_value;;; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_004_BR" + + Test objective + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.4", + "ETSI GS MEC 030 V3.1.1, clause 6.2.5", + "ETSI GS MEC 030 V3.1.1, clause 7.6.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having V2xMsgDistributionServerMqtt + } + + // MEC 030 Clause 6.2.5 Type: V2xMsgDistributionServerInfo + Expected behaviour + ensure that { + when { + the IUT entity sends a vPOST containing + uri indicating value "vis/v2/provide_v2x_msg_distribution_server_info", + body containing + V2xMsgDistributionServerInfo containing + v2xMsgDistributionServer containing + infoProtocol containing + msgProtocol indicating value 0;;, + infoConnection indicating value any_value;;; // Wrong field value: Shall only be included in the response + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.7.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_004_NF" + + Test objective + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.4", + "ETSI GS MEC 030 V3.1.1, clause 6.2.5", + "ETSI GS MEC 030 V3.1.1, clause 7.6.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity not havingV2xMsgDistributionServerMqtt + } + + // MEC 030 Clause 6.2.5 Type: V2xMsgDistributionServerInfo + Expected behaviour + ensure that { + when { + the IUT entity sends a vPOST containing + uri indicating value "vis/v2/provide_v2x_msg_distribution_server_info", + body containing + V2xMsgDistributionServerInfo containing + v2xMsgDistributionServer containing + infoProtocol containing + msgProtocol indicating value 0;;, + not infoConnection;;; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.7.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_005_OK" + + Test objective + "Check that the IUT sends a request about QoS information for a vehicular UE when queried by a MEC Application" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.5", + "ETSI GS MEC 030 V3.1.1, clause 6.2.6", + "ETSI GS MEC 030 V3.1.1, clause 7.7.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a predictedQos + } + + // MEC 030 Clause 6.2.5 Type: PredictedQos + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "vis/v2/provide_predicted_qos" + body containing + predictedQos containing + predictionTarget indicating value 1, // SINGLE_UE_PREDICTION + locationGranularity indicating value PREDICTED_LOCATION_GRANULARITY, + routes indicating value PREDICTED_ROUTES, + not qos;;; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.6.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + predictedQos containing + locationGranularity indicating value any_value, + routes indicating value any_value, + qos indicating value any_value;;; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_005_BR" + + Test objective + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.5", + "ETSI GS MEC 030 V3.1.1, clause 6.2.6", + "ETSI GS MEC 030 V3.1.1, clause 7.7.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a predictedQos + } + + // MEC 030 Clause 6.2.5 Type: PredictedQos + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "vis/v2/provide_predicted_qos" + body containing + predictedQos containing + predictionTarget indicating value 1, // SINGLE_UE_PREDICTION + locationGranularity indicating value PREDICTED_LOCATION_GRANULARITY, + routes indicating value PREDICTED_ROUTES, + qos indicating value any_value;;; // Wrong field value: Shall only be included in the response + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.6.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_005_NF" + + Test objective + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.5", + "ETSI GS MEC 030 V3.1.1, clause 6.2.6", + "ETSI GS MEC 030 V3.1.1, clause 7.7.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a predictedQos + } + + // MEC 030 Clause 6.2.5 Type: PredictedQos + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "vis/v2/provide_predicted_qos" + body containing + predictedQos containing + predictionTarget indicating value 1, // SINGLE_UE_PREDICTION + locationGranularity indicating value PREDICTED_LOCATION_GRANULARITY, + routes indicating value PREDICTED_UNKNOWN_ROUTES, + not qos;;; // Wrong field value: Shall only be included in the response + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.6.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_006_OK" + + Test objective + "Check that the IUT processes properly a request to publish a V2X message" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.10.1", + "ETSI GS MEC 030 V3.1.1, clause 6.2.7", + "ETSI GS MEC 030 V3.1.1, clause 7.8.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "vis/v2/publish_v2x_message" + body containing + V2xMsgPublication containing + msgPropertiesValues containing + stdOrganization indicating value "ETSI", + msgType indicating value 2, + msgProtocolVersion indicating value 3, // ETSI TS 102 894-2 + locationInfo indicating value any_value;, // ETSI ITS CAM, See ETSI TS 102 894-2 + msgRepresentationFormat indicating value "base64", + msgContent indicating value CAM_VALUE_BASE_64;;; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.7.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "204 No Content"; + to the MEC_APP entity + } + } + } Test Purpose { - TP Id "TP_MEC_MEC030_SRV_V2X_011_OK_03" + TP Id "TP_MEC_MEC030_SRV_V2X_006_BR" Test objective - "Check that the IUT sends a notification about the provisioning information changes for V2X communication over PC5" - - Reference "ETSI GS MEC 030 V2.1.1, clause 5.5.8", - "https://forge.etsi.org/rep/mec/gs030-vis-api/blob/master/MEC030_V2XInformationService.yaml" - - Config Id Config_MEC_1 - - PICS Selection PIC_MEC_PLAT and PIC_SERVICES - - Initial conditions with { - the IUT entity being_in idle_state and - the MEC_APP entity having a ProvChgPc5Subscription containing - callbackReference indicating value CALLBACK_PC5_URI - ; - } - - // MEC 030 Clause 6.4.4 Type: ProvChgPc5Subscription - Expected behaviour - ensure that { - when { - the IUT entity generates a provChgPc5Notification containing - notificationType indicating value "ProvChgPc5Notification", - locationInfo indicating value LOCATION_INFO; - } - then { - // MEC 030 Clause 7.3.3.1 - the IUT entity sends a HTTP_RESPONSE containing - status_code set to "204 No Content" - ; - to the MEC_APP entity - } - } - } - + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.10.1", + "ETSI GS MEC 030 V3.1.1, clause 6.2.7", + "ETSI GS MEC 030 V3.1.1, clause 7.8.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "vis/v2/publish_v2x_message" + body containing + V2xMsgPublication containing + msgPropertiesValues containing + stdOrganization indicating value "UNKNOWN_ORGANIZATION", + msgType indicating value 2, + msgProtocolVersion indicating value 3, // ETSI TS 102 894-2 + locationInfo indicating value any_value;, // ETSI ITS CAM, See ETSI TS 102 894-2 + msgRepresentationFormat indicating value "base64", + msgContent indicating value CAM_VALUE_BASE_64;;; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.7.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_007_OK_01" + + Test objective + "Check that the IUT responds with the requested list of subscription when queried by a MEC Application - prov_chg_uu_uni" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 6.3.2", + "ETSI GS MEC 030 V3.1.1, clause 6.3.7", + "ETSI GS MEC 030 V3.1.1, clause 7.9.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a provChgUuUniSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_1;, + subscriptionType indicating value "ProvChgUuUniSubscription"; and + the IUT entity having a provChgUuMbmsSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_2;, + subscriptionType indicating value "ProvChgUuMbmsSubscription"; and + the IUT entity having a provChgPc5Subscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_3;, + subscriptionType indicating value "ProvChgPc5Subscription"; and + the IUT entity having a v2xMsgSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_4;, + subscriptionType indicating value "V2xMsgSubscription"; and + the IUT entity having a predQosSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_5;, + subscriptionType indicating value "PredQosSubscription"; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "vis/v2/subscriptions", + query_parameters containing + subscriptionType indicating value "prov_chg_uu_uni";; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.8.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" containing + body containing + subscriptionLinkList containing + _links containing + self indicating value HREF_SUBSCRIPTION_1, + subscriptions containing + href indicating value HREF_SUBSCRIPTION_1, + subscriptionType indicating value "prov_chg_uu_uni";;;;;; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_007_OK_02" + + Test objective + "Check that the IUT responds with the requested list of subscription when queried by a MEC Application - prov_chg_uu_mbms" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 6.3.3", + "ETSI GS MEC 030 V3.1.1, clause 6.3.7", + "ETSI GS MEC 030 V3.1.1, clause 7.9.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a provChgUuUniSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_1;, + subscriptionType indicating value "ProvChgUuUniSubscription"; and + the IUT entity having a provChgUuMbmsSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_2;, + subscriptionType indicating value "ProvChgUuMbmsSubscription"; and + the IUT entity having a provChgPc5Subscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_3;, + subscriptionType indicating value "ProvChgPc5Subscription"; and + the IUT entity having a v2xMsgSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_4;, + subscriptionType indicating value "V2xMsgSubscription"; and + the IUT entity having a predQosSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_5;, + subscriptionType indicating value "PredQosSubscription"; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "vis/v2/subscriptions", + query_parameters containing + subscriptionType indicating value "prov_chg_uu_mbms";; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.8.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" containing + body containing + subscriptionLinkList containing + _links containing + self indicating value HREF_SUBSCRIPTION_2, + subscriptions containing + href indicating value HREF_SUBSCRIPTION_2, + subscriptionType indicating value "prov_chg_uu_mbms";;;;;; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_007_OK_03" + + Test objective + "Check that the IUT responds with the requested list of subscription when queried by a MEC Application - prov_chg_pc5" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 6.3.4", + "ETSI GS MEC 030 V3.1.1, clause 6.3.7", + "ETSI GS MEC 030 V3.1.1, clause 7.9.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a provChgUuUniSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_1;, + subscriptionType indicating value "ProvChgUuUniSubscription"; and + the IUT entity having a provChgUuMbmsSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_2;, + subscriptionType indicating value "ProvChgUuMbmsSubscription"; and + the IUT entity having a provChgPc5Subscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_3;, + subscriptionType indicating value "ProvChgPc5Subscription"; and + the IUT entity having a v2xMsgSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_4;, + subscriptionType indicating value "V2xMsgSubscription"; and + the IUT entity having a predQosSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_5;, + subscriptionType indicating value "PredQosSubscription"; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "vis/v2/subscriptions", + query_parameters containing + subscriptionType indicating value "prov_chg_pc5";; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.8.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" containing + body containing + subscriptionLinkList containing + _links containing + self indicating value HREF_SUBSCRIPTION_3, + subscriptions containing + href indicating value HREF_SUBSCRIPTION_3, + subscriptionType indicating value "prov_chg_pc5";;;;;; + to the MEC_APP entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_007_OK_04" + + Test objective + "Check that the IUT responds with the requested list of subscription when queried by a MEC Application - v2x_msg" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 6.3.5", + "ETSI GS MEC 030 V3.1.1, clause 6.3.7", + "ETSI GS MEC 030 V3.1.1, clause 7.9.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a provChgUuUniSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_1;, + subscriptionType indicating value "ProvChgUuUniSubscription"; and + the IUT entity having a provChgUuMbmsSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_2;, + subscriptionType indicating value "ProvChgUuMbmsSubscription"; and + the IUT entity having a provChgPc5Subscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_3;, + subscriptionType indicating value "ProvChgPc5Subscription"; and + the IUT entity having a v2xMsgSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_4;, + subscriptionType indicating value "V2xMsgSubscription"; and + the IUT entity having a predQosSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_5;, + subscriptionType indicating value "PredQosSubscription"; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "vis/v2/subscriptions", + query_parameters containing + subscriptionType indicating value "v2x_msg";; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.8.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" containing + body containing + subscriptionLinkList containing + _links containing + self indicating value HREF_SUBSCRIPTION_4, + subscriptions containing + href indicating value HREF_SUBSCRIPTION_4, + subscriptionType indicating value "v2x_msg";;;;;; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_007_OK_05" + + Test objective + "Check that the IUT responds with the requested list of subscription when queried by a MEC Application - pred_qos" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 6.3.5", + "ETSI GS MEC 030 V3.1.1, clause 6.3.7", + "ETSI GS MEC 030 V3.1.1, clause 7.9.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a provChgUuUniSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_1;, + subscriptionType indicating value "ProvChgUuUniSubscription"; and + the IUT entity having a provChgUuMbmsSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_2;, + subscriptionType indicating value "ProvChgUuMbmsSubscription"; and + the IUT entity having a provChgPc5Subscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_3;, + subscriptionType indicating value "ProvChgPc5Subscription"; and + the IUT entity having a v2xMsgSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_4;, + subscriptionType indicating value "V2xMsgSubscription"; and + the IUT entity having a predQosSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_5;, + subscriptionType indicating value "PredQosSubscription"; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "vis/v2/subscriptions", + query_parameters containing + subscriptionType indicating value "pred_qos";; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.8.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" containing + body containing + subscriptionLinkList containing + _links containing + self indicating value HREF_SUBSCRIPTION_5, + subscriptions containing + href indicating value HREF_SUBSCRIPTION_5, + subscriptionType indicating value "pred_qos";;;;;; + to the MEC_APP entity + } + } + } + + Test Purpose { // FIXME Not clear of what could happen because _links.self shall be unique ??? + TP Id "TP_MEC_MEC030_SRV_V2X_007_OK_05" + + Test objective + "Check that the IUT responds with the requested list of subscription when queried by a MEC Application" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 6.3.2", + "ETSI GS MEC 030 V3.1.1, clause 6.3.3", + "ETSI GS MEC 030 V3.1.1, clause 6.3.4", + "ETSI GS MEC 030 V3.1.1, clause 6.3.5", + "ETSI GS MEC 030 V3.1.1, clause 6.3.6", + "ETSI GS MEC 030 V3.1.1, clause 6.3.7", + "ETSI GS MEC 030 V3.1.1, clause 7.9.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a provChgUuUniSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_1;, + subscriptionType indicating value "ProvChgUuUniSubscription"; and + the IUT entity having a provChgUuMbmsSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_2;, + subscriptionType indicating value "ProvChgUuMbmsSubscription"; and + the IUT entity having a provChgPc5Subscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_3;, + subscriptionType indicating value "ProvChgPc5Subscription"; and + the IUT entity having a v2xMsgSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_4;, + subscriptionType indicating value "V2xMsgSubscription"; and + the IUT entity having a predQosSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_5;, + subscriptionType indicating value "PredQosSubscription"; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "vis/v2/subscriptions"; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.8.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" containing + body containing + subscriptionLinkList containing + _links containing + self indicating value TODO, + subscriptionList containing + subscriptions containing + href indicating value HREF_SUBSCRIPTION_1, + subscriptionType indicating value "prov_chg_uu_uni";, + subscriptions containing + href indicating value HREF_SUBSCRIPTION_2, + subscriptionType indicating value "prov_chg_uu_mbms";, + subscriptions containing + href indicating value HREF_SUBSCRIPTION_3, + subscriptionType indicating value "prov_chg_pc5";, + subscriptions containing + href indicating value HREF_SUBSCRIPTION_4, + subscriptionType indicating value "v2x_msg";;;;;;; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_007_BR" + + Test objective + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 6.3.2", + "ETSI GS MEC 030 V3.1.1, clause 6.3.3", + "ETSI GS MEC 030 V3.1.1, clause 6.3.4", + "ETSI GS MEC 030 V3.1.1, clause 6.3.5", + "ETSI GS MEC 030 V3.1.1, clause 6.3.6", + "ETSI GS MEC 030 V3.1.1, clause 6.3.7", + "ETSI GS MEC 030 V3.1.1, clause 7.9.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a provChgUuUniSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_1;, + subscriptionType indicating value "ProvChgUuUniSubscription"; and + the IUT entity having a provChgUuMbmsSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_2;, + subscriptionType indicating value "ProvChgUuMbmsSubscription"; and + the IUT entity having a provChgPc5Subscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_3;, + subscriptionType indicating value "ProvChgPc5Subscription"; and + the IUT entity having a v2xMsgSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_4;, + subscriptionType indicating value "V2xMsgSubscription"; and + the IUT entity having a predQosSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_5;, + subscriptionType indicating value "PredQosSubscription"; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "vis/v2/subscriptions", + query_parameters containing + subscriptionType indicating value "unknow_subscription";; // Wrong parameter value + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.8.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_08_OK_01" + + Test objective + "Check that the IUT responds with the requested to create a subscription - ProvChgUuUniSubscription" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 6.3.2", + "ETSI GS MEC 030 V3.1.1, clause 7.9.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "vis/v2/subscriptions", + body containing + provChgUuUniSubscription containing + subscriptionType indicating value "ProvChgUuUniSubscription", + callbackReference indicating value CALLBACK_SUBSCRIPTION, + filterCriteria indicating value FILTER_CRITERIA;;; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.8.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "201 Created" containing + body containing + provChgUuUniSubscription containing + subscriptionType indicating value "ProvChgUuUniSubscription", + callbackReference indicating value CALLBACK_SUBSCRIPTION, + filterCriteria indicating value FILTER_CRITERIA, + _links containing + self indicating value HREF_SUBSCRIPTION;;;;; + to the MEC_APP entity + and the IUT entity sends a vPOST containing + Uri set to CALLBACK_URL + body containing + provChgUuUniNotification containing + notificationType indicating value "ProvChgUuUniSubscription", + locationInfo indicating value any_value, + v2xApplicationServer indicating value any_value, + neighbourCellInfo indicating value any_value;;; + to the MEC_APP entity + and the IUT entity doNotSendNotificationAfterTimerExpiry + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_08_OK_02" + + Test objective + "Check that the IUT responds with the requested to create a subscription - ProvChgUuMbmsSubscription" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 6.3.3", + "ETSI GS MEC 030 V3.1.1, clause 7.9.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "vis/v2/subscriptions", + body containing + provChgUuMbmsSubscription containing + subscriptionType indicating value "ProvChgUuMbmsSubscription", + callbackReference indicating value CALLBACK_SUBSCRIPTION, + filterCriteria indicating value FILTER_CRITERIA;;; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.8.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "201 Created" containing + body containing + provChgUuMbmsSubscription containing + subscriptionType indicating value "ProvChgUuMbmsSubscription", + callbackReference indicating value CALLBACK_SUBSCRIPTION, + filterCriteria indicating value FILTER_CRITERIA, + _links containing + self indicating value HREF_SUBSCRIPTION;;;;; + to the MEC_APP entity + and the IUT entity sends a vPOST containing + Uri set to CALLBACK_URL + body containing + provChgUuMbmsNotification containing + notificationType indicating value "ProvChgUuMbmsNotification", + locationInfo indicating value any_value, + v2xServerUsd indicating value any_value, + neighbourCellInfo indicating value any_value;;; + to the MEC_APP entity + and the IUT entity doNotSendNotificationAfterTimerExpiry + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_08_OK_03" + + Test objective + "Check that the IUT responds with the requested to create a subscription - ProvChgPc5Subscription" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 6.3.3", + "ETSI GS MEC 030 V3.1.1, clause 7.9.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "vis/v2/subscriptions", + body containing + provChgPc5Subscription containing + subscriptionType indicating value "ProvChgPc5Subscription", + callbackReference indicating value CALLBACK_SUBSCRIPTION, + filterCriteria indicating value FILTER_CRITERIA;;; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.8.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "201 Created" containing + body containing + provChgPc5Subscription containing + subscriptionType indicating value "ProvChgPc5Subscription", + callbackReference indicating value CALLBACK_SUBSCRIPTION, + filterCriteria indicating value FILTER_CRITERIA, + _links containing + self indicating value HREF_SUBSCRIPTION;;;;; + to the MEC_APP entity + and the IUT entity sends a vPOST containing + Uri set to CALLBACK_URL + body containing + provChgPc5Notification containing + notificationType indicating value "ProvChgPc5Notification", + locationInfo indicating value any_value, + dstLayer2Id indicating value any_value, + neighbourCellInfo indicating value any_value;;; + to the MEC_APP entity + and the IUT entity doNotSendNotificationAfterTimerExpiry + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_08_OK_04" + + Test objective + "Check that the IUT responds with the requested to create a subscription - V2xMsgSubscription" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 6.3.3", + "ETSI GS MEC 030 V3.1.1, clause 7.9.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "vis/v2/subscriptions", + body containing + v2xMsgSubscription containing + subscriptionType indicating value "V2xMsgSubscription", + callbackReference indicating value CALLBACK_SUBSCRIPTION, + filterCriteria indicating value FILTER_CRITERIA;;; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.8.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "201 Created" containing + body containing + v2xMsgSubscription containing + subscriptionType indicating value "V2xMsgSubscription", + callbackReference indicating value CALLBACK_SUBSCRIPTION, + filterCriteria indicating value FILTER_CRITERIA, + _links containing + self indicating value HREF_SUBSCRIPTION;;;;; + to the MEC_APP entity + and the IUT entity sends a vPOST containing + Uri set to CALLBACK_URL + body containing + v2xMsgNotification containing + notificationType indicating value "V2xMsgNotification", + msgPropertiesValues indicating value any_value, + msgRepresentationFormat indicating value any_value, + msgContent indicating value any_value, + _links containing + self indicating value HREF_SUBSCRIPTION;;;; + to the MEC_APP entity + and the IUT entity doNotSendNotificationAfterTimerExpiry + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_08_OK_05" + + Test objective + "Check that the IUT responds with the requested to create a subscription - PredQosSubscription" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 6.3.3", + "ETSI GS MEC 030 V3.1.1, clause 7.9.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "vis/v2/subscriptions", + body containing + predQosSubscription containing + subscriptionType indicating value "PredQosSubscription", + callbackReference indicating value CALLBACK_SUBSCRIPTION, + filterCriteria indicating value FILTER_CRITERIA;;; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.8.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "201 Created" containing + body containing + predQosSubscription containing + subscriptionType indicating value "PredQosSubscription", + callbackReference indicating value CALLBACK_SUBSCRIPTION, + filterCriteria indicating value FILTER_CRITERIA, + _links containing + self indicating value HREF_SUBSCRIPTION;;;;; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_008_BR" + + Test objective + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 6.3.2", + "ETSI GS MEC 030 V3.1.1, clause 6.3.3", + "ETSI GS MEC 030 V3.1.1, clause 6.3.4", + "ETSI GS MEC 030 V3.1.1, clause 6.3.5", + "ETSI GS MEC 030 V3.1.1, clause 6.3.6", + "ETSI GS MEC 030 V3.1.1, clause 6.3.7", + "ETSI GS MEC 030 V3.1.1, clause 7.9.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "vis/v2/subscriptions" + body containing + provChgUuMbmsSubscription containing + subscriptionType indicating value "InvalidProvChgUuMbmsSubscription", // Invalid SubscriptionType + callbackReference indicating value CALLBACK_SUBSCRIPTION, + filterCriteria indicating value FILTER_CRITERIA;;; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.8.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_009_OK_01" + + Test objective + "Check that the IUT responds with the requested of subscription information when queried by a MEC Application - ProvChgUuUniSubscription" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 6.3.2", + "ETSI GS MEC 030 V3.1.1, clause 7.10.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a provChgUuUniSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_1;, + subscriptionType indicating value "ProvChgUuUniSubscription"; and + the IUT entity having a provChgUuMbmsSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_2;, + subscriptionType indicating value "ProvChgUuMbmsSubscription"; and + the IUT entity having a provChgPc5Subscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_3;, + subscriptionType indicating value "ProvChgPc5Subscription"; and + the IUT entity having a v2xMsgSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_4;, + subscriptionType indicating value "V2xMsgSubscription"; and + the IUT entity having a predQosSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_5;, + subscriptionType indicating value "PredQosSubscription"; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "vis/v2/subscriptions/{HREF_SUBSCRIPTION_1}"; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.9.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" containing + body containing + provChgUuUniSubscription containing + subscriptionType indicating value "ProvChgUuUniSubscription", + callbackReference indicating value CALLBACK_SUBSCRIPTION_1, + filterCriteria indicating value FILTER_CRITERIA_1, + _links indicating value HREF_SUBSCRIPTION_1;;;; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_009_OK_02" + + Test objective + "Check that the IUT responds with the requested of subscription information when queried by a MEC Application - ProvChgUuMbmsSubscription" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 6.3.3", + "ETSI GS MEC 030 V3.1.1, clause 7.10.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a provChgUuUniSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_1;, + subscriptionType indicating value "ProvChgUuUniSubscription"; and + the IUT entity having a provChgUuMbmsSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_2;, + subscriptionType indicating value "ProvChgUuMbmsSubscription"; and + the IUT entity having a provChgPc5Subscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_3;, + subscriptionType indicating value "ProvChgPc5Subscription"; and + the IUT entity having a v2xMsgSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_4;, + subscriptionType indicating value "V2xMsgSubscription"; and + the IUT entity having a predQosSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_5;, + subscriptionType indicating value "PredQosSubscription"; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "vis/v2/subscriptions/{HREF_SUBSCRIPTION_2}"; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.9.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" containing + body containing + provChgUuMbmsSubscription containing + subscriptionType indicating value "ProvChgUuMbmsSubscription", + callbackReference indicating value CALLBACK_SUBSCRIPTION_2, + filterCriteria indicating value FILTER_CRITERIA_2, + _links indicating value HREF_SUBSCRIPTION_2;;;; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_009_OK_03" + + Test objective + "Check that the IUT responds with the requested of subscription information when queried by a MEC Application - ProvChgPc5Subscription" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 6.3.4", + "ETSI GS MEC 030 V3.1.1, clause 7.10.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a provChgUuUniSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_1;, + subscriptionType indicating value "ProvChgUuUniSubscription"; and + the IUT entity having a provChgUuMbmsSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_2;, + subscriptionType indicating value "ProvChgUuMbmsSubscription"; and + the IUT entity having a provChgPc5Subscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_3;, + subscriptionType indicating value "ProvChgPc5Subscription"; and + the IUT entity having a v2xMsgSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_4;, + subscriptionType indicating value "V2xMsgSubscription"; and + the IUT entity having a predQosSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_5;, + subscriptionType indicating value "PredQosSubscription"; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "vis/v2/subscriptions/{HREF_SUBSCRIPTION_3}"; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.9.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" containing + body containing + provChgPc5Subscription containing + subscriptionType indicating value "ProvChgPc5Subscription", + callbackReference indicating value CALLBACK_SUBSCRIPTION_3, + filterCriteria indicating value FILTER_CRITERIA_3, + _links indicating value HREF_SUBSCRIPTION_3;;;; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_009_OK_04" + + Test objective + "Check that the IUT responds with the requested of subscription information when queried by a MEC Application - V2xMsgSubscription" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 6.3.5", + "ETSI GS MEC 030 V3.1.1, clause 7.10.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a provChgUuUniSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_1;, + subscriptionType indicating value "ProvChgUuUniSubscription"; and + the IUT entity having a provChgUuMbmsSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_2;, + subscriptionType indicating value "ProvChgUuMbmsSubscription"; and + the IUT entity having a provChgPc5Subscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_3;, + subscriptionType indicating value "ProvChgPc5Subscription"; and + the IUT entity having a v2xMsgSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_4;, + subscriptionType indicating value "V2xMsgSubscription"; and + the IUT entity having a predQosSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_5;, + subscriptionType indicating value "PredQosSubscription"; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "vis/v2/subscriptions/{HREF_SUBSCRIPTION_4}"; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.9.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" containing + body containing + v2xMsgSubscription containing + subscriptionType indicating value "V2xMsgSubscription", + callbackReference indicating value CALLBACK_SUBSCRIPTION_4, + filterCriteria indicating value FILTER_CRITERIA_4, + _links indicating value HREF_SUBSCRIPTION_4;;;; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_009_OK_05" + + Test objective + "Check that the IUT responds with the requested of subscription information when queried by a MEC Application - PredQosSubscription" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 6.3.5", + "ETSI GS MEC 030 V3.1.1, clause 7.10.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a provChgUuUniSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_1;, + subscriptionType indicating value "ProvChgUuUniSubscription"; and + the IUT entity having a provChgUuMbmsSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_2;, + subscriptionType indicating value "ProvChgUuMbmsSubscription"; and + the IUT entity having a provChgPc5Subscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_3;, + subscriptionType indicating value "ProvChgPc5Subscription"; and + the IUT entity having a v2xMsgSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_4;, + subscriptionType indicating value "V2xMsgSubscription"; and + the IUT entity having a predQosSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_5;, + subscriptionType indicating value "PredQosSubscription"; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "vis/v2/subscriptions/{HREF_SUBSCRIPTION_5}"; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.9.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" containing + body containing + predQosSubscription containing + subscriptionType indicating value "PredQosSubscription", + callbackReference indicating value CALLBACK_SUBSCRIPTION_5, + filterCriteria indicating value FILTER_CRITERIA_5, + _links indicating value HREF_SUBSCRIPTION_5;;;; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_009_BR" + + Test objective + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 6.3.2", + "ETSI GS MEC 030 V3.1.1, clause 6.3.3", + "ETSI GS MEC 030 V3.1.1, clause 6.3.4", + "ETSI GS MEC 030 V3.1.1, clause 6.3.5", + "ETSI GS MEC 030 V3.1.1, clause 7.10.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a provChgUuUniSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_1;, + subscriptionType indicating value "ProvChgUuUniSubscription"; and + the IUT entity having a provChgUuMbmsSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_2;, + subscriptionType indicating value "ProvChgUuMbmsSubscription"; and + the IUT entity having a provChgPc5Subscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_3;, + subscriptionType indicating value "ProvChgPc5Subscription"; and + the IUT entity having a v2xMsgSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_4;, + subscriptionType indicating value "V2xMsgSubscription"; and + the IUT entity having a predQosSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_5;, + subscriptionType indicating value "PredQosSubscription"; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "vis/v2/subs/{HREF_SUBSCRIPTION_1}"; // Wrong URL + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.9.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_009_NF" + + Test objective + "Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 6.3.2", + "ETSI GS MEC 030 V3.1.1, clause 6.3.3", + "ETSI GS MEC 030 V3.1.1, clause 6.3.4", + "ETSI GS MEC 030 V3.1.1, clause 6.3.5", + "ETSI GS MEC 030 V3.1.1, clause 7.10.3.1" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a provChgUuUniSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_1;, + subscriptionType indicating value "ProvChgUuUniSubscription"; and + the IUT entity having a provChgUuMbmsSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_2;, + subscriptionType indicating value "ProvChgUuMbmsSubscription"; and + the IUT entity having a provChgPc5Subscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_3;, + subscriptionType indicating value "ProvChgPc5Subscription"; and + the IUT entity having a v2xMsgSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_4;, + subscriptionType indicating value "V2xMsgSubscription"; and + the IUT entity having a predQosSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_5;, + subscriptionType indicating value "PredQosSubscription"; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "vis/v2/subscription/{UNKNOWN_HREF_SUBSCRIPTION}"; // subscription id + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.9.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_010_OK_01" + + Test objective + "Check that the IUT responds with the requested of updating subscription when queried by a MEC Application - ProvChgUuUniSubscription" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.6.3", + "ETSI GS MEC 030 V3.1.1, clause 6.3.2", + "ETSI GS MEC 030 V3.1.1, clause 7.10.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a provChgUuUniSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_1;, + subscriptionType indicating value "ProvChgUuUniSubscription"; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "vis/v2/subscriptions/{HREF_SUBSCRIPTION_1}", + body containing + provChgUuUniSubscription containing + subscriptionType indicating value "ProvChgUuUniSubscription", + callbackReference indicating value CALLBACK_SUBSCRIPTION_1, + filterCriteria indicating value NEW_FILTER_CRITERIA_1, + _links indicating value HREF_SUBSCRIPTION_1;;; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.9.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" containing + body containing + provChgUuUniSubscription containing + subscriptionType indicating value "ProvChgUuUniSubscription", + callbackReference indicating value CALLBACK_SUBSCRIPTION_1, + filterCriteria indicating value NEW_FILTER_CRITERIA_1, + _links indicating value HREF_SUBSCRIPTION_1;;;; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_010_OK_02" + + Test objective + "Check that the IUT responds with the requested of updating subscription when queried by a MEC Application - ProvChgUuMbmsSubscription" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.6.3", + "ETSI GS MEC 030 V3.1.1, clause 6.3.3", + "ETSI GS MEC 030 V3.1.1, clause 7.10.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a provChgUuMbmsSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_1;, + subscriptionType indicating value "ProvChgUuMbmsSubscription"; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "vis/v2/subscriptions/{HREF_SUBSCRIPTION_1}", + body containing + provChgUuMbmsSubscription containing + subscriptionType indicating value "ProvChgUuMbmsSubscription", + callbackReference indicating value CALLBACK_SUBSCRIPTION_1, + filterCriteria indicating value NEW_FILTER_CRITERIA_1, + _links indicating value HREF_SUBSCRIPTION_1;;; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.9.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" containing + body containing + provChgUuMbmsSubscription containing + subscriptionType indicating value "ProvChgUuMbmsSubscription", + callbackReference indicating value CALLBACK_SUBSCRIPTION_1, + filterCriteria indicating value NEW_FILTER_CRITERIA_1, + _links indicating value HREF_SUBSCRIPTION_1;;;; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_010_OK_03" + + Test objective + "Check that the IUT responds with the requested of updating subscription when queried by a MEC Application - ProvChgPc5Subscription" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.6.3", + "ETSI GS MEC 030 V3.1.1, clause 6.3.4", + "ETSI GS MEC 030 V3.1.1, clause 7.10.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a provChgPc5Subscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_1;, + subscriptionType indicating value "ProvChgPc5Subscription"; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "vis/v2/subscriptions/{HREF_SUBSCRIPTION_1}", + body containing + provChgPc5Subscription containing + subscriptionType indicating value "ProvChgPc5Subscription", + callbackReference indicating value CALLBACK_SUBSCRIPTION_1, + filterCriteria indicating value NEW_FILTER_CRITERIA_1, + _links indicating value HREF_SUBSCRIPTION_1;;; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.9.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" containing + body containing + provChgPc5Subscription containing + subscriptionType indicating value "ProvChgPc5Subscription", + callbackReference indicating value CALLBACK_SUBSCRIPTION_1, + filterCriteria indicating value NEW_FILTER_CRITERIA_1, + _links indicating value HREF_SUBSCRIPTION_1;;;; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_010_OK_04" + + Test objective + "Check that the IUT responds with the requested of updating subscription when queried by a MEC Application - V2xMsgSubscription" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.6.3", + "ETSI GS MEC 030 V3.1.1, clause 6.3.5", + "ETSI GS MEC 030 V3.1.1, clause 7.10.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a v2xMsgSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_1;, + subscriptionType indicating value "V2xMsgSubscription"; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "vis/v2/subscriptions/{HREF_SUBSCRIPTION_1}", + body containing + v2xMsgSubscription containing + subscriptionType indicating value "V2xMsgSubscription", + callbackReference indicating value CALLBACK_SUBSCRIPTION_1, + filterCriteria indicating value NEW_FILTER_CRITERIA_1, + _links indicating value HREF_SUBSCRIPTION_1;;; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.9.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" containing + body containing + v2xMsgSubscription containing + subscriptionType indicating value "V2xMsgSubscription", + callbackReference indicating value CALLBACK_SUBSCRIPTION_1, + filterCriteria indicating value NEW_FILTER_CRITERIA_1, + _links indicating value HREF_SUBSCRIPTION_1;;;; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_010_OK_05" + + Test objective + "Check that the IUT responds with the requested of updating subscription when queried by a MEC Application - PredQosSubscription" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.6.3", + "ETSI GS MEC 030 V3.1.1, clause 6.3.6", + "ETSI GS MEC 030 V3.1.1, clause 7.10.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a predQosSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_1;, + subscriptionType indicating value "PredQosSubscription"; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "vis/v2/subscriptions/{HREF_SUBSCRIPTION_1}", + body containing + predQosSubscription containing + subscriptionType indicating value "PredQosSubscription", + callbackReference indicating value CALLBACK_SUBSCRIPTION_1, + filterCriteria indicating value NEW_FILTER_CRITERIA_1, + _links indicating value HREF_SUBSCRIPTION_1;;; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.9.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" containing + body containing + predQosSubscription containing + subscriptionType indicating value "PredQosSubscription", + callbackReference indicating value CALLBACK_SUBSCRIPTION_1, + filterCriteria indicating value NEW_FILTER_CRITERIA_1, + _links indicating value HREF_SUBSCRIPTION_1;;;; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_010_BR" + + Test objective + "Check that the IUT responds with the requested of updating subscription when queried by a MEC Application" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.6.3", + "ETSI GS MEC 030 V3.1.1, clause 6.3.2", + "ETSI GS MEC 030 V3.1.1, clause 7.10.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a provChgUuUniSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_1;, + subscriptionType indicating value "ProvChgUuUniSubscription"; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "vis/v2/subscriptions/{HREF_SUBSCRIPTION_1}", + body containing + provChgUuUniSubscription containing + subscriptionType indicating value "UnknownSubscription", + callbackReference indicating value CALLBACK_SUBSCRIPTION_1, + filterCriteria indicating value NEW_FILTER_CRITERIA_1, + _links indicating value HREF_SUBSCRIPTION_1;;; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.9.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request"; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_010_NF" + + Test objective + "Check that the IUT responds with the requested of updating subscription when queried by a MEC Application" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.6.3", + "ETSI GS MEC 030 V3.1.1, clause 6.3.2", + "ETSI GS MEC 030 V3.1.1, clause 7.10.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity not having a provChgUuUniSubscription + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "vis/v2/subscriptions/{HREF_SUBSCRIPTION_1}", + body containing + provChgUuUniSubscription containing + subscriptionType indicating value "ProvChgUuUniSubscription", + callbackReference indicating value CALLBACK_SUBSCRIPTION_1, + filterCriteria indicating value NEW_FILTER_CRITERIA_1, + _links indicating value HREF_SUBSCRIPTION_1;;; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.9.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_011_OK_01" + + Test objective + "Check that the IUT responds with the requested of removing subscription when queried by a MEC Application - ProvChgUuUniSubscription" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.6.4", + "ETSI GS MEC 030 V3.1.1, clause 6.3.2", + "ETSI GS MEC 030 V3.1.1, clause 7.10.3.5" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a provChgUuUniSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_1;, + subscriptionType indicating value "ProvChgUuUniSubscription"; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "vis/v2/subscriptions/{HREF_SUBSCRIPTION_1}"; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.9.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "204 No Content"; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_011_OK_02" + + Test objective + "Check that the IUT responds with the requested of removing subscription when queried by a MEC Application - ProvChgUuMbmsSubscription" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.6.4", + "ETSI GS MEC 030 V3.1.1, clause 6.3.3", + "ETSI GS MEC 030 V3.1.1, clause 7.10.3.5" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a provChgUuMbmsSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_1;, + subscriptionType indicating value "ProvChgUuMbmsSubscription"; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "vis/v2/subscriptions/{HREF_SUBSCRIPTION_1}"; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.9.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "204 No Content"; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_011_OK_03" + + Test objective + "Check that the IUT responds with the requested of removing subscription when queried by a MEC Application - ProvChgPc5Subscription" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.6.4", + "ETSI GS MEC 030 V3.1.1, clause 6.3.4", + "ETSI GS MEC 030 V3.1.1, clause 7.10.3.5" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a provChgPc5Subscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_1;, + subscriptionType indicating value "ProvChgPc5Subscription"; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "vis/v2/subscriptions/{HREF_SUBSCRIPTION_1}"; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.9.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "204 No Content"; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_011_OK_04" + + Test objective + "Check that the IUT responds with the requested of removing subscription when queried by a MEC Application - V2xMsgSubscription" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.6.4", + "ETSI GS MEC 030 V3.1.1, clause 6.3.5", + "ETSI GS MEC 030 V3.1.1, clause 7.10.3.5" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a v2xMsgSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_1;, + subscriptionType indicating value "V2xMsgSubscription"; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "vis/v2/subscriptions/{HREF_SUBSCRIPTION_1}"; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.9.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "204 No Content"; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_011_OK_05" + + Test objective + "Check that the IUT responds with the requested of removing subscription when queried by a MEC Application - PredQosSubscription" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.6.4", + "ETSI GS MEC 030 V3.1.1, clause 6.3.5", + "ETSI GS MEC 030 V3.1.1, clause 7.10.3.5" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity having a predQosSubscription containing + _links containing + self indicating value HREF_SUBSCRIPTION_1;, + subscriptionType indicating value "PredQosSubscription"; + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "vis/v2/subscriptions/{HREF_SUBSCRIPTION_1}"; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.9.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "204 No Content"; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_011_NF" + + Test objective + "Check that the IUT responds with the requested of removing subscription when queried by a MEC Application" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.6.4", + "ETSI GS MEC 030 V3.1.1, clause 6.3.2", + "ETSI GS MEC 030 V3.1.1, clause 7.10.3.5" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "vis/v2/subscriptions/{HREF_SUBSCRIPTION}"; + from the MEC_APP entity + } + then { + // MEC 030 Clause 7.9.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_UETESTNOT_012_OK" + + Test objective + "Check that the IUT provides a test notification when requested by a MEC Application" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 6.3.2" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state + } + + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "vis/v2/subscriptions" + body containing + predQosSubscription containing + subscriptionType indicating value "PredQosSubscription", + callbackReference indicating value CALLBACK_URL, + requestTestNotification indicating value true, + address indicating value ACR_SOME_IP;;; + from the MEC_APP entity + } + then { + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "201 Created" + body containing + predQosSubscription containing + subscriptionType indicating value "PredQosSubscription", + callbackReference indicating value CALLBACK_URL, + requestTestNotification indicating value true, // FIXME: To be confirmed + _links indicating value LINKS, + address indicating value ACR_SOME_IP;;; + to the MEC_APP entity + and the IUT entity sends a vPOST containing + Uri set to CALLBACK_URL + body containing + testNotification containing + notificationType indicating value "TestNotification", + _links indicating value LINKS;;; + to the MEC_APP entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC030_SRV_V2X_013_OK" + + Test objective + "Check that the IUT sends a notification about the provisioning information changes for V2X communication over Uu unicast" + + Reference + "ETSI GS MEC 030 V3.1.1, clause 5.5.7", + "ETSI GS MEC 030 V3.1.1, clause 7.9.3.4" + + Config Id Config_MEC_1 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_APP entity having a ProvChgUuUniSubscription containing + callbackReference indicating value CALLBACK_UU_UNI_URI; + } + + Expected behaviour + ensure that { + when { + the IUT entity isTriggeredToSend a ProvChgUuUniNotification + } + then { + the IUT entity generates a provChgUuUniNotification containing + notificationType indicating value "ProvChgUuUniNotification", + locationInfo indicating value LOCATION_INFO; + } + } + } } diff --git a/Test Purposes/MEC033/MEX/IOTS/IOTDEV/RegisteredDevices.tplan2 b/Test Purposes/MEC033/MEX/IOTS/IOTDEV/RegisteredDevices.tplan2 new file mode 100644 index 0000000000000000000000000000000000000000..2f24c18cdc2579e1a3fbf5ee167125b5febceb99 --- /dev/null +++ b/Test Purposes/MEC033/MEX/IOTS/IOTDEV/RegisteredDevices.tplan2 @@ -0,0 +1,729 @@ +/* +Copyright (c) ETSI 2018-2023. +Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters +*/ + +Package MEC_MEC033_MEX_IOTS_IOTDEV { + + import all from MEC_Common; + + + Test Purpose { + TP Id "TP_MEC_MEC033_IOTS_IOTDEV_001_OK_01" + + Test objective + "Check that the IUT responds with the list of registered IoT devices + when queried by a Service Consumer" + + Reference "ETSI GS MEC 033 V3.1.1, clause 7.3.3.1" + + Config Id Config_MEC_6 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_PROVIDER entity having a DeviceInfo containing + deviceAuthenticationInfo indicating value SOME_CUSTOM_VALUES, + deviceId indicating value HUMAN_READABLE_IDENTIFIER, + SUPI indicating value SUPI_DEVICE, + IMSI indicating value IMSI_DEVICE, + enabled set to false + ; + } + + // MEC 033 V3.1.1 Clause 6.2.2 Type: DeviceInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/iots/v1/registered_devices" + ; + from the MEC_CONSUMER entity + } + then { + // MEC 033 Clause 7.3.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + arrayOfDeviceInfo containing + DeviceInfo containing + deviceAuthenticationInfo indicating value SOME_CUSTOM_VALUES, + deviceId indicating value HUMAN_READABLE_IDENTIFIER, + IMSI indicating value IMSI_DEVICE, + SUPI indicating value SUPI_DEVICE, + enabled set to false + ; + ; + ; + ; + to the MEC_CONSUMER entity + } + } + } + + + + + Test Purpose { + TP Id "TP_MEC_MEC033_IOTS_IOTDEV_001_OK_02" + + Test objective + "Check that the IUT responds with the list of registered IoT devices + when queried using a filter by a Service Consumer" + + Reference "ETSI GS MEC 033 V3.1.1, clause 7.3.3.1" + + Config Id Config_MEC_6 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_PROVIDER entity having a DeviceInfo containing + deviceAuthenticationInfo indicating value SOME_CUSTOM_VALUES, + deviceId indicating value HUMAN_READABLE_IDENTIFIER, + IMSI indicating value IMSI_DEVICE, + SUPI indicating value SUPI_DEVICE, + enabled set to false + ; + } + + // MEC 033 V3.1.1 Clause 6.2.2 Type: DeviceInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + + uri indicating value "/iots/v1/registered_devices?filter=(eq,enabled,false)" + ; + from the MEC_CONSUMER entity + } + then { + // MEC 033 Clause 7.3.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + arrayOfDeviceInfo containing + DeviceInfo containing + deviceAuthenticationInfo indicating value SOME_CUSTOM_VALUES, + deviceId indicating value HUMAN_READABLE_IDENTIFIER, + IMSI indicating value IMSI_DEVICE, + SUPI indicating value SUPI_DEVICE, + enabled set to false + ; + ; + ; + ; + to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC033_IOTS_IOTDEV_001_OK_03" + + Test objective + "Check that the IUT responds with the list of registered IoT devices + when queried by a Service Consumer filtering one field" + + Reference "ETSI GS MEC 033 V3.1.1, clause 7.3.3.1" + + Config Id Config_MEC_6 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_PROVIDER entity having a DeviceInfo containing + deviceAuthenticationInfo indicating value SOME_CUSTOM_VALUES, + deviceId indicating value HUMAN_READABLE_IDENTIFIER, + IMSI indicating value IMSI_DEVICE, + SUPI indicating value SUPI_DEVICE, + enabled set to false + ; + } + + // MEC 033 V3.1.1 Clause 6.2.2 Type: DeviceInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/iots/v1/registered_devices?fields=deviceId" + ; + from the MEC_CONSUMER entity + } + then { + // MEC 033 Clause 7.3.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + arrayOfDeviceInfo containing + DeviceInfo containing + deviceId indicating value HUMAN_READABLE_IDENTIFIER + ; + ; + ; + ; + to the MEC_CONSUMER entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC033_IOTS_IOTDEV_001_OK_04" + + Test objective + "Check that the IUT responds with the list of registered IoT devices + when queried by a Service Consumer filtering the number of fields and applying a + filter to a specific field" + + Reference "ETSI GS MEC 033 V3.1.1, clause 7.3.3.1" + + Config Id Config_MEC_6 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_PROVIDER entity having a DeviceInfo containing + deviceAuthenticationInfo indicating value SOME_CUSTOM_VALUES, + deviceId indicating value HUMAN_READABLE_IDENTIFIER, + IMSI indicating value IMSI_DEVICE, + SUPI indicating value SUPI_DEVICE, + enabled set to false + ; + } + + // MEC 033 V3.1.1 Clause 6.2.2 Type: DeviceInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/iots/v1/registered_devices?fields=deviceId&filter=(eq,enabled,false)" + ; + from the MEC_CONSUMER entity + } + then { + // MEC 033 Clause 7.3.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + arrayOfDeviceInfo containing + DeviceInfo containing + deviceId indicating value HUMAN_READABLE_IDENTIFIER + ; + ; + ; + ; + to the MEC_CONSUMER entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC033_IOTS_IOTDEV_002_OK" + + Test objective + "Check that the IUT registers the information of an IoT device + when requested by a Service Consumer" + + Reference "ETSI GS MEC 033 V3.1.1, clause 7.3.3.4" + + Config Id Config_MEC_6 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state + + } + + // MEC 033 V3.1.1 Clause 6.2.2 Type: DeviceInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/iots/v1/registered_devices" + body containing + DeviceInfo containing + deviceAuthenticationInfo indicating value SOME_CUSTOM_VALUES, + deviceId indicating value HUMAN_READABLE_IDENTIFIER, + IMSI indicating value IMSI_DEVICE, + SUPI indicating value SUPI_DEVICE + ; + ; + ; + from the MEC_CONSUMER entity + } + then { + // MEC 033 Clause 7.3.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "201 Created", + Location indicating value LOCATION, + body containing + DeviceInfo containing + deviceAuthenticationInfo indicating value SOME_CUSTOM_VALUES, + deviceId indicating value HUMAN_READABLE_IDENTIFIER, + IMSI indicating value IMSI_DEVICE, + SUPI indicating value SUPI_DEVICE, + enabled indicating value false + ; + ; + ; + to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC033_IOTS_IOTDEV_002_BR" + + Test objective + "Check that the IUT returns an error + when Service Consumer request to register an IoT device with incorrect parameters" + + Reference "ETSI GS MEC 033 V3.1.1, clause 7.3.3.4" + + Config Id Config_MEC_6 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state + + } + + // MEC 033 V3.1.1 Clause 6.2.2 Type: DeviceInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/iots/v1/registered_devices" + body containing + DeviceInfo containing + deviceAuthenticationInfo indicating value SOME_CUSTOM_VALUES, + deviceId indicating value HUMAN_READABLE_IDENTIFIER, + IMSI indicating value IMSI_DEVICE, + SUPI indicating value SUPI_DEVICE, + enabled indicating value false // According to Note 3 of 6.2.2-1 table, it cannot be set directly by the service consumer. + ; + ; + ; + from the MEC_CONSUMER entity + } + then { + // MEC 033 Clause 7.3.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request", + body containing + ProblemDetails containing + details indicating value ERROR_DETAILS + ; + ; + ; + to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC033_IOTS_IOTDEV_003_OK" + + Test objective + "Check that the IUT returns the IoT device information + when requested by Service Consumer specifying the device identifier" + + Reference "ETSI GS MEC 033 V3.1.1, clause 7.4.3.1" + + Config Id Config_MEC_6 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_PROVIDER entity having a DeviceInfo containing + deviceAuthenticationInfo indicating value SOME_CUSTOM_VALUES, + deviceId set to registeredDeviceId, + IMSI indicating value IMSI_DEVICE, + SUPI indicating value SUPI_DEVICE, + enabled indicating value false + ; + + } + + // MEC 033 V3.1.1 Clause 6.2.2 Type: DeviceInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/iots/v1/registered_devices/{registeredDeviceId}" + ; + from the MEC_CONSUMER entity + } + then { + // MEC 033 Clause 7.4.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK", + body containing + DeviceInfo containing + deviceAuthenticationInfo indicating value SOME_CUSTOM_VALUES, + deviceId set to registeredDeviceId, + IMSI indicating value IMSI_DEVICE, + SUPI indicating value SUPI_DEVICE, + enabled indicating value false + ; + ; + ; + to the MEC_CONSUMER entity + } + } + } + +Test Purpose { + TP Id "TP_MEC_MEC033_IOTS_IOTDEV_003_NF" + + Test objective + "Check that the IUT returns error + when Service Consumer request to retrieve a not registered IoT device" + + Reference "ETSI GS MEC 033 V3.1.1, clause 7.4.3.1" + + Config Id Config_MEC_6 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_PROVIDER entity not having a DeviceInfo containing + deviceAuthenticationInfo indicating value SOME_CUSTOM_VALUES, + deviceId set to registeredDeviceId, + IMSI indicating value IMSI_DEVICE, + SUPI indicating value SUPI_DEVICE, + enabled indicating value false + ; + + } + + // MEC 033 V3.1.1 Clause 6.2.2 Type: DeviceInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/iots/v1/registered_devices/{registeredDeviceId}" + ; + from the MEC_CONSUMER entity + } + then { + // MEC 033 Clause 7.4.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found" + ; + to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC033_IOTS_IOTDEV_004_OK" + + Test objective + "Check that the IUT updates the information about a registered IoT device + when requested by a Service Consumer" + + Reference "ETSI GS MEC 033 V3.1.1, clause 7.4.3.2" + + Config Id Config_MEC_6 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_PROVIDER entity having a DeviceInfo containing + deviceAuthenticationInfo indicating value SOME_CUSTOM_VALUES, + deviceId set to registeredDeviceId, + IMSI indicating value IMSI_DEVICE, + SUPI indicating value SUPI_DEVICE, + enabled indicating value false + ; + } + + // MEC 033 V3.1.1 Clause 6.2.2 Type: DeviceInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "/iots/v1/registered_devices/{registeredDeviceId}" + body containing + DeviceInfo containing //Updating TrafficRuleDescriptor and the requestedIoTPlatformId associated with + deviceAuthenticationInfo indicating value SOME_CUSTOM_VALUES, + deviceId indicating value HUMAN_READABLE_IDENTIFIER, + IMSI indicating value IMSI_DEVICE, + SUPI indicating value SUPI_DEVICE, + requestedIotPlatformId indicating value REQ_IOT_PLATFORM, + requestedMecTrafficRule containing + TrafficRuleDescriptor containing + trafficRuleId indicating value TRAFFIC_RULE_ID, + filterType set to "FLOW", + action set to "FORWARD_AS_IS", + trafficFilter containing + qCI indicating value QCI_VALUE + ; + ; + ; + ; + ; + ; + from the MEC_CONSUMER entity + } + then { + // MEC 033 Clause 7.4.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK", + body containing + DeviceInfo containing + deviceAuthenticationInfo indicating value SOME_CUSTOM_VALUES, + deviceId indicating value HUMAN_READABLE_IDENTIFIER, + IMSI indicating value IMSI_DEVICE, + SUPI indicating value SUPI_DEVICE, + requestedIotPlatformId indicating value REQ_IOT_PLATFORM, + requestedMecTrafficRule containing + TrafficRuleDescriptor containing + trafficRuleId indicating value TRAFFIC_RULE_ID, + filterType set to "FLOW", + action set to "FORWARD_AS_IS", + enabled set to TRUE + trafficFilter containing + qCI indicating value QCI_VALUE + ; + ; + ; + ; + ; + ; + to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC033_IOTS_IOTDEV_004_NF" + + Test objective + "Check that the IUT returns an error + when a Service Consumer requests to update a not registered IoT device" + + Reference "ETSI GS MEC 033 V3.1.1, clause 7.4.3.2" + + Config Id Config_MEC_6 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_PROVIDER entity not having a DeviceInfo containing + deviceAuthenticationInfo indicating value SOME_CUSTOM_VALUES, + deviceId set to registeredDeviceId, + IMSI indicating value IMSI_DEVICE, + SUPI indicating value SUPI_DEVICE, + enabled indicating value false + ; + } + + // MEC 033 V3.1.1 Clause 6.2.2 Type: DeviceInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "/iots/v1/registered_devices/{registeredDeviceId}" + body containing + DeviceInfo containing + deviceAuthenticationInfo indicating value SOME_CUSTOM_VALUES, + deviceId set to registeredDeviceId, + IMSI indicating value IMSI_DEVICE, + SUPI indicating value SUPI_DEVICE, + requestedIotPlatformId indicating value REQ_IOT_PLATFORM, + requestedMecTrafficRule containing + TrafficRuleDescriptor containing + trafficRuleId indicating value TRAFFIC_RULE_ID, + filterType set to "FLOW", + action set to "FORWARD_AS_IS", + trafficFilter containing + qCI indicating value QCI_VALUE + ; + ; + ; + ; + ; + ; + from the MEC_CONSUMER entity + } + then { + // MEC 033 Clause 7.4.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC033_IOTS_IOTDEV_004_BR" + + Test objective + "Check that the IUT returns an error + when a Service Consumer requests to update an existing IoT device with incorrect parameters" + + Reference "ETSI GS MEC 033 V3.1.1, clause 7.4.3.2" + + Config Id Config_MEC_6 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_PROVIDER entity having a DeviceInfo containing + deviceAuthenticationInfo indicating value SOME_CUSTOM_VALUES, + deviceId set to registeredDeviceId, + IMSI indicating value IMSI_DEVICE, + SUPI indicating value SUPI_DEVICE, + enabled indicating value false + ; + } + + // MEC 033 V3.1.1 Clause 6.2.2 Type: DeviceInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "/iots/v1/registered_devices/{registeredDeviceId}" + body containing + DeviceInfo containing + deviceAuthenticationInfo indicating value SOME_CUSTOM_VALUES, + deviceId set to registeredDeviceId, + IMSI indicating value IMSI_DEVICE, + SUPI indicating value SUPI_DEVICE, + enabled set to TRUE, // According to Note 3 of 6.2.2-1 table, it cannot be set directly by the service consumer. + requestedMecTrafficRule containing + TrafficRuleDescriptor containing + trafficRuleId indicating value TRAFFIC_RULE_ID, + filterType set to "FLOW", + action set to "FORWARD_AS_IS", + trafficFilter containing + qCI indicating value QCI_VALUE + ; + ; + ; + ; + ; + ; + from the MEC_CONSUMER entity + } + then { + // MEC 033 Clause 7.4.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request", + body containing + ProblemDetails containing + details indicating value ERROR_DETAILS + ; + ; + ; + to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC033_IOTS_IOTDEV_005_OK" + + Test objective + "Check that the IUT deregisters an IoT device information + when requested by a Service Consumer specifying the IoT registered device identifier" + + Reference "ETSI GS MEC 033 V3.1.1, clause 7.4.3.5" + + Config Id Config_MEC_6 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_PROVIDER entity having a DeviceInfo containing + deviceAuthenticationInfo indicating value SOME_CUSTOM_VALUES, + deviceId set to registeredDeviceId, + IMSI indicating value IMSI_DEVICE, + SUPI indicating value SUPI_DEVICE, + enabled indicating value false + ; + + } + + // MEC 033 V3.1.1 Clause 6.2.2 Type: DeviceInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "/iots/v1/registered_devices/{registeredDeviceId}" + ; + from the MEC_CONSUMER entity + } + then { + // MEC 033 Clause 7.4.3.5 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "204 No Content" + ; + to the MEC_CONSUMER entity + } + } + } + +Test Purpose { + TP Id "TP_MEC_MEC033_IOTS_IOTDEV_005_NF" + + Test objective + "Check that the IUT returns an error + when a Service Consumer requests to deregisters an IoT device using incorrect parameters" + + Reference "ETSI GS MEC 033 V3.1.1, clause 7.4.3.5" + + Config Id Config_MEC_6 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_PROVIDER entity not having a DeviceInfo containing + deviceAuthenticationInfo indicating value SOME_CUSTOM_VALUES, + deviceId indicating value registeredDeviceId, + SUPI indicating value SUPI_DEVICE, + IMSI indicating value IMSI_DEVICE, + enabled indicating value false + ; + + } + + // MEC 033 V3.1.1 Clause 6.2.2 Type: DeviceInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "/iots/v1/registered_devices/{registeredDeviceId}" + ; + from the MEC_CONSUMER entity + } + then { + // MEC 033 Clause 7.4.3.5 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not found" + ; + to the MEC_CONSUMER entity + } + } + } + +} + + diff --git a/Test Purposes/MEC033/MEX/IOTS/IOTPLAT/RegisteredIoTPlatform.tplan2 b/Test Purposes/MEC033/MEX/IOTS/IOTPLAT/RegisteredIoTPlatform.tplan2 new file mode 100755 index 0000000000000000000000000000000000000000..93326615fb8068e22d50679499d1c1cabea22290 --- /dev/null +++ b/Test Purposes/MEC033/MEX/IOTS/IOTPLAT/RegisteredIoTPlatform.tplan2 @@ -0,0 +1,434 @@ +/* +Copyright (c) ETSI 2018-2023. +Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters +*/ + +Package MEC_MEC033_MEX_IOTS_IOTPLAT { + + import all from MEC_Common; + + Test Purpose { + TP Id "TP_MEC_MEC033_MEX_IOTS_IOTPLAT_001_OK" + + Test objective + "Check that the IUT responds with the list of registered IoT platforms + when queried by a Service Consumer" + + Reference "ETSI GS MEC 033 V3.1.1, clause 7.5.3.1" + + Config Id Config_MEC_6 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_PROVIDER entity having a IoTPlatformInfo containing + iotPlatformId indicating value IOT_PLATFORM_ID, + userTransportInfo indicating value USER_TRANSPORT_INFO, + enabled indicating value BOOLEAN_VALUE + ; + } + + // MEC 033 V3.1.1 Clause 6.2.3 Type: IotPlatformInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/iots/v1/registered_iot_platforms" + ; + from the MEC_CONSUMER entity + } + then { + // MEC 033 Clause 7.5.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + body containing + arrayOfIoTPlatformInfo containing + IoTPlatformInfo containing + iotPlatformId indicating value IOT_PLATFORM_ID, + userTransportInfo indicating value USER_TRANSPORT_INFO, + enabled indicating value BOOLEAN_VALUE + ; + ; + ; + ; + to the MEC_CONSUMER entity + } + } + + } + + + Test Purpose { + TP Id "TP_MEC_MEC033_MEX_IOTS_IOTPLAT_002_OK" + + Test objective + "Check that the IUT registers the information of a new IoT platform + when requested by a Service Consumer" + + Reference "ETSI GS MEC 033 V3.1.1, clause 7.5.3.4" + + Config Id Config_MEC_6 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state + } + + // MEC 033 V3.1.1 Clause 6.2.3 Type: IotPlatformInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/iots/v1/registered_iot_platforms" + body containing + IotPlatformInfo containing + iotPlatformId indicating value IOT_PLATFORM_ID, + userTransportInfo indicating value USER_TRANSPORT_INFO, + enabled indicating value BOOLEAN_VALUE + ; + ; + ; + from the MEC_CONSUMER entity + } + then { + // MEC 033 Clause 7.3.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "201 Created", + Location indicating value LOCATION, + body containing + IotPlatformInfo containing + iotPlatformId indicating value IOT_PLATFORM_ID, + userTransportInfo indicating value USER_TRANSPORT_INFO, + enabled indicating value BOOLEAN_VALUE + ; + ; + ; + to the MEC_CONSUMER entity + } + } + + } + + Test Purpose { + TP Id "TP_MEC_MEC033_MEX_IOTS_IOTPLAT_002_BR" + + Test objective + "Check that the IUT returns an error + when Service Consumer request to register an IoT device with incorrect parameters" + + Reference "ETSI GS MEC 033 V3.1.1, clause 7.5.3.4" + + Config Id Config_MEC_6 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state + } + + // MEC 033 V3.1.1 Clause 6.2.3 Type: IotPlatformInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "/iots/v1/registered_iot_platforms" + body containing + IotPlatformInfo containing //userTransportInfo is a mandatory attribute of IotPlatformInfo, below not provided. + iotPlatformId indicating value IOT_PLATFORM_ID, + enabled indicating value BOOLEAN_VALUE + ; + ; + ; + from the MEC_CONSUMER entity + } + then { + // MEC 033 Clause 7.3.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request" + ; + to the MEC_CONSUMER entity + } + } + + } + + Test Purpose { + TP Id "TP_MEC_MEC033_MEX_IOTS_IOTPLAT_003_OK" + + Test objective + "Check that the IUT returns the IoT platform information + when requested by Service Consumer specifying the IoT platform identifier" + + Reference "ETSI GS MEC 033 V3.1.1, clause 7.5.3.1" + + Config Id Config_MEC_6 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_PROVIDER entity having a IotPlatformInfo containing + iotPlatformId set to registeredIotPlatformId, + userTransportInfo indicating value USER_TRANSPORT_INFO, + enabled indicating value BOOLEAN_VALUE + ; + + } + + // MEC 033 V3.1.1 Clause 6.2.3 Type: IotPlatformInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/iots/v1/registered_iot_platforms/{registeredIotPlatformId}" + ; + from the MEC_CONSUMER entity + } + then { + // MEC 033 Clause 7.5.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK", + body containing + IotPlatformInfo containing + iotPlatformId indicating value IOT_PLATFORM_ID, + userTransportInfo indicating value USER_TRANSPORT_INFO, + enabled indicating value BOOLEAN_VALUE + ; + ; + ; + to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC033_MEX_IOTS_IOTPLAT_003_NF" + + Test objective + "Check that the IUT returns error + when Service Consumer request to retrieve a not registered IoT platform" + + Reference "ETSI GS MEC 033 V3.1.1, clause 7.5.3.1" + + Config Id Config_MEC_6 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_PROVIDER entity not having a IotPlatformInfo containing + iotPlatformId set to registeredIotPlatformId, + userTransportInfo indicating value USER_TRANSPORT_INFO, + enabled indicating value BOOLEAN_VALUE + ; + } + + // MEC 033 V3.1.1 Clause 6.2.3 Type: IotPlatformInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "/iots/v1/registered_iot_platforms/{registeredIotPlatformId}" + ; + from the MEC_CONSUMER entity + } + then { + // MEC 033 Clause 7.5.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found" + ; + to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC033_MEX_IOTS_IOTPLAT_004_OK" + + + Test objective + "Check that the IUT updates the information about a registered IoT platform + when requested by a Service Consumer" + + Reference "ETSI GS MEC 033 V3.1.1, clause 7.5.3.2" + + Config Id Config_MEC_6 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_PROVIDER entity having a IotPlatformInfo containing + iotPlatformId set to registeredIotPlatformId, + userTransportInfo indicating value USER_TRANSPORT_INFO, + enabled indicating value BOOLEAN_VALUE + ; + } + + + // MEC 033 V3.1.1 Clause 6.2.3 Type: IotPlatformInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "/iots/v1/registered_iot_platforms/{registeredIotPlatformId}" + body containing + IotPlatformInfo containing //Updating TrafficRuleDescriptor and the requestedIoTPlatformId associated with + iotPlatformId set to registeredIotPlatformId, + userTranspostInfo indicating value USER_TRANSPORT_INFO, + enabled indicating value BOOLEAN_VALUE + ; + ; + ; + from the MEC_CONSUMER entity + } + then { + // MEC 033 Clause 7.5.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK", + body containing + IotPlatformInfo containing + iotPlatformId set to registeredIotPlatformId, + userTranspostInfo indicating value USER_TRANSPORT_INFO, + enabled indicating value BOOLEAN_VALUE + ; + ; + ; + to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC033_MEX_IOTS_IOTPLAT_004_NF" + + Test objective + "Check that the IUT returns an error + when a Service Consumer requests to update a not registered IoT platform" + + Reference "ETSI GS MEC 033 V3.1.1, clause 7.5.3.2" + + Config Id Config_MEC_6 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_PROVIDER entity not having a IotPlatformInfo containing + iotPlatformId set to registeredIotPlatformId, + userTransportInfo indicating value USER_TRANSPORT_INFO, + enabled indicating value BOOLEAN_VALUE + ; + } + + + // MEC 033 V3.1.1 Clause 6.2.3 Type: IotPlatformInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vPUT containing + uri indicating value "/iots/v1/registered_iot_platforms/{registeredIotPlatformId}" + body containing + IotPlatformInfo containing + iotPlatformId set to registeredIotPlatformId, + userTranspostInfo indicating value USER_TRANSPORT_INFO, + enabled indicating value BOOLEAN_VALUE + ; + ; + ; + from the MEC_CONSUMER entity + } + then { + // MEC 033 Clause 7.5.3.2 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found"; + to the MEC_CONSUMER entity + } + } + } + + Test Purpose { + TP Id "TP_MEC_MEC033_MEX_IOTS_IOTPLAT_005_OK" + + Test objective + "Check that the IUT deregisters an IoT platform information + when requested by a Service Consumer specifying the registered IoT platform identifier" + + Reference "ETSI GS MEC 033 V3.1.1, clause 7.5.3.5" + + Config Id Config_MEC_6 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_PROVIDER entity having a IotPlatformInfo containing + iotPlatformId set to registeredIotPlatformId, + userTransportInfo indicating value USER_TRANSPORT_INFO, + enabled indicating value BOOLEAN_VALUE + ; + } + + // MEC 033 V3.1.1 Clause 6.2.3 Type: IotPlatformInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "/iots/v1/registered_iot_platforms/{registeredIotPlatformId}" + ; + from the MEC_CONSUMER entity + } + then { + // MEC 033 Clause 7.5.3.5 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "204 No Content" + ; + to the MEC_CONSUMER entity + } + } + } + + + Test Purpose { + TP Id "TP_MEC_MEC033_MEX_IOTS_IOTPLAT_005_NF" + + Test objective + "Check that the IUT returns an error + when a Service Consumer request to deregister an IoT platform using incorrect parameters" + + Reference "ETSI GS MEC 033 V3.1.1, clause 7.5.3.5" + + Config Id Config_MEC_6 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the MEC_PROVIDER entity not having a IotPlatformInfo containing + iotPlatformId set to registeredIotPlatformId, + userTransportInfo indicating value USER_TRANSPORT_INFO, + enabled indicating value BOOLEAN_VALUE + ; + } + // MEC 033 V3.1.1 Clause 6.2.3 Type: IotPlatformInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "/iots/v1/registered_iot_platforms/{registeredIotPlatformId}" + ; + from the MEC_CONSUMER entity + } + then { + // MEC 033 Clause 7.5.3.5 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not found" + ; + to the MEC_CONSUMER entity + } + } + } + +} \ No newline at end of file diff --git a/Test Purposes/MEC040/SRV/.gitignore b/Test Purposes/MEC040/SRV/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..e10e727be5ce2dc48c7d4d86a401a2744e73c8c1 --- /dev/null +++ b/Test Purposes/MEC040/SRV/.gitignore @@ -0,0 +1 @@ +/.metadata/ diff --git a/Test Purposes/MEC040/SRV/MEF/FederationEnablement.tplan2 b/Test Purposes/MEC040/SRV/MEF/FederationEnablement.tplan2 new file mode 100644 index 0000000000000000000000000000000000000000..939e9cbf4997504610b23cc8da9c86b817bc6a67 --- /dev/null +++ b/Test Purposes/MEC040/SRV/MEF/FederationEnablement.tplan2 @@ -0,0 +1,1583 @@ +/* +Copyright (c) ETSI 2018-2023. +Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters +*/ + +Package MEC_MEC040_SRV_FED { + + import all from MEC_Common; + + Test Purpose { + TP Id "TP_MEC_MEC040_SRV_MEF_001_OK" + + Test objective + "Check that the IUT responds with a list of all available systemInfo + when requested by a MEC Orchestrator - No query parameters" + + Reference + "ETSI GS MEC 040 V3.1.1, clause 7.3.3.1, clause 5.2.2.2" + + Config Id Config_MEC_7 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity is_registered to the MEC_FED entity and + the MEC_FED entity are_aware_of_eachother and + the MEC_FED entity having a systemInfoList containing + systemInfo1 indicating value SYSTEM_ID_1, + systemInfo2 indicating value SYSTEM_ID_2, + systemInfo3 indicating value SYSTEM_ID_3 + ; + } + + // MEC 040 Clause 6.2.2 Type: SystemInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "fed_enablement/v1/fed_resources/system_info" + ; + from the MEC_FED entity + } + then { + // MEC 040 Clause 7.3.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK", + body containing + systemInfoList containing + systemInfo0 containing + systemId indicating value SYSTEM_ID_1, + systemName indicating value SYSTEM_NAME_1, + systemProvider indicating value SYSTEM_PROVIDER_1 + ;, + systemInfo1 containing + systemId indicating value SYSTEM_ID_2, + systemName indicating value SYSTEM_NAME_2, + systemProvider indicating value SYSTEM_PROVIDER_2 + ;, + systemInfo2 containing + systemId indicating value SYSTEM_ID_3, + systemName indicating value SYSTEM_NAME_3, + systemProvider indicating value SYSTEM_PROVIDER_3 + ; + ; + ; + ; + to the MEC_FED entity + } + } + } // End of TP_MEC_MEC040_SRV_MEF_001_OK + + + Test Purpose { + TP Id "TP_MEC_MEC040_SRV_MEF_001_OK_02" + + Test objective + "Check that the IUT responds with a selection of all available systemInfo when requested by a MEC Orchestrator - SystemId query parameters" + + Reference + "ETSI GS MEC 040 V3.1.1, clause 7.3.3.1, clause 5.2.2.2" + + Config Id Config_MEC_7 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity is_registered to the MEC_FED entity and + the MEC_FED entity having a systemInfoList containing + systemInfo1 indicating value SYSTEM_ID_1, + systemInfo2 indicating value SYSTEM_ID_2, + systemInfo3 indicating value SYSTEM_ID_3 + ; + } + + // MEC 040 Clause 6.2.2 Type: SystemInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "fed_enablement/v1/fed_resources/system_info", + query_parameters containing + systemId indicating value SYSTEM_ID_1 + ; + ; + from the MEC_FED entity + } + then { + // MEC 040 Clause 7.3.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK", + body containing + systemInfoList containing + systemInfo1 containing + systemId indicating value SYSTEM_ID_1, + systemName indicating value SYSTEM_NAME_1, + systemProvider indicating value SYSTEM_PROVIDER_1 + ; + ; + ; + ; + to the MEC_FED entity + } + } + } // End of TP_MEC_MEC040_SRV_MEF_001_OK_02 + + + Test Purpose { + TP Id "TP_MEC_MEC040_SRV_MEF_001_OK_03" + + Test objective + "Check that the IUT responds with a selection of all available systemInfo when requested by a MEC Orchestrator - Multiple SystemId query parameters" + + Reference + "ETSI GS MEC 040 V3.1.1, clause 7.3.3.1, clause 5.2.2.2" + + Config Id Config_MEC_7 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity is_registered to the MEC_FED entity and + the MEC_FED entity having a systemInfoList containing + systemInfo1 indicating value SYSTEM_ID_1, + systemInfo2 indicating value SYSTEM_ID_2, + systemInfo3 indicating value SYSTEM_ID_3 + ; + } + + // MEC 040 Clause 6.2.2 Type: SystemInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "fed_enablement/v1/fed_resources/system_info", + query_parameters containing + systemId indicating value SYSTEM_ID_1, + systemId indicating value SYSTEM_ID_3 + ; + ; + from the MEC_FED entity + } + then { + // MEC 040 Clause 7.3.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK", + body containing + systemInfoList containing + systemInfo1 containing + systemId indicating value SYSTEM_ID_1, + systemName indicating value SYSTEM_NAME_1, + systemProvider indicating value SYSTEM_PROVIDER_1 + ;, + systemInfo3 containing + systemId indicating value SYSTEM_ID_3, + systemName indicating value SYSTEM_NAME_3, + systemProvider indicating value SYSTEM_PROVIDER_3 + ; + ; + ; + ; + to the MEC_FED entity + } + } + } // End of TP_MEC_MEC040_SRV_MEF_001_OK_03 + + + Test Purpose { + TP Id "TP_MEC_MEC040_SRV_MEF_001_OK_04" + + Test objective + "Check that the IUT responds with a selection of all available systemInfo when requested by a MEC Orchestrator - Empty SystemId query parameters" + + Reference + "ETSI GS MEC 040 V3.1.1, clause 7.3.3.1, clause 5.2.2.2" + + Config Id Config_MEC_7 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity is_registered to the MEC_FED entity and + the MEC_FED entity having a systemInfoList containing + systemInfo1 indicating value SYSTEM_ID_1, + systemInfo2 indicating value SYSTEM_ID_2, + systemInfo3 indicating value SYSTEM_ID_3 + ; + } + + // MEC 040 Clause 6.2.2 Type: SystemInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "fed_enablement/v1/fed_resources/system_info", + query_parameters containing + systemId indicating value empty + ; + ; + from the MEC_FED entity + } + then { + // MEC 040 Clause 7.3.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK", + body containing + systemInfoList containing + systemInfo1 containing + systemId indicating value SYSTEM_ID_1, + systemName indicating value SYSTEM_NAME_1, + systemProvider indicating value SYSTEM_PROVIDER_1 + ;, + systemInfo3 containing + systemId indicating value SYSTEM_ID_2, + systemName indicating value SYSTEM_NAME_2, + systemProvider indicating value SYSTEM_PROVIDER_2 + ;, + systemInfo3 containing + systemId indicating value SYSTEM_ID_3, + systemName indicating value SYSTEM_NAME_3, + systemProvider indicating value SYSTEM_PROVIDER_3 + ; + ; + ; + ; + to the MEC_FED entity + } + } + } // End of TP_MEC_MEC040_SRV_MEF_001_OK_04 + + + Test Purpose { + TP Id "TP_MEC_MEC040_SRV_MEF_001_OK_05" + + Test objective + "Check that the IUT responds with a selection of all available systemInfo when requested by a MEC Orchestrator - SystemName query parameters" + + Reference + "ETSI GS MEC 040 V3.1.1, clause 7.3.3.1, clause 5.2.2.2" + + Config Id Config_MEC_7 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity is_registered to the MEC_FED entity and + the MEC_FED entity having a systemInfoList containing + systemInfo1 indicating value SYSTEM_NAME_1, + systemInfoN indicating value SYSTEM_NAME_2, + systemInfoN indicating value SYSTEM_NAME_3 + ; + } + + // MEC 040 Clause 6.2.2 Type: SystemInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "fed_enablement/v1/fed_resources/system_info", + query_parameters containing + systemName indicating value SYSTEM_NAME_1 + ; + ; + from the MEC_FED entity + } + then { + // MEC 040 Clause 7.3.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK", + body containing + systemInfoList containing + systemInfo1 containing + systemId indicating value SYSTEM_ID_1, + systemName indicating value SYSTEM_NAME_1, + systemProvider indicating value SYSTEM_PROVIDER_1 + ; + ; + ; + ; + to the MEC_FED entity + } + } + } // End of TP_MEC_MEC040_SRV_MEF_001_OK_05 + + + Test Purpose { + TP Id "TP_MEC_MEC040_SRV_MEF_001_OK_06" + + Test objective + "Check that the IUT responds with a selection of all available systemInfo when requested by a MEC Orchestrator - Multiple SystemName query parameters" + + Reference "ETSI GS MEC 040 V3.1.1, clause 7.3.3.1, clause 5.2.2.2", + "https://forge.etsi.org/rep/mec/gs040-fed-enablement-api" + + Config Id Config_MEC_7 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity is_registered to the MEC_FED entity and + the MEC_FED entity having a systemInfoList containing + systemInfo1 indicating value SYSTEM_NAME_1, + systemInfoN indicating value SYSTEM_NAME_2, + systemInfoN indicating value SYSTEM_NAME_3 + ; + } + + // MEC 040 Clause 6.2.2 Type: SystemInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "fed_enablement/v1/fed_resources/system_info", + query_parameters containing + systemName indicating value SYSTEM_NAME_1, + systemName indicating value SYSTEM_NAME_3 + ; + ; + from the MEC_FED entity + } + then { + // MEC 040 Clause 7.3.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK", + body containing + systemInfoList containing + systemInfo1 containing + systemId indicating value SYSTEM_ID_1, + systemName indicating value SYSTEM_NAME_1, + systemProvider indicating value SYSTEM_PROVIDER_1 + ;, + systemInfo3 containing + systemId indicating value SYSTEM_ID_3, + systemName indicating value SYSTEM_NAME_3, + systemProvider indicating value SYSTEM_PROVIDER_3 + ; + ; + ; + ; + to the MEC_FED entity + } + } + } // End of TP_MEC_MEC040_SRV_MEF_001_OK_06 + + + Test Purpose { + TP Id "TP_MEC_MEC040_SRV_MEF_001_OK_07" + + Test objective + "Check that the IUT responds with a selection of all available systemInfo when requested by a MEC Orchestrator - Empty SystemName query parameters" + + Reference + "ETSI GS MEC 040 V3.1.1, clause 7.3.3.1, clause 5.2.2.2" + + Config Id Config_MEC_7 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity is_registered to the MEC_FED entity and + the MEC_FED entity having a systemInfoList containing + systemInfo1 indicating value SYSTEM_NAME_1, + systemInfoN indicating value SYSTEM_NAME_2, + systemInfoN indicating value SYSTEM_NAME_3 + ; + } + + // MEC 040 Clause 6.2.2 Type: SystemInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "fed_enablement/v1/fed_resources/system_info", + query_parameters containing + systemName indicating value empty + ; + ; + from the MEC_FED entity + } + then { + // MEC 040 Clause 7.3.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK", + body containing + systemInfoList containing + systemInfo1 containing + systemId indicating value SYSTEM_ID_1, + systemName indicating value SYSTEM_NAME_1, + systemProvider indicating value SYSTEM_PROVIDER_1 + ;, + systemInfo3 containing + systemId indicating value SYSTEM_ID_2, + systemName indicating value SYSTEM_NAME_2, + systemProvider indicating value SYSTEM_PROVIDER_2 + ;, + systemInfo3 containing + systemId indicating value SYSTEM_ID_3, + systemName indicating value SYSTEM_NAME_3, + systemProvider indicating value SYSTEM_PROVIDER_3 + ; + ; + ; + ; + to the MEC_FED entity + } + } + } // End of TP_MEC_MEC040_SRV_MEF_001_OK_07 + + + Test Purpose { + TP Id "TP_MEC_MEC040_SRV_MEF_001_OK_08" + + Test objective + "Check that the IUT responds with a selection of all available systemInfo when requested by a MEC Orchestrator - systemProvider query parameters" + + Reference + "ETSI GS MEC 040 V3.1.1, clause 7.3.3.1, clause 5.2.2.2" + + Config Id Config_MEC_7 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity is_registered to the MEC_FED entity and + the MEC_FED entity having a systemInfoList containing + systemInfo1 indicating value SYSTEM_PROVIDER_1, + systemInfoN indicating value SYSTEM_PROVIDER_2, + systemInfoN indicating value SYSTEM_PROVIDER_3 + ; + } + + // MEC 040 Clause 6.2.2 Type: SystemInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "fed_enablement/v1/fed_resources/system_info", + query_parameters containing + systemProvider indicating value SYSTEM_PROVIDER_1 + ; + ; + from the MEC_FED entity + } + then { + // MEC 040 Clause 7.3.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK", + body containing + systemInfoList containing + systemInfo1 containing + systemId indicating value SYSTEM_ID_1, + systemName indicating value SYSTEM_NAME_1, + systemProvider indicating value SYSTEM_PROVIDER_1 + ; + ; + ; + ; + to the MEC_FED entity + } + } + } // End of TP_MEC_MEC040_SRV_MEF_001_OK_08 + + + Test Purpose { + TP Id "TP_MEC_MEC040_SRV_MEF_001_OK_09" + + Test objective + "Check that the IUT responds with a selection of all available systemInfo when requested by a MEC Orchestrator - Multiple systemProvider query parameters" + + Reference "ETSI GS MEC 040 V3.1.1, clause 7.3.3.1, clause 5.2.2.2", + "https://forge.etsi.org/rep/mec/gs040-fed-enablement-api" + + Config Id Config_MEC_7 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity is_registered to the MEC_FED entity and + the MEC_FED entity having a systemInfoList containing + systemInfo1 indicating value SYSTEM_PROVIDER_1, + systemInfoN indicating value SYSTEM_PROVIDER_2, + systemInfoN indicating value SYSTEM_PROVIDER_3 + ; + } + + // MEC 040 Clause 6.2.2 Type: SystemInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "fed_enablement/v1/fed_resources/system_info", + query_parameters containing + systemProvider indicating value SYSTEM_PROVIDER_1, + systemProvider indicating value SYSTEM_PROVIDER_3 + ; + ; + from the MEC_FED entity + } + then { + // MEC 040 Clause 7.3.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK", + body containing + systemInfoList containing + systemInfo1 containing + systemId indicating value SYSTEM_ID_1, + systemName indicating value SYSTEM_NAME_1, + systemProvider indicating value SYSTEM_PROVIDER_1 + ;, + systemInfo3 containing + systemId indicating value SYSTEM_ID_3, + systemName indicating value SYSTEM_NAME_3, + systemProvider indicating value SYSTEM_PROVIDER_3 + ; + ; + ; + ; + to the MEC_FED entity + } + } + } // End of TP_MEC_MEC040_SRV_MEF_001_OK_09 + + + Test Purpose { + TP Id "TP_MEC_MEC040_SRV_MEF_001_OK_10" + + Test objective + "Check that the IUT responds with a selection of all available systemInfo when requested by a MEC Orchestrator - Empty systemProvider query parameters" + + Reference + "ETSI GS MEC 040 V3.1.1, clause 7.3.3.1, clause 5.2.2.2" + + Config Id Config_MEC_7 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity is_registered to the MEC_FED entity and + the MEC_FED entity having a systemInfoList containing + systemInfo1 indicating value SYSTEM_PROVIDER_1, + systemInfoN indicating value SYSTEM_PROVIDER_2, + systemInfoN indicating value SYSTEM_PROVIDER_3 + ; + } + + // MEC 040 Clause 6.2.2 Type: SystemInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "fed_enablement/v1/fed_resources/system_info", + query_parameters containing + systemProvider indicating value empty + ; + ; + from the MEC_FED entity + } + then { + // MEC 040 Clause 7.3.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK", + body containing + systemInfoList containing + systemInfo1 containing + systemId indicating value SYSTEM_ID_1, + systemName indicating value SYSTEM_NAME_1, + systemProvider indicating value SYSTEM_PROVIDER_1 + ;, + systemInfo3 containing + systemId indicating value SYSTEM_ID_2, + systemName indicating value SYSTEM_NAME_2, + systemProvider indicating value SYSTEM_PROVIDER_2 + ;, + systemInfo3 containing + systemId indicating value SYSTEM_ID_3, + systemName indicating value SYSTEM_NAME_3, + systemProvider indicating value SYSTEM_PROVIDER_3 + ; + ; + ; + ; + to the MEC_FED entity + } + } + } // End of TP_MEC_MEC040_SRV_MEF_001_OK_10 + + + Test Purpose { + TP Id "TP_MEC_MEC040_SRV_MEF_001_OK_11" + + Test objective + "Check that the IUT responds with a selection of all available systemInfo when requested by a MEC Orchestrator - Multiple query parameters" + + Reference + "ETSI GS MEC 040 V3.1.1, clause 7.3.3.1, clause 5.2.2.2" + + Config Id Config_MEC_7 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity is_registered to the MEC_FED entity and + the MEC_FED entity having a systemInfoList containing + systemInfo1 indicating value SYSTEM_ID_1, + systemInfo1 indicating value SYSTEM_ID_2, + systemInfo3 indicating value SYSTEM_ID_3, + systemInfoN indicating value SYSTEM_ID_4 + ; + } + + // MEC 040 Clause 6.2.2 Type: SystemInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "fed_enablement/v1/fed_resources/system_info", + query_parameters containing + systemId indicating value SYSTEM_ID_1, + systemName indicating value SYSTEM_NAME_3 + ; + ; + from the MEC_FED entity + } + then { + // MEC 040 Clause 7.3.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK", + body containing + systemInfoList containing + systemInfo1 containing + systemId indicating value SYSTEM_ID_1, + systemName indicating value SYSTEM_NAME_1, + systemProvider indicating value SYSTEM_PROVIDER_1 + ;, + systemInfo3 containing + systemId indicating value any_value, + systemName indicating value SYSTEM_NAME_3, + systemProvider indicating value SYSTEM_PROVIDER_3 + ; + ; + ; + ; + to the MEC_FED entity + } + } + } // End of TP_MEC_MEC040_SRV_MEF_001_OK_11 + + + Test Purpose { + TP Id "TP_MEC_MEC040_SRV_MEF_001_NF_01" + + Test objective + "Check that the IUT responds with an error when selection is not applicable - SystemId" + + Reference + "ETSI GS MEC 040 V3.1.1, clause 7.3.3.1, clause 5.2.2.2" + + Config Id Config_MEC_7 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity is_registered to the MEC_FED entity and + the MEC_FED entity having a systemInfoList containing + systemInfo1 indicating value SYSTEM_ID_1, + systemInfo1 indicating value SYSTEM_ID_2, + systemInfo3 indicating value SYSTEM_ID_3 + ; + } + + // MEC 040 Clause 6.2.2 Type: SystemInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "fed_enablement/v1/fed_resources/system_info", + query_parameters containing + systemId indicating value SYSTEM_ID_4 + ; + ; + from the MEC_FED entity + } + then { + // MEC 040 Clause 7.3.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found" + ; + to the MEC_FED entity + } + } + } // End of TP_MEC_MEC040_SRV_MEF_001_NF_01 + + + Test Purpose { + TP Id "TP_MEC_MEC040_SRV_MEF_001_NF_02" + + Test objective + "Check that the IUT responds with an error when selection is not applicable - SystemName" + + Reference + "ETSI GS MEC 040 V3.1.1, clause 7.3.3.1, clause 5.2.2.2" + + Config Id Config_MEC_7 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity is_registered to the MEC_FED entity and + the MEC_FED entity having a systemInfoList containing + systemInfo1 indicating value SYSTEM_NAME_1, + systemInfo1 indicating value SYSTEM_NAME_2, + systemInfo3 indicating value SYSTEM_NAME_3 + ; + } + + // MEC 040 Clause 6.2.2 Type: SystemInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "fed_enablement/v1/fed_resources/system_info", + query_parameters containing + systemName indicating value SYSTEM_NAME_4 + ; + ; + from the MEC_FED entity + } + then { + // MEC 040 Clause 7.3.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found" + ; + to the MEC_FED entity + } + } + } // End of TP_MEC_MEC040_SRV_MEF_001_NF_02_02 + + + Test Purpose { + TP Id "TP_MEC_MEC040_SRV_MEF_001_NF_03" + + Test objective + "Check that the IUT responds with an error when selection is not applicable - SystemProvider" + + Reference + "ETSI GS MEC 040 V3.1.1, clause 7.3.3.1, clause 5.2.2.2" + + Config Id Config_MEC_7 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity is_registered to the MEC_FED entity and + the MEC_FED entity having a systemInfoList containing + systemInfo1 indicating value SYSTEM_PROVIDER_1, + systemInfo1 indicating value SYSTEM_PROVIDER_2, + systemInfo3 indicating value SYSTEM_PROVIDER_3 + ; + } + + // MEC 040 Clause 6.2.2 Type: SystemInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "fed_enablement/v1/fed_resources/system_info", + query_parameters containing + SystemProvider indicating value SYSTEM_PROVIDER_4 + ; + ; + from the MEC_FED entity + } + then { + // MEC 040 Clause 7.3.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found" + ; + to the MEC_FED entity + } + } + } // End of TP_MEC_MEC040_SRV_MEF_001_NF_03 + + + Test Purpose { + TP Id "TP_MEC_MEC040_SRV_MEF_001_BR" + + Test objective + "Check that the IUT responds with an error when request is malformed" + + Reference + "ETSI GS MEC 040 V3.1.1, clause 7.3.3.1, clause 5.2.2.2" + + Config Id Config_MEC_7 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity is_registered to the MEC_FED entity and + the MEC_FED entity having a systemInfoList containing + systemInfo1 indicating value SYSTEM_ID_1 + ; + } + + // MEC 040 Clause 6.2.2 Type: SystemInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "fed_enablement/v10/fed_resources/system_info", + query_parameters containing + system indicating value any_value // Wrong query parameter: system instead of systemId + ;; + from the MEC_FED entity + } + then { + // MEC 040 Clause 7.3.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request" + ; + to the MEC_FED entity + } + } + } // End of TP_MEC_MEC040_SRV_MEF_001_BR + + + Test Purpose { + TP Id "TP_MEC_MEC040_SRV_MEF_002_OK" + + Test objective + "Check that the IUT creates a new systemInfo when requested by a MEC Orchestrator" + + Reference + "ETSI GS MEC 040 V3.1.1, clause 7.3.3.4, clause 5.2.2.1.1" + + Config Id Config_MEC_7 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity is_registered to the MEC_FED entity and + the MEC_FED entity not having a systemInfoList containing + systemInfo2 indicating value SYSTEM_ID_2 + ; + } + + // MEC 040 Clause 6.2.2 Type: SystemInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "fed_enablement/v1/fed_resources/system_info", + body containing + systemInfo containing + systemId indicating value omit, // Shall be absent in POST request + systemName indicating value SYSTEM_NAME_1, + systemProvider indicating value SYSTEM_PROV_1 + ; + ; + ; + from the MEC_FED entity + } + then { + // MEC 040 Clause 7.3.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "201 Created", + body containing + systemInfo containing + systemId indicating value SYSTEM_ID_1, + systemName indicating value SYSTEM_NAME_1, + systemProvider indicating value SYSTEM_PROV_1 + ; + ; + ; + to the MEC_FED entity + } + } + } // End of TP_MEC_MEC040_SRV_MEF_002_OK + + + Test Purpose { + TP Id "TP_MEC_MEC040_SRV_MEF_002_BR" + + Test objective + "Check that the IUT responds with an error on creating an existing systemInfo" + + Reference + "ETSI GS MEC 040 V3.1.1, clause 7.3.3.4, clause 5.2.2.1.1" + + Config Id Config_MEC_7 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity is_registered to the MEC_FED entity and + the MEC_FED entity not having a systemInfoList containing + systemInfo2 indicating value SYSTEM_ID_2 + ; + } + + // MEC 040 Clause 6.2.2 Type: SystemInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "fed_enablement/v1/fed_resources/system_info", + body containing + systemInfo containing + systemId indicating value SYSTEM_ID_2, // Shall be absent in POST request + systemName indicating value SYSTEM_NAME_2, + systemProvider indicating value SYSTEM_PROV_2 + ; + ; + ; + from the MEC_FED entity + } + then { + // MEC 040 Clause 7.3.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request" + ; + to the MEC_FED entity + } + } + } // End of TP_MEC_MEC040_SRV_MEF_002_BR_01 + + + Test Purpose { + TP Id "TP_MEC_MEC040_SRV_MEF_002_BR_02" + + Test objective + "Check that the IUT responds with an error on providing inconsistent data" + + Reference + "ETSI GS MEC 040 V3.1.1, clause 7.3.3.4, clause 5.2.2.1.1" + + Config Id Config_MEC_7 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity is_registered to the MEC_FED entity and + the MEC_FED entity having a systemInfoList containing + systemInfo2 indicating value SYSTEM_ID_2 + ; + } + + // MEC 040 Clause 6.2.2 Type: SystemInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vPOST containing + uri indicating value "fed_enablement/v1/fed_resources/system_info", + body containing + systemInfo containing + systemId indicating value SYSTEM_ID_1, // Shall be omit in the request + systemName indicating value SYSTEM_NAME_1, + systemProvider indicating value SYSTEM_PROV_1 + ; + ; + ; + from the MEC_FED entity + } + then { + // MEC 040 Clause 7.3.3.4 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request" + ; + to the MEC_FED entity + } + } + } // End of TP_MEC_MEC040_SRV_MEF_002_BR_02 + + + Test Purpose { + TP Id "TP_MEC_MEC040_SRV_MEF_003_OK" + + Test objective + "Check that the IUT responds with a selection of all available systemInfo when requested by a MEC Orchestrator" + + Reference + "ETSI GS MEC 040 V3.1.1, clause 7.4.3.1, clause 5.2.2.1.1" + + Config Id Config_MEC_7 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity is_registered to the MEC_FED entity and + the MEC_FED entity having a systemInfoList containing + systemInfo1 indicating value SYSTEM_ID_1, + systemInfo2 indicating value SYSTEM_ID_2, + systemInfo3 indicating value SYSTEM_ID_3 + ; + } + + // MEC 040 Clause 6.2.2 Type: SystemInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "fed_enablement/v1/fed_resources/system_info/{SYSTEM_ID_2}" + ; + from the MEC_FED entity + } + then { + // MEC 040 Clause 7.4.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK", + body containing + systemInfo containing + systemId indicating value SYSTEM_ID_2, + systemName indicating value SYSTEM_NAME_2, + systemProvider indicating value SYSTEM_PROVIDER_2 + ; + ; + ; + to the MEC_FED entity + } + } + } // End of TP_MEC_MEC040_SRV_MEF_003_OK + + + Test Purpose { + TP Id "TP_MEC_MEC040_SRV_MEF_003_NF" + + Test objective + "Check that the IUT responds with an error when it receives a request for returning a systemInfo referred with a wrong systemId" + + Reference "ETSI GS MEC 040 V3.1.1, clause 7.4.3.1, clause 5.2.2.1.1", + "https://forge.etsi.org/rep/mec/gs040-fed-enablement-api" + + Config Id Config_MEC_7 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity is_registered to the MEC_FED entity and + the MEC_FED entity having a systemInfoList containing + systemInfo1 indicating value SYSTEM_ID_1, + systemInfo2 indicating value SYSTEM_ID_2, + systemInfo1 indicating value SYSTEM_ID_3 + ; + } + + // MEC 040 Clause 6.2.2 Type: SystemInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "fed_enablement/v1/fed_resources/system_info/{SYSTEM_ID_4}" + ; + from the MEC_FED entity + } + then { + // MEC 040 Clause 7.4.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found" + ; + to the MEC_FED entity + } + } + } // End of TP_MEC_MEC040_SRV_MEF_003_NF + + + Test Purpose { + TP Id "TP_MEC_MEC040_SRV_MEF_003_BR" + + Test objective + "Check that the IUT responds with an error when it receives a request with an inconsistant URI" + + Reference + "ETSI GS MEC 040 V3.1.1, clause 7.4.3.1, clause 5.2.2.1.1" + + Config Id Config_MEC_7 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity is_registered to the MEC_FED entity and + the MEC_FED entity having a systemInfoList containing + systemInfo1 indicating value SYSTEM_ID_1, + systemInfo2 indicating value SYSTEM_ID_2, + systemInfo1 indicating value SYSTEM_ID_3 + ; + } + + // MEC 040 Clause 6.2.2 Type: SystemInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "fed_enablement/v10/fed_resources/system_info/{SYSTEM_ID_2}" // Inconsistant URI + ; + from the MEC_FED entity + } + then { + // MEC 040 Clause 7.4.3.1 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request" + ; + to the MEC_FED entity + } + } + } // End of TP_MEC_MEC040_SRV_MEF_003_BR + + + Test Purpose { + TP Id "TP_MEC_MEC040_SRV_MEF_004_OK_01" + + Test objective + "Check that the IUT updates the systemInfo when requested by a MEC Orchestrator" + + Reference + "ETSI GS MEC 040 V3.1.1, clause 7.4.3.3, clause 5.2.2.1.2" + + Config Id Config_MEC_7 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity is_registered to the MEC_FED entity and + the MEC_FED entity having a systemInfoList containing + systemInfo1 indicating value SYSTEM_ID_1, + systemInfo2 indicating value SYSTEM_ID_2, + systemInfo1 indicating value SYSTEM_ID_3 + ; + } + + // MEC 040 Clause 6.2.2 Type: SystemInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vPATCH containing + uri indicating value "fed_enablement/v1/fed_resources/system_info/{SYSTEM_ID_1}" + body containing + SystemInfoUpdate containing + systemName indicating value omit, + endpoint indicating value SYSTEM_NEW_ENDPOINT_1 + ; + ; + ; + from the MEC_FED entity + } + then { + // MEC 040 Clause 7.4.3.3 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK", + body containing + systemInfo containing + systemId indicating value SYSTEM_ID_1, + systemName indicating value SYSTEM_NAME_1, + systemProvider indicating value SYSTEM_NEW_ENDPOINT_1 + ; + ; + ; + to the MEC_FED entity + } + } + } // End of TP_MEC_MEC040_SRV_MEF_004_OK_01 + + + Test Purpose { + TP Id "TP_MEC_MEC040_SRV_MEF_004_OK_02" + + Test objective + "Check that the IUT updates the systemInfo when requested by a MEC Orchestrator" + + Reference + "ETSI GS MEC 040 V3.1.1, clause 7.4.3.3, clause 5.2.2.1.2" + + Config Id Config_MEC_7 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity is_registered to the MEC_FED entity and + the MEC_FED entity having a systemInfoList containing + systemInfo1 indicating value SYSTEM_ID_1, + systemInfo2 indicating value SYSTEM_ID_2, + systemInfo1 indicating value SYSTEM_ID_3 + ; + } + + // MEC 040 Clause 6.2.2 Type: SystemInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vPATCH containing + uri indicating value "fed_enablement/v1/fed_resources/system_info/{SYSTEM_ID_1}" + body containing + SystemInfoUpdate containing + systemName indicating value SYSTEM_NEW_NAME_1, + endpoint indicating value omit + ; + ; + ; + from the MEC_FED entity + } + then { + // MEC 040 Clause 7.4.3.3 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK", + body containing + systemInfo containing + systemId indicating value SYSTEM_ID_1, + systemName indicating value SYSTEM_NEW_NAME_1, + systemProvider indicating value SYSTEM_ENDPOINT_1 + ; + ; + ; + to the MEC_FED entity + } + } + } // End of TP_MEC_MEC040_SRV_MEF_004_OK_02 + + + Test Purpose { + TP Id "TP_MEC_MEC040_SRV_MEF_004_OK_03" + + Test objective + "Check that the IUT updates the systemInfo when requested by a MEC Orchestrator" + + Reference "ETSI GS MEC 040 V3.1.1, clause 7.4.3.3, clause 5.2.2.1.2", + "https://forge.etsi.org/rep/mec/gs040-fed-enablement-api" + + Config Id Config_MEC_7 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity is_registered to the MEC_FED entity and + the MEC_FED entity having a systemInfoList containing + systemInfo1 indicating value SYSTEM_ID_1, + systemInfo2 indicating value SYSTEM_ID_2, + systemInfo1 indicating value SYSTEM_ID_3 + ; + } + + // MEC 040 Clause 6.2.2 Type: SystemInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vPATCH containing + uri indicating value "fed_enablement/v1/fed_resources/system_info/{SYSTEM_ID_1}" + body containing + SystemInfoUpdate containing + systemName indicating value SYSTEM_NEW_NAME_1, + endpoint indicating value SYSTEM_NEW_ENDPOINT_1 + ; + ; + ; + from the MEC_FED entity + } + then { + // MEC 040 Clause 7.4.3.3 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK", + body containing + systemInfo containing + systemId indicating value SYSTEM_ID_1, + systemName indicating value SYSTEM_NEW_NAME_1, + systemProvider indicating value SYSTEM_NEW_ENDPOINT_1 + ; + ; + ; + to the MEC_FED entity + } + } + } // End of TP_MEC_MEC040_SRV_MEF_004_OK_03 + + + Test Purpose { + TP Id "TP_MEC_MEC040_SRV_MEF_004_NF" + + Test objective + "Check that the IUT responds with an error when requested to update an unknown systemInfo" + + Reference "ETSI GS MEC 040 V3.1.1, clause 7.4.3.3, clause 5.2.2.1.2", + "https://forge.etsi.org/rep/mec/gs040-fed-enablement-api" + + Config Id Config_MEC_7 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity is_registered to the MEC_FED entity and + the MEC_FED entity having a systemInfoList containing + systemInfo1 indicating value SYSTEM_ID_1 + ; + } + + // MEC 040 Clause 6.2.2 Type: SystemInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vPATCH containing + uri indicating value "fed_enablement/v1/fed_resources/system_info/{SYSTEM_ID_2}" + body containing + SystemInfoUpdate containing + systemName indicating value omit, + endpoint indicating value SYSTEM_NEW_ENDPOINT_1 + ; + ; + ; + from the MEC_FED entity + } + then { + // MEC 040 Clause 7.4.3.3 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found" + ; + to the MEC_FED entity + } + } + } // End of TP_MEC_MEC040_SRV_MEF_004_NF + + + Test Purpose { + TP Id "TP_MEC_MEC040_SRV_MEF_004_BR" + + Test objective + "Check that the IUT responds with an error when requested to update with no data provided" + + Reference + "ETSI GS MEC 040 V3.1.1, clause 7.4.3.3, clause 5.2.2.1.2" + + Config Id Config_MEC_7 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity is_registered to the MEC_FED entity and + the MEC_FED entity having a systemInfoList containing + systemInfo1 indicating value SYSTEM_ID_1 + ; + } + + // MEC 040 Clause 6.2.2 Type: SystemInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vPATCH containing + uri indicating value "fed_enablement/v10/fed_resources/system_info/{SYSTEM_ID_1}" + body containing + SystemInfoUpdate containing // At least one attribute shall exist + systemName indicating value omit, + endpoint indicating value omit + ; + ; + ; + from the MEC_FED entity + } + then { + // MEC 040 Clause 7.4.3.3 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "400 Bad Request" + ; + to the MEC_FED entity + } + } + } // End of TP_MEC_MEC040_SRV_MEF_004_BR_02 + + + Test Purpose { + TP Id "TP_MEC_MEC040_SRV_MEF_005_OK" + + Test objective + "Check that the IUT deletes the systemInfo when requested by a MEC Orchestrator" + + Reference + "ETSI GS MEC 040 V3.1.1, clause 7.4.3.5, clause 5.2.2.1.3" + + Config Id Config_MEC_7 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity is_registered to the MEC_FED entity and + the MEC_FED entity having a systemInfoList containing + systemInfo1 indicating value SYSTEM_ID_1 + ; + } + + // MEC 040 Clause 6.2.2 Type: SystemInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "fed_enablement/v1/fed_resources/system_info/{SYSTEM_ID_1}" + body containing + SystemInfoUpdate containing + systemName indicating value SYSTEM_NAME_1, + endpoint indicating value NEW_ENDPOINT_1 + ; + ; + ; + from the MEC_FED entity + } + then { + // MEC 040 Clause 7.4.3.5 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "204 No Content" + ; + to the MEC_FED entity + } + } + } // End of TP_MEC_MEC040_SRV_MEF_005_OK + + + Test Purpose { + TP Id "TP_MEC_MEC040_SRV_MEF_005_NF" + + Test objective + "Check that the IUT responds with an error when requested to delete an unknown systemInfo" + + Reference "ETSI GS MEC 040 V3.1.1, clause 7.4.3.5, clause 5.2.2.1.3", + "https://forge.etsi.org/rep/mec/gs040-fed-enablement-api" + + Config Id Config_MEC_7 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity is_registered to the MEC_FED entity and + the MEC_FED entity having a systemInfoList containing + systemInfo1 indicating value SYSTEM_ID_1 + ; + } + + // MEC 040 Clause 6.2.2 Type: SystemInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vDELETE containing + uri indicating value "fed_enablement/v1/fed_resources/system_info/{SYSTEM_ID_UNKNOWN}" + ; + from the MEC_FED entity + } + then { + // MEC 040 Clause 7.4.3.5 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "404 Not Found" + ; + to the MEC_FED entity + } + } + } // End of TP_MEC_MEC040_SRV_MEF_005_NF + + +/*** Not applicable yet */ + /*Test Purpose { + TP Id "TP_MEC_MEC040_SRV_MEF_006_OK" + + Test objective + "Check that the IUT accepts a MEC application instance query and forward the response" + + Reference + "ETSI GS MEC 040 V3.1.1, clause 5.2.2.3" + + Config Id Config_MEC_7 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity is_registered to the MEC_FED entity and + the MEC_FED entity having a systemInfoList containing + systemInfo1 indicating value SYSTEM_ID_1 + ; and + MEC_FED1 having_mec_app_instance_running + } + + // MEC 040 Clause 6.2.2 Type: SystemInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "xxx" + ; + from the MEC_FED entity + } + then { + // MEC 040 Clause 7.4.3.5 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + ; + to the MEC_FED entity + } + } + } // End of TP_MEC_MEC040_SRV_MEF_006_OK + + + Test Purpose { + TP Id "TP_MEC_MEC040_SRV_MEF_007_OK" + + Test objective + "Check that the IUT accepts a Service Availability query and forward the response" + + Reference + "ETSI GS MEC 040 V3.1.1, clause 5.2.2.4" + + Config Id Config_MEC_7 + + PICS Selection PIC_MEC_PLAT and PIC_SERVICES + + Initial conditions with { + the IUT entity being_in idle_state and + the IUT entity is_registered to the MEC_FED entity and + the MEC_FED entity having a systemInfoList containing + systemInfo1 indicating value SYSTEM_ID_1 + ; and + MEC_FED1 having_mec_app_instance_running + } + + // MEC 040 Clause 6.2.2 Type: SystemInfo + Expected behaviour + ensure that { + when { + the IUT entity receives a vGET containing + uri indicating value "xxx" + ; + from the MEC_FED entity + } + then { + // MEC 040 Clause 7.4.3.5 + the IUT entity sends a HTTP_RESPONSE containing + status_code set to "200 OK" + ; + to the MEC_FED entity + } + } + } // End of TP_MEC_MEC040_SRV_MEF_007_OK +*/ + + +} // End of Package MEC_MEC040_SRV diff --git a/Test Purposes/mec-common.tplan2 b/Test Purposes/mec-common.tplan2 index 393d1fea7fa6180e328917f7936d3e27d4900646..c29bfea940b600d22a9eee61c1cdf69d33d9e427 100644 --- a/Test Purposes/mec-common.tplan2 +++ b/Test Purposes/mec-common.tplan2 @@ -1,217 +1,251 @@ -Package MEC_Common { - - Domain { - pics: - - // Some PICS in this list are referenced to - // PICS item in MEC 032 part 1, Clause A.4 - - - PIC_MEC_PLAT - - PIC_MEC_SYSTEM - - PIC_SERVICES - - PIC_NOTIFICATIONS - - PIC_APP_PACKAGE_MANAGEMENT - - PIC_APP_PACKAGE_NOTIFICATIONS - - PIC_RNIS_QUERY - - PIC_RNIS_ALL_SUBSCRIPTIONS - - PIC_RNIS_SPECIFIC_SUBSCRIPTION - - PIC_RNIS_NOTIFICATIONS - - PIC_APP_LCM_MANAGEMENT - - PIC_APP_LCM_NOTIFICATIONS - - PIC_AMS - - PIC_AMS_NOTIFICATIONS - - PIC_GRANTS_MANAGEMENT - ; - entities: - - MEC_OSS - - MEO - - MEPM - - MEC_APP - - IUT - - Dev_App - - MEC_PROVIDER - - MEC_CONSUMER - // Specialization of base components - - MEC_APP_Registrant - - MEC_APP_Subscriber - - MEC_SUB - - RNIS_CLIENT - - RNIS_SERVER - - MEC_SUB - - RNIS_CLIENT - - RNIS_SERVER - - AMS_CLIENT - - AMS_SERVER - ; - events: - - services_running // services available in the IUT - - started // component is up and running - - authorised // component is authenticated and authorised to use services - - consume_services // component is can use services - - receives // component receives an HTTP request - - sends // component sends an HTTP response - - being_in - - having - // Idle state: The MEC platform has services running and MEC Application - // is authorized to consume services - - idle_state - - subscribed_to - - App_Package_subscription - - App_Package - - generates - - idle_state - - app_package_operational_change_event - - perform_RNIS_query_to - - having_RNIS_subscription - - having_RNIS_subscription_privileges - - privileges - - RNIS_subscription - - perform_RNIS_subscription_query_to - - cell_change_event - - rab_establish_event - - rab_modification_event - - rab_release_event - - measurement_repost_event - - timing_advance_event - - carrier_aggregation_reconfiguration_event - - S1_bearer_event - - nr_measurement_repost_event - - expiry_notification_event - - application_lcm_change_event - - mobility_procedure_event - - adjacent_app_info_event - - app_instance - - grant - ; - } - - Data { - type STRING; - type JSON; - type string with s of type STRING; - - type HttpHeaders with - // content_type is optional, since not present in GET and DELETE - content_type of type STRING, - authorization of type STRING, - accept of type STRING - ; - - type HTTP_REQUEST with - uri of type STRING - ; - - type HttpMsg with - uri of type STRING, - headers of type HttpHeaders, - status_code of type STRING, - // body is optional, since not present in GET and DELETE - body of type JSON - ; - - STRING "application/json;charset=utf-8"; - string CONTENT_JSON containing s set to "application/json;charset=utf-8"; - STRING VALID_TOKEN; - STRING NOT_VALID_TOKEN; - STRING "application/json"; - STRING "application/octet-stream"; - - HttpHeaders vHeadersInvalidToken containing - authorization set to NOT_VALID_TOKEN - ; - - HttpHeaders vHeadersGet containing - accept set to "application/json", - authorization set to VALID_TOKEN - ; - - HttpHeaders vHeadersAcceptKO containing - accept set to "application/octet-stream", - authorization set to VALID_TOKEN - ; - - HttpHeaders vHeaders containing - accept set to CONTENT_JSON, - content_type set to CONTENT_JSON, - authorization set to VALID_TOKEN - ; - - HttpHeaders vHeadersResponse containing - content_type set to CONTENT_JSON - ; - - HttpMsg vGET containing - headers set to vHeadersGet - ; - - HttpMsg vPOST containing - headers set to vHeaders - ; - - HttpMsg vPUT containing - headers set to vHeaders - ; - - HttpMsg vDELETE containing - headers set to vHeadersGet - ; - - HttpMsg HTTP_RESPONSE containing - headers set to vHeadersResponse - ; - - - } - - Configuration { - - Interface Type apiPort accepts string; - - Component Type MecAppComponent with gate p of type apiPort; - Component Type MecPlatformComponent with gate p of type apiPort; - Component Type MecOss with gate p of type apiPort; - Component Type MecOrchestrator with gate p of type apiPort; - Component Type MecPlatformManagerComponent with gate p of type apiPort; - Component Type DevAppComponent with gate p of type apiPort; - Component Type MecSystemComponent with gate p of type apiPort; - Component Type MecGenericProvider with gate p of type apiPort; - Component Type MecGenericConsumer with gate p of type apiPort; - - Test Configuration Config_MEC_1 containing - Tester component MEC_App of type MecAppComponent - SUT component IUT of type MecPlatformComponent - connection between MEC_App.p and IUT.p - ; - - Test Configuration Config_MEC_2 containing - Tester component MEC_Oss of type MecOss - SUT component IUT of type MecOrchestrator - connection between MEC_Oss.p and IUT.p - ; - - Test Configuration Config_MEC_3 containing - Tester component MEC_Platform_Manager of type MecPlatformManagerComponent - SUT component IUT of type MecOrchestrator - connection between MEC_Platform_Manager.p and IUT.p - ; - - Test Configuration Config_MEC_4 containing - Tester component Dev_App of type DevAppComponent - SUT component IUT of type MecSystemComponent - connection between Dev_App.p and IUT.p - ; - - Test Configuration Config_MEC_5 containing - Tester component MecOrchestrator of type MecOrchestrator - SUT component IUT of type MecPlatformManagerComponent - connection between MecOrchestrator.p and IUT.p - ; - - Test Configuration Config_MEC_6 containing - Tester component Mec_Consumer of type MecGenericConsumer - SUT component IUT of type MecGenericProvider - connection between Mec_Consumer.p and IUT.p - ; - - } -} +/* +Copyright (c) ETSI 2018-2023. +Released under BSD 3-clause license. For more information visit https://forge.etsi.org/legal-matters +*/ + +Package MEC_Common { + + Domain { + pics: + // Some PICS in this list are referenced to + // PICS item in MEC 032 part 1, Clause A.4 + - PIC_MEC_PLAT + - PIC_MEC_SYSTEM + - PIC_SERVICES + - PIC_NOTIFICATIONS + - PIC_APP_PACKAGE_MANAGEMENT + - PIC_APP_PACKAGE_NOTIFICATIONS + - PIC_RNIS_QUERY + - PIC_RNIS_ALL_SUBSCRIPTIONS + - PIC_RNIS_SPECIFIC_SUBSCRIPTION + - PIC_RNIS_NOTIFICATIONS + - PIC_APP_LCM_MANAGEMENT + - PIC_APP_LCM_NOTIFICATIONS + - PIC_AMS + - PIC_AMS_NOTIFICATIONS + - PIC_GRANTS_MANAGEMENT + ; + entities: + - MEC_OSS + - MEO + - MEPM + - MEC_APP + - IUT + - Dev_App + - MEC_PROVIDER + - MEC_CONSUMER + // Specialization of base components + - MEC_APP_Registrant + - MEC_APP_Subscriber + - MEC_SUB + - RNIS_CLIENT + - RNIS_SERVER + - MEC_SUB + - RNIS_CLIENT + - RNIS_SERVER + - AMS_CLIENT + - AMS_SERVER + - MEC_FED + ; + events: + - services_running // services available in the IUT + - started // component is up and running + - authorised // component is authenticated and authorised to use services + - consume_services // component can use services + - receives // component receives an HTTP request + - sends // component sends an HTTP response + - isTriggeredToSend + - being_in + - having + - is_registered + - are_aware_of_eachother + - having_mec_app_instance_running + // Idle state: The MEC platform has services running and MEC Application + // is authorized to consume services + - idle_state + - subscribed_to + - App_Package_subscription + - App_Package + - generates + - idle_state + - app_package_operational_change_event + - perform_RNIS_query_to + - having_RNIS_subscription + - having_RNIS_subscription_privileges + - privileges + - RNIS_subscription + - perform_RNIS_subscription_query_to + - cell_change_event + - rab_establish_event + - rab_modification_event + - rab_release_event + - measurement_repost_event + - timing_advance_event + - carrier_aggregation_reconfiguration_event + - S1_bearer_event + - nr_measurement_repost_event + - expiry_notification_event + - application_lcm_change_event + - mobility_procedure_event + - adjacent_app_info_event + - app_instance + - grant + - havingV2xMsgDistributionServerMqtt + -doNotSendNotificationAfterTimerExpiry + ; + } + + Data { + type STRING; + type JSON; + type string with s of type STRING; + type IMSI; + type TransportInfo; + + type HttpHeaders with + // content_type is optional, since not present in GET and DELETE + content_type of type STRING, + authorization of type STRING, + accept of type STRING + ; + + type HTTP_REQUEST with + uri of type STRING + ; + + type HttpMsg with + uri of type STRING, + headers of type HttpHeaders, + status_code of type STRING, + // body is optional, since not present in GET and DELETE + body of type JSON + ; + + STRING "application/json;charset=utf-8"; + string CONTENT_JSON containing s set to "application/json;charset=utf-8"; + STRING VALID_TOKEN; + STRING NOT_VALID_TOKEN; + STRING "application/json"; + STRING "application/octet-stream"; + + HttpHeaders vHeadersInvalidToken containing + authorization set to NOT_VALID_TOKEN + ; + + HttpHeaders vHeadersGet containing + accept set to "application/json", + authorization set to VALID_TOKEN + ; + + HttpHeaders vHeadersAcceptKO containing + accept set to "application/octet-stream", + authorization set to VALID_TOKEN + ; + + HttpHeaders vHeaders containing + accept set to CONTENT_JSON, + content_type set to CONTENT_JSON, + authorization set to VALID_TOKEN + ; + + HttpHeaders vHeadersResponse containing + content_type set to CONTENT_JSON + ; + + HttpMsg vGET containing + headers set to vHeadersGet + ; + + HttpMsg vPOST containing + headers set to vHeaders + ; + + HttpMsg vPUT containing + headers set to vHeaders + ; + + HttpMsg vDELETE containing + headers set to vHeadersGet + ; + + HttpMsg HTTP_RESPONSE containing + headers set to vHeadersResponse + ; + + // PIXITs for MEC03 + STRING HUMAN_READABLE_IDENTIFIER; + IMSI IMSI_DEVICE; + STRING IOT_PLATFORM_ID; + TransportInfo USER_TRANSPORT_INFO; + // PIXITs for MEC040 + STRING SYSTEM_ID_1; + STRING SYSTEM_NAME_1; + STRING SYSTEM_PROVIDER_1; + STRING SYSTEM_ID_2; + STRING SYSTEM_NAME_2; + STRING SYSTEM_PROVIDER_2; + STRING SYSTEM_ID_3; + STRING SYSTEM_NAME_3; + STRING SYSTEM_PROVIDER_3; + + } + + Configuration { + + Interface Type apiPort accepts string; + + Component Type MecAppComponent with gate p of type apiPort; + Component Type MecPlatformComponent with gate p of type apiPort; + Component Type MecOss with gate p of type apiPort; + Component Type MecOrchestrator with gate p of type apiPort; + Component Type MecPlatformManagerComponent with gate p of type apiPort; + Component Type DevAppComponent with gate p of type apiPort; + Component Type MecSystemComponent with gate p of type apiPort; + Component Type MecGenericProvider with gate p of type apiPort; + Component Type MecGenericConsumer with gate p of type apiPort; + Component Type MecFederator with gate p of type apiPort; + + Test Configuration Config_MEC_1 containing + Tester component MEC_App of type MecAppComponent + SUT component IUT of type MecPlatformComponent + connection between MEC_App.p and IUT.p + ; + + Test Configuration Config_MEC_2 containing + Tester component MEC_Oss of type MecOss + SUT component IUT of type MecOrchestrator + connection between MEC_Oss.p and IUT.p + ; + + Test Configuration Config_MEC_3 containing + Tester component MEC_Platform_Manager of type MecPlatformManagerComponent + SUT component IUT of type MecOrchestrator + connection between MEC_Platform_Manager.p and IUT.p + ; + + Test Configuration Config_MEC_4 containing + Tester component Dev_App of type DevAppComponent + SUT component IUT of type MecSystemComponent + connection between Dev_App.p and IUT.p + ; + + Test Configuration Config_MEC_5 containing + Tester component MecOrchestrator of type MecOrchestrator + SUT component IUT of type MecPlatformManagerComponent + connection between MecOrchestrator.p and IUT.p + ; + + Test Configuration Config_MEC_6 containing + Tester component Mec_Consumer of type MecGenericConsumer + SUT component IUT of type MecGenericProvider + connection between Mec_Consumer.p and IUT.p + ; + + Test Configuration Config_MEC_7 containing // Mfm interface + Tester component Mec_Orchestrator of type MecOrchestrator + SUT component IUT of type MecFederator + connection between Mec_Orchestrator.p and IUT.p + ; + + } +}