This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.
pespin gerrit-no-reply at lists.osmocom.orgpespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/16507 )
Change subject: pcu: Introduce test TC_imm_ass_dl_block_retrans
......................................................................
pcu: Introduce test TC_imm_ass_dl_block_retrans
Change-Id: Icc60cebb8583c9dc97b658def69f17e6efced384
---
M pcu/PCU_Tests_RAW.ttcn
1 file changed, 57 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/07/16507/1
diff --git a/pcu/PCU_Tests_RAW.ttcn b/pcu/PCU_Tests_RAW.ttcn
index 90c1b62..452266b 100644
--- a/pcu/PCU_Tests_RAW.ttcn
+++ b/pcu/PCU_Tests_RAW.ttcn
@@ -1470,6 +1470,62 @@
f_tx_rlcmac_ul_block(ts_RLCMAC_DL_ACK_NACK(dl_block.data.mac_hdr.hdr_ext.tfi, ack_nack_desc), 0, sched_fn);
}
+/* Verify that if PCU doesn't get an ACK for first DL block after IMM ASS, it
+ * will retry by retransmitting both the IMM ASS + DL block after poll (ack)
+ * timeout occurs (specified by sent RRBP on DL block). */
+testcase TC_imm_ass_dl_block_retrans() runs on RAW_PCU_Test_CT {
+ var GsmRrMessage rr_imm_ass;
+ var PacketDlAssign dl_tbf_ass;
+ var RlcmacDlBlock dl_block;
+ var octetstring data := f_rnd_octstring(10);
+ var boolean ok;
+ var uint32_t sched_fn;
+ var OCT4 tlli := '00000001'O;
+ var AckNackDescription ack_nack_desc;
+
+ f_acknackdesc_init(ack_nack_desc);
+
+ /* Initialize NS/BSSGP side */
+ f_init_bssgp();
+
+ /* Initialize the PCU interface abstraction */
+ f_init_raw(testcasename());
+
+ /* Establish BSSGP connection to the PCU */
+ f_bssgp_establish();
+ f_bssgp_client_llgmm_assign('FFFFFFFF'O, tlli);
+
+ /* SGSN sends some DL data, PCU will page on CCCH (PCH) */
+ BSSGP[0].send(ts_BSSGP_DL_UD(tlli, data));
+ f_pcuif_rx_pch_imm_tbf_ass(rr_imm_ass);
+ ok := f_imm_ass_verify_dl_tbf_ass(rr_imm_ass, dl_tbf_ass);
+ if (not ok) {
+ setverdict(fail, "Immediate Assignment not a Downlink TBF");
+ mtc.stop;
+ }
+
+ /* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
+ f_sleep(X2002);
+ f_rx_rlcmac_dl_block_exp_data(dl_block, sched_fn, data, 0);
+
+ /* Now we don't ack the dl block (emulate MS failed receiveing IMM ASS
+ * or GPRS DL, or DL ACK was lost for some reason). As a result, PCU
+ * should retrigger IMM ASS + GPRS DL procedure after poll timeout. */
+ f_pcuif_rx_pch_imm_tbf_ass(rr_imm_ass);
+ ok := f_imm_ass_verify_dl_tbf_ass(rr_imm_ass, dl_tbf_ass);
+ if (not ok) {
+ setverdict(fail, "Immediate Assignment not a Downlink TBF");
+ mtc.stop;
+ }
+ /* Wait timer X2002 and DL block is available after CCCH IMM ASS: */
+ f_sleep(X2002);
+ f_rx_rlcmac_dl_block_exp_data(dl_block, sched_fn, data, 0);
+
+ /* ACK the DL block */
+ f_acknackdesc_ack_block(ack_nack_desc, dl_block.data.mac_hdr.hdr_ext.bsn, '1'B);
+ f_tx_rlcmac_ul_block(ts_RLCMAC_DL_ACK_NACK(dl_block.data.mac_hdr.hdr_ext.tfi, ack_nack_desc), 0, sched_fn);
+}
+
control {
execute( TC_ns_reset() );
execute( TC_ns_reset_retrans() );
@@ -1489,6 +1545,7 @@
execute( TC_cs_max_ul() );
execute( TC_t3169() );
execute( TC_mo_ping_pong() );
+ execute( TC_imm_ass_dl_block_retrans() );
}
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/16507
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: Icc60cebb8583c9dc97b658def69f17e6efced384
Gerrit-Change-Number: 16507
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin at sysmocom.de>
Gerrit-MessageType: newchange
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20191205/0e7b9737/attachment.htm>