/*************************************************** ** @author STF 409 (updated by STF 521) ** @version 0.0.2 ** @purpose 1:B.1.4.1, Ensure that the IUT correctly handles template matching of value length definitions ** @verdict pass accept, ttcn3verdict:fail ***************************************************/ module NegSem_B010401_length_restrictions_001 { type record MessageType { charstring field1, bitstring field2, hexstring field3, charstring field4, bitstring field5, hexstring field6 } type port loopbackPort message { inout MessageType } type component GeneralComp { port loopbackPort messagePort } testcase TC_NegSem_B010401_length_restrictions_001() runs on GeneralComp { var MessageType v_testMessage; template MessageType mw_matchingTemplate:= { field1 := pattern "test mess*ge" length (6 .. 8), //pattern is longer than length restriction field2 := '10*'B length (3 .. 5), field3 := '89*ABC'H length (5), field4 := pattern "tes?" length (4 .. 13), field5 := '10?'B length (3 .. 5), field6 := '89?ABC'H length (6) } v_testMessage:= { field1 := "test string", field2 := '10101'B, field3 := '89ABC'H, field4 := "test", field5 := '101'B, field6 := '899ABC'H } messagePort.send(v_testMessage); alt { [] messagePort.receive(mw_matchingTemplate) { setverdict(pass); } [] messagePort.receive { setverdict(fail); } } } control{ execute(TC_NegSem_B010401_length_restrictions_001()); } }