pcu: Verify contents of data dl blocks originated from emulated SGSN

Change-Id: I4fe79572094038cbb26d5195c0544846ca2550b5
This commit is contained in:
Pau Espin 2019-12-04 19:24:16 +01:00 committed by laforge
parent 1a4d4e97b7
commit 6e3b68988a
1 changed files with 22 additions and 1 deletions

View File

@ -759,13 +759,34 @@ private function f_rx_rlcmac_dl_block_exp_data(out RlcmacDlBlock dl_block, octet
runs on RAW_PCU_Test_CT {
var template RlcmacDlBlock dl_template := tr_RLCMAC_DATA_RRBP;
dl_template.data.blocks := ?;
/* TODO: match data correctly: { valueof(t_RLCMAC_LLCBLOCK(data)) }; */
f_rx_rlcmac_dl_block(dl_block);
if (not match(dl_block, dl_template)) {
setverdict(fail, "Failed to match Packet data: ", dl_block, " vs ", dl_template);
mtc.stop;
}
if (lengthof(dl_block.data.blocks) < 1) {
setverdict(fail, "DL block has no LLC payload: ", dl_block);
mtc.stop;
}
if (ispresent(dl_block.data.blocks[0].hdr) and dl_block.data.blocks[0].hdr.length_ind != lengthof(data)) {
setverdict(fail, "DL block has LLC header with wrong expected size: ",
dl_block.data.blocks[0].hdr.length_ind, " vs ", lengthof(data));
mtc.stop;
}
if (dl_block.data.blocks[0].payload != data) {
setverdict(fail, "Failed to match content of LLC payload in DL Block: ", dl_block, " vs ", data);
mtc.stop;
}
/* Check next data blocks contain dummy frames */
if (lengthof(dl_block.data.blocks) > 1 and substr(dl_block.data.blocks[1].payload, 0, 3) != '43C001'O) {
setverdict(fail, "Second data payload is not a dummy frame: ", dl_block.data.blocks[1].payload);
mtc.stop;
}
}
testcase TC_pcuif_suspend() runs on RAW_PCU_Test_CT {