OpenTTCN/Knowledge base/Writing Custom Codec Component/CodecTest.ttcn

From OpenTTCN

Jump to: navigation, search

  OpenTTCN DocZone

  Home | Developer's corner | Knowledge base | Working documents | Documentation | OpenTTCN IDE | Tutorials | Training | How do I | Frequently asked questions | Technical support


CodecTest.ttcn


Back to main article >>

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; }
}

}
Views
Personal tools