OpenTTCN/Knowledge base/Writing Custom Codec Component/CodecTest.ttcn
From OpenTTCN
Home | Developer's corner | Knowledge base | Working documents | Documentation | OpenTTCN IDE | Tutorials | Training | How do I | Frequently asked questions | Technical support |
CodecTest.ttcn
module CodecTest
{
type integer Int8(0..255);
type integer Int16(0..65535);
type octetstring Oct4 length(4);
type record Message
{
Int8 tag,
Int16 length_,
Oct4 content
}
type component ComponentType
{
}
testcase TC_CodecTest()
runs on ComponentType
{
log("****************** Group 1 ******************");
var template Message v_msg :=
{
tag := 15,
length_ := 4,
content := 'AB179CE1'O
}
log("Type : Message", v_msg);
var bitstring bs := encvalue(v_msg);
var octetstring os := bit2oct(bs);
log("encoded:", os);
if (os != '0F0004AB179CE1'O)
{
setverdict(fail, "encoded value mismatch"); stop;
}
var Message v_msg_2;
var integer rv := decvalue(bs, v_msg_2);
log("decoded:", v_msg_2);
if (v_msg_2 == valueof(v_msg))
{ setverdict(pass); } else { setverdict(fail, "decoded value mismatch"); stop; }
}
}
