|
|
|
@ -51,10 +51,18 @@ import from Native_Functions all; |
|
|
|
|
import from SGSN_Components all; |
|
|
|
|
import from GPRS_Components all; |
|
|
|
|
|
|
|
|
|
import from StatsD_Types all; |
|
|
|
|
import from StatsD_CodecPort all; |
|
|
|
|
import from StatsD_CodecPort_CtrlFunct all; |
|
|
|
|
import from StatsD_Checker all; |
|
|
|
|
|
|
|
|
|
modulepar { |
|
|
|
|
charstring mp_pcu_sock_path := PCU_SOCK_DEFAULT; |
|
|
|
|
|
|
|
|
|
float X2002 := 0.2; /* Timer -2002, IMM ASSIGN confirm delay */ |
|
|
|
|
|
|
|
|
|
charstring mp_pcu_statsd_ip := "127.0.0.1"; |
|
|
|
|
integer mp_pcu_statsd_port := 8125; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -102,10 +110,13 @@ type record lqual_range { |
|
|
|
|
uint8_t high |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
type component RAW_PCU_Test_CT extends bssgp_CT, MS_BTS_IFACE_CT { |
|
|
|
|
type component RAW_PCU_Test_CT extends bssgp_CT, MS_BTS_IFACE_CT, StatsD_ConnHdlr { |
|
|
|
|
/* PCU interface abstraction component */ |
|
|
|
|
var RAW_PCUIF_CT vc_PCUIF; |
|
|
|
|
|
|
|
|
|
/* StatsD */ |
|
|
|
|
var StatsD_Checker_CT vc_STATSD; |
|
|
|
|
|
|
|
|
|
/* Connection to the PCUIF component */ |
|
|
|
|
port RAW_PCU_MSG_PT PCUIF; |
|
|
|
|
/* VTY connection to the PCU */ |
|
|
|
@ -215,6 +226,11 @@ runs on RAW_PCU_Test_CT { |
|
|
|
|
|
|
|
|
|
f_init_vty(id); |
|
|
|
|
|
|
|
|
|
f_init_statsd(id, vc_STATSD, mp_pcu_statsd_ip, mp_pcu_statsd_port); |
|
|
|
|
/* This is normally done in the ConnHdlr component, but here |
|
|
|
|
* the Test_CT doubles as ConnHdlr */ |
|
|
|
|
connect(self:STATSD_PROC, vc_STATSD:STATSD_PROC); |
|
|
|
|
|
|
|
|
|
vc_PCUIF.start(f_PCUIF_CT_handler(mp_pcu_sock_path)); |
|
|
|
|
vc_BTS.start(f_BTS_CT_handler(0, valueof(info_ind))); |
|
|
|
|
|
|
|
|
@ -1437,6 +1453,8 @@ testcase TC_dl_flow_more_blocks() runs on RAW_PCU_Test_CT { |
|
|
|
|
/* Initialize the PCU interface abstraction */ |
|
|
|
|
f_init_raw(testcasename()); |
|
|
|
|
|
|
|
|
|
f_statsd_reset(); |
|
|
|
|
|
|
|
|
|
/* Establish BSSGP connection to the PCU */ |
|
|
|
|
f_bssgp_establish(); |
|
|
|
|
f_bssgp_client_llgmm_assign('FFFFFFFF'O, ms.tlli); |
|
|
|
@ -1486,6 +1504,17 @@ testcase TC_dl_flow_more_blocks() runs on RAW_PCU_Test_CT { |
|
|
|
|
/* Make sure that the next block (after the Ack) is dummy */ |
|
|
|
|
f_rx_rlcmac_dl_block_exp_dummy(dl_block); |
|
|
|
|
|
|
|
|
|
var StatsDExpects expect := { |
|
|
|
|
{ name := "TTCN3.bts.0.rach.requests", mtype := "c", min := 0, max := 0}, |
|
|
|
|
{ name := "TTCN3.bts.0.immediate.assignment_DL", mtype := "c", min := 1, max := 1}, |
|
|
|
|
{ name := "TTCN3.bts.0.immediate.assignment_UL", mtype := "c", min := 0, max := 0}, |
|
|
|
|
{ name := "TTCN3.bts.0.tbf.dl.alloc", mtype := "c", min := 1, max := 1}, |
|
|
|
|
{ name := "TTCN3.bts.0.tbf.ul.alloc", mtype := "c", min := 0, max := 0}, |
|
|
|
|
{ name := "TTCN3.bts.0.rlc.dl_payload_bytes", mtype := "c", min := 112, max := 112}, |
|
|
|
|
{ name := "TTCN3.bts.0.rlc.ul_payload_bytes", mtype := "c", min := 0, max := 0} |
|
|
|
|
}; |
|
|
|
|
f_statsd_expect(expect); |
|
|
|
|
|
|
|
|
|
f_shutdown(__BFILE__, __LINE__, final := true); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -1849,6 +1878,8 @@ testcase TC_bssgp_dl_unitdata_with_valid_imsi() runs on RAW_PCU_Test_CT { |
|
|
|
|
/* Initialize the PCU interface abstraction */ |
|
|
|
|
f_init_raw(testcasename()); |
|
|
|
|
|
|
|
|
|
f_statsd_reset(); |
|
|
|
|
|
|
|
|
|
/* Establish BSSGP connection to the PCU */ |
|
|
|
|
f_bssgp_establish(); |
|
|
|
|
f_bssgp_client_llgmm_assign('FFFFFFFF'O, ms.tlli); |
|
|
|
@ -1878,6 +1909,16 @@ testcase TC_bssgp_dl_unitdata_with_valid_imsi() runs on RAW_PCU_Test_CT { |
|
|
|
|
f_ms_tx_ul_block(ms, ts_RLCMAC_DL_ACK_NACK(ms.dl_tbf.tfi, ms.dl_tbf.acknack_desc), |
|
|
|
|
f_dl_block_ack_fn(dl_block, dl_fn)); |
|
|
|
|
|
|
|
|
|
var StatsDExpects expect := { |
|
|
|
|
{ name := "TTCN3.bts.0.rach.requests", mtype := "c", min := 1, max := 1}, |
|
|
|
|
{ name := "TTCN3.bts.0.immediate.assignment_DL", mtype := "c", min := 1, max := 1}, |
|
|
|
|
{ name := "TTCN3.bts.0.tbf.dl.alloc", mtype := "c", min := 1, max := 1}, |
|
|
|
|
{ name := "TTCN3.bts.0.tbf.ul.alloc", mtype := "c", min := 1, max := 1}, |
|
|
|
|
{ name := "TTCN3.bts.0.rlc.dl_payload_bytes", mtype := "c", min := 28, max := 28}, |
|
|
|
|
{ name := "TTCN3.bts.0.rlc.ul_payload_bytes", mtype := "c", min := 16, max := 16} |
|
|
|
|
}; |
|
|
|
|
f_statsd_expect(expect); |
|
|
|
|
|
|
|
|
|
f_shutdown(__BFILE__, __LINE__, final := true); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|