jolly has uploaded this change for review.

View Change

IPAd: Add test for function ES10b.ReturnFromFallback

Related: SYS#8101
Change-Id: I37446a9a59792c86d9c110420a8eb96a05ab64d5
---
M ipad/IPAd_Tests.ttcn
M library/euicc/SGP32Definitions_Templates.ttcn
M library/euicc/SGP32Definitions_Types.ttcn
3 files changed, 55 insertions(+), 0 deletions(-)

git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/70/43270/1
diff --git a/ipad/IPAd_Tests.ttcn b/ipad/IPAd_Tests.ttcn
index 7276528..1612c86 100644
--- a/ipad/IPAd_Tests.ttcn
+++ b/ipad/IPAd_Tests.ttcn
@@ -779,6 +779,32 @@
setverdict(pass);
}

+/* A testcase to tigger the 'return from fallback' via ES10b interface */
+private function f_TC_func_ret_from_fallback(charstring id) runs on IPAd_ConnHdlr {
+ f_exec_ipad("return-from-fallback");
+ f_es10x_init(eim_init := false);
+
+ var octetstring asn := f_vpcd_transceive(enc_ReturnFromFallbackResponse(valueof(ts_returnFromFallbackResponse(0))), ''O);
+ var ReturnFromFallbackRequest req := dec_ReturnFromFallbackRequest(asn);
+ if (not match(req, tr_returnFromFallbackRequest())) {
+ setverdict(fail, "Unexprected ES10b request: ", req);
+ }
+
+ f_es10x_close();
+ f_stop_ipad();
+
+ setverdict(pass);
+}
+testcase TC_func_ret_from_fallback() runs on MTC_CT {
+ var charstring id := testcasename();
+ var IPAd_ConnHdlrPars pars := f_init_pars();
+ var IPAd_ConnHdlr vc_conn;
+ f_init(id);
+ vc_conn := f_start_handler(refers(f_TC_func_ret_from_fallback), pars);
+ vc_conn.done;
+ setverdict(pass);
+}
+
control {
execute ( TC_proc_indirect_prfle_dwnld() );
execute ( TC_proc_euicc_pkg_dwnld_exec() );
@@ -786,6 +812,7 @@
execute ( TC_proc_euicc_data_req() );
execute ( TC_get_eim_pkg_req_rej() );
execute ( TC_func_exec_fallback_mech() );
+ execute ( TC_func_ret_from_fallback() );
}

}
diff --git a/library/euicc/SGP32Definitions_Templates.ttcn b/library/euicc/SGP32Definitions_Templates.ttcn
index a3e5914..05cb7d7 100644
--- a/library/euicc/SGP32Definitions_Templates.ttcn
+++ b/library/euicc/SGP32Definitions_Templates.ttcn
@@ -1649,6 +1649,24 @@
executeFallbackMechanismResult := errorCode
}

+/* GSMA SGP.32, section 5.9.21 */
+template (present) ReturnFromFallbackRequest
+tr_returnFromFallbackRequest(template (present) boolean refreshFlag := ?) := {
+ refreshFlag := refreshFlag
+}
+template (value) ReturnFromFallbackRequest
+ts_returnFromFallbackRequest(template (value) boolean refreshFlag := false) := {
+ refreshFlag := refreshFlag
+}
+template (present) ReturnFromFallbackResponse
+tr_returnFromFallbackResponse(template (present) integer errorCode := ?) := {
+ returnFromFallbackResult := errorCode
+}
+template (value) ReturnFromFallbackResponse
+ts_returnFromFallbackResponse(template (value) integer errorCode := 127) := {
+ returnFromFallbackResult := errorCode
+}
+
/* GSMA SGP.32, section 5.9.4 */
template (present) AddInitialEimResponse
tr_addInitialEimResponse := {
diff --git a/library/euicc/SGP32Definitions_Types.ttcn b/library/euicc/SGP32Definitions_Types.ttcn
index 4dc53f9..28e5b23 100644
--- a/library/euicc/SGP32Definitions_Types.ttcn
+++ b/library/euicc/SGP32Definitions_Types.ttcn
@@ -58,4 +58,14 @@
external function enc_ExecuteFallbackMechanismResponse(in ExecuteFallbackMechanismResponse msg) return octetstring
with { extension "prototype(convert) encode(BER:BER_ENCODE_DER)" };

+external function dec_ReturnFromFallbackRequest(in octetstring stream) return ReturnFromFallbackRequest
+with { extension "prototype(convert) decode(BER:BER_ACCEPT_ALL)" };
+external function enc_ReturnFromFallbacRequest(in ReturnFromFallbackRequest msg) return octetstring
+with { extension "prototype(convert) encode(BER:BER_ENCODE_DER)" };
+
+external function dec_ReturnFromFallbackResponse(in octetstring stream) return ReturnFromFallbackResponse
+with { extension "prototype(convert) decode(BER:BER_ACCEPT_ALL)" };
+external function enc_ReturnFromFallbackResponse(in ReturnFromFallbackResponse msg) return octetstring
+with { extension "prototype(convert) encode(BER:BER_ENCODE_DER)" };
+
}

To view, visit change 43270. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-MessageType: newchange
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: I37446a9a59792c86d9c110420a8eb96a05ab64d5
Gerrit-Change-Number: 43270
Gerrit-PatchSet: 1
Gerrit-Owner: jolly <andreas@eversberg.eu>