titan.TestPorts.E1/example/E1TS_Test.ttcn

43 lines
782 B
Plaintext

module E1TS_Test {
import from E1TS_PortType all;
import from E1TS_PortTypes all;
type component test_CT {
port E1TS_PT E1;
}
testcase TC_selftest() runs on test_CT {
map(self:E1, system:E1);
var template (value) E1TS_identity ts_id := ts_E1TS_ID(0,0,2);
E1.send(ts_E1TS_open(23, ts_id, E1TS_MODE_RAW, "e1d"));
E1.receive(tr_E1TS_result(23, 0));
var integer rx_count := 0, rx_bytes := 0;
var E1TS_unitdata rx_ud;
timer T := 5.0;
T.start;
while (true) {
alt {
[] E1.receive(tr_E1TS_unitdata(ts_id,?)) -> value rx_ud {
rx_bytes := rx_bytes + lengthof(rx_ud.data);
rx_count := rx_count + 1;
repeat;
}
[] T.timeout {
log(rx_count, " messages received, total bytes ", rx_bytes);
mtc.stop
};
}
}
}
control {
execute( TC_selftest() );
}
}