blob: 5bed3e4c043e343b30f8e3e3ce3a57265c640bd7 [file] [log] [blame]
Harald Welte92d1d7d2020-07-02 18:24:07 +02001module E1TS_Test {
2
3import from E1TS_PortType all;
4import from E1TS_PortTypes all;
5
6type component test_CT {
7 port E1TS_PT E1;
8}
9
10testcase TC_selftest() runs on test_CT {
11 map(self:E1, system:E1);
12 var template (value) E1TS_identity ts_id := ts_E1TS_ID(0,0,2);
13
14 E1.send(ts_E1TS_open(23, ts_id, E1TS_MODE_RAW, "e1d"));
15 E1.receive(tr_E1TS_result(23, 0));
16
17 var integer rx_count := 0, rx_bytes := 0;
18 var E1TS_unitdata rx_ud;
19 timer T := 5.0;
20 T.start;
21 while (true) {
22 alt {
23 [] E1.receive(tr_E1TS_unitdata(ts_id,?)) -> value rx_ud {
24 rx_bytes := rx_bytes + lengthof(rx_ud.data);
25 rx_count := rx_count + 1;
26 repeat;
27 }
28 [] T.timeout {
29 log(rx_count, " messages received, total bytes ", rx_bytes);
30 mtc.stop
31 };
32 }
33 }
34}
35
36control {
37 execute( TC_selftest() );
38}
39
40
41
42}