Introduce NS test cases
Related: SYS#5208
Change-Id: Ic619a374b88879d3116f8f28afb14401c3e3192b
diff --git a/library/Osmocom_Gb_Types.ttcn b/library/Osmocom_Gb_Types.ttcn
index 9e4d702..2bbc508 100644
--- a/library/Osmocom_Gb_Types.ttcn
+++ b/library/Osmocom_Gb_Types.ttcn
@@ -16,6 +16,14 @@
template (present) BssgpBvci t_BssgpBvciUser := complement (0);
+ type enumerated OsmoNsDialect {
+ NS2_DIALECT_UNDEF ('00'H),
+ NS2_DIALECT_STATIC_ALIVE ('01'H),
+ NS2_DIALECT_STATIC_RESETBLOCK ('02'H),
+ NS2_DIALECT_IPACCESS ('03'H),
+ NS2_DIALECT_SNS ('04'H)
+ };
+
/* TS 48.016 10.3.7 */
type enumerated NsPduType {
NS_PDUT_NS_UNITDATA ('00000000'B),
diff --git a/library/RAW_NS.ttcnpp b/library/RAW_NS.ttcnpp
index c8fc518..81836c7 100644
--- a/library/RAW_NS.ttcnpp
+++ b/library/RAW_NS.ttcnpp
@@ -257,4 +257,13 @@
}
}
+/* Receive a NS-BLOCK and ACK it */
+public altstep as_rx_ns_block_ack(boolean oneshot := false, integer idx := 0, template NsCause cause := *, template Nsvci nsvci := *) runs on RAW_NS_CT {
+ var PDU_NS ns_rf;
+ [] NSCP[idx].receive(tr_NS_BLOCK(cause, nsvci)) -> value ns_rf {
+ NSCP[idx].send(ts_NS_BLOCK_ACK(oct2int(ns_rf.pDU_NS_Block.nS_VCI.nS_VCI)));
+ if (not oneshot) { repeat; }
+ }
+}
+
}