msc: Add Emergency call to f_mo_call() and use it from TC_emerg_call_imsi
This fixes TC_emerg_call_imsi with current osmo-msc master. The old
implementation was broken as it didn't deal with MGCP yet.
Change-Id: Ic35797931387b078205269365421ad730db7af15
diff --git a/msc/MSC_Tests.ttcn b/msc/MSC_Tests.ttcn
index 99580f6..5fa29cd 100644
--- a/msc/MSC_Tests.ttcn
+++ b/msc/MSC_Tests.ttcn
@@ -831,44 +831,10 @@
/* helper function for an emergency call. caller passes in mobile identity to use */
private function f_emerg_call(MobileIdentityLV mi) runs on BSC_ConnHdlr {
+ var CallParameters cpars := valueof(t_CallParams('112'H, 0));
+ cpars.emergency := true;
- var PDU_ML3_MS_NW l3_info := valueof(ts_CM_SERV_REQ(CM_TYPE_EMERG_CALL, mi));
- f_bssap_compl_l3(l3_info);
- BSSAP.receive(tr_PDU_DTAP_MT(tr_CM_SERV_ACC));
-
- var hexstring called := '112'H;
- var integer tid := 0;
- var MNCC_PDU mncc;
- f_create_mncc_expect(hex2str(called));
-
- BSSAP.send(ts_PDU_DTAP_MO(ts_ML3_MO_CC_EMERG_SETUP(tid)));
- MNCC.receive(tr_MNCC_SETUP_ind(?, tr_MNCC_number(hex2str(called)))) -> value mncc;
- /* FIXME: extract call_id */
-
- /* Call Proceeding */
- MNCC.send(ts_MNCC_CALL_PROC_req(mncc.u.signal.callref, ts_MNCC_bcap_voice));
- BSSAP.receive(tr_PDU_DTAP_MT(tr_ML3_MT_CC_CALL_PROC(tid)));
-
- /* Alerting */
- MNCC.send(ts_MNCC_ALERT_req(mncc.u.signal.callref));
- BSSAP.receive(tr_PDU_DTAP_MT(tr_ML3_MT_CC_ALERTING(tid)));
-
- /* Answer. This causes TCH assignment in case of "late assignment" */
- //MNCC.send(ts_MNCC_SETUP_COMPL_req(mncc.u.signal.callref));
- MNCC.send(ts_MNCC_SETUP_rsp(mncc.u.signal.callref));
-
- f_sleep(3.0);
-
- /* Hangup by "B" side */
- MNCC.send(ts_MNCC_DISC_req(mncc.u.signal.callref, valueof(ts_MNCC_cause(23))));
- BSSAP.receive(tr_PDU_DTAP_MT(tr_ML3_MT_CC_DISC(tid)));
-
- /* Release of call */
- MNCC.send(ts_MNCC_REL_req(mncc.u.signal.callref, valueof(ts_MNCC_cause(42))));
- BSSAP.receive(tr_PDU_DTAP_MT(tr_ML3_MT_CC_RELEASE(tid)));
-
- /* clearing of radio channel */
- f_expect_clear();
+ f_mo_call(cpars);
}
/* establish an emergency call by IMEI, no SIM inserted (and hence no IMSI) */