dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/42958?usp=email )
Change subject: eIM, add new PSMOs introduced with SGP.32 V.1.2 ......................................................................
eIM, add new PSMOs introduced with SGP.32 V.1.2
SGP.32 V.1.2 adds new PSMOs, which are setFallbackAttribute, unsetFallbackAttribute and setDefaultDpAddress. Let's add testcases for those.
Related: SYS#8100 Change-Id: Ic2416dc06d917228b71c61da9acebed26d68b2d9 --- M eim/REST_Types_JSON.ttcn M eim/eIM_Tests.ttcn 2 files changed, 81 insertions(+), 1 deletion(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/58/42958/1
diff --git a/eim/REST_Types_JSON.ttcn b/eim/REST_Types_JSON.ttcn index 32dc4e9..b82bea0 100644 --- a/eim/REST_Types_JSON.ttcn +++ b/eim/REST_Types_JSON.ttcn @@ -43,7 +43,15 @@ boolean immediateEnableFlag, objid defaultSmdpOid optional, charstring defaultSmdpAddress optional - } configureImmediateEnable + } configureImmediateEnable, + record { + octetstring iccid + } setFallbackAttribute, + record { + } unsetFallbackAttribute, + record { + charstring defaultDpAddress + } setDefaultDpAddress };
type union JSON_REST_Eco { @@ -131,6 +139,9 @@ } listProfileInfoResult, record of JSON_REST_ProfilePolicyAuthorisationRule getRATResult, charstring configureImmediateEnableResult, + charstring setFallbackAttributeResult, + charstring unsetFallbackAttributeResult, + charstring setDefaultDpAddressResult, record { charstring addEimResultCode, integer associationToken optional @@ -266,6 +277,21 @@ order := { psmo := { { configureImmediateEnable := { immediateEnableFlag := true, defaultSmdpOid := objid {1 2 3}, defaultSmdpAddress := "smdp.example.com" } } } } }
+template (value) JSON_REST_Resource ts_JSON_REST_psmo_order_setFallbackAttribute(octetstring eidValue, octetstring iccid) := { + eidValue := oct2str(eidValue), + order := { psmo := { { setFallbackAttribute := { iccid := iccid } } } } +} + +template (value) JSON_REST_Resource ts_JSON_REST_psmo_order_unsetFallbackAttribute(octetstring eidValue) := { + eidValue := oct2str(eidValue), + order := { psmo := { { unsetFallbackAttribute := {} } } } +} + +template (value) JSON_REST_Resource ts_JSON_REST_psmo_order_setDefaultDpAddress(octetstring eidValue, charstring defaultDpAddress) := { + eidValue := oct2str(eidValue), + order := { psmo := { { setDefaultDpAddress := { defaultDpAddress := defaultDpAddress } } } } +} + template (value) JSON_REST_Resource ts_JSON_REST_eco_order_addEim(octetstring eidValue) := { eidValue := oct2str(eidValue), order := { eco := { { addEim := { eimConfigurationData := enc_EimConfigurationData(valueof(ts_eimConfigurationData("127.0.0.1"))) } } } } diff --git a/eim/eIM_Tests.ttcn b/eim/eIM_Tests.ttcn index 8508d39..5ed9176 100644 --- a/eim/eIM_Tests.ttcn +++ b/eim/eIM_Tests.ttcn @@ -687,6 +687,57 @@ setverdict(pass); }
+/* (see also above) Test setFallbackAttribute PSMO */ +private function f_TC_proc_euicc_pkg_dwnld_exec_setFallbackAttribute_psmo(charstring id) runs on eIM_ConnHdlr { + var JSON_REST_Resource psmo_order := valueof(ts_JSON_REST_psmo_order_setFallbackAttribute(eID, iccid)); + var template EuiccPackage euiccPackage := tr_euiccPackage_setFallbackAttribute; + f_TC_proc_euicc_pkg_dwnld_exec_psmo_or_eco("psmo", id, psmo_order, euiccPackage, + ts_euiccPackageResultSigned_setFallbackAttribute); +} +testcase TC_proc_euicc_pkg_dwnld_exec_setFallbackAttribute_psmo() runs on MTC_CT { + var charstring id := testcasename(); + var eIM_ConnHdlrPars pars := f_init_pars(); + var eIM_ConnHdlr vc_conn; + f_init(id); + vc_conn := f_start_handler(refers(f_TC_proc_euicc_pkg_dwnld_exec_setFallbackAttribute_psmo), pars); + vc_conn.done; + setverdict(pass); +} + +/* (see also above) Test unsetFallbackAttribute PSMO */ +private function f_TC_proc_euicc_pkg_dwnld_exec_unsetFallbackAttribute_psmo(charstring id) runs on eIM_ConnHdlr { + var JSON_REST_Resource psmo_order := valueof(ts_JSON_REST_psmo_order_unsetFallbackAttribute(eID)); + var template EuiccPackage euiccPackage := tr_euiccPackage_unsetFallbackAttribute; + f_TC_proc_euicc_pkg_dwnld_exec_psmo_or_eco("psmo", id, psmo_order, euiccPackage, + ts_euiccPackageResultSigned_unsetFallbackAttribute); +} +testcase TC_proc_euicc_pkg_dwnld_exec_unsetFallbackAttribute_psmo() runs on MTC_CT { + var charstring id := testcasename(); + var eIM_ConnHdlrPars pars := f_init_pars(); + var eIM_ConnHdlr vc_conn; + f_init(id); + vc_conn := f_start_handler(refers(f_TC_proc_euicc_pkg_dwnld_exec_unsetFallbackAttribute_psmo), pars); + vc_conn.done; + setverdict(pass); +} + +/* (see also above) Test setDefaultDpAddress PSMO */ +private function f_TC_proc_euicc_pkg_dwnld_exec_setDefaultDpAddress_psmo(charstring id) runs on eIM_ConnHdlr { + var JSON_REST_Resource psmo_order := valueof(ts_JSON_REST_psmo_order_setDefaultDpAddress(eID, "smdp.example.com")); + var template EuiccPackage euiccPackage := tr_euiccPackage_setDefaultDpAddress; + f_TC_proc_euicc_pkg_dwnld_exec_psmo_or_eco("psmo", id, psmo_order, euiccPackage, + ts_euiccPackageResultSigned_setDefaultDpAddress); +} +testcase TC_proc_euicc_pkg_dwnld_exec_setDefaultDpAddress_psmo() runs on MTC_CT { + var charstring id := testcasename(); + var eIM_ConnHdlrPars pars := f_init_pars(); + var eIM_ConnHdlr vc_conn; + f_init(id); + vc_conn := f_start_handler(refers(f_TC_proc_euicc_pkg_dwnld_exec_setDefaultDpAddress_psmo), pars); + vc_conn.done; + setverdict(pass); +} + /* (see also above) Test addEim eCO */ private function f_TC_proc_euicc_pkg_dwnld_exec_addEim_eco(charstring id) runs on eIM_ConnHdlr { var JSON_REST_Resource eco_order := valueof(ts_JSON_REST_eco_order_addEim(eID)); @@ -850,6 +901,9 @@ execute ( TC_proc_euicc_pkg_dwnld_exec_listProfileInfo_psmo() ); execute ( TC_proc_euicc_pkg_dwnld_exec_getRAT_psmo() ); execute ( TC_proc_euicc_pkg_dwnld_exec_configureImmediateEnable_psmo() ); + execute ( TC_proc_euicc_pkg_dwnld_exec_setFallbackAttribute_psmo() ); + execute ( TC_proc_euicc_pkg_dwnld_exec_unsetFallbackAttribute_psmo() ); + execute ( TC_proc_euicc_pkg_dwnld_exec_setDefaultDpAddress_psmo() ); execute ( TC_proc_euicc_pkg_dwnld_exec_addEim_eco() ); execute ( TC_proc_euicc_pkg_dwnld_exec_deleteEim_eco() ); execute ( TC_proc_euicc_pkg_dwnld_exec_updateEim_eco() );