Loading ATS/06_types_and_values/0603_type_compatibility/060304_compatibility_of_communication_operations/NegSem_060304_compatibility_of_communication_operations_001.ttcn +2 −2 Original line number Original line Diff line number Diff line Loading @@ -25,12 +25,12 @@ module NegSem_060304_compatibility_of_communication_operations_001 type charstring MyString; // synonym type charstring MyString; // synonym testcase TC_060304_compatibility_of_communication_operations_001() runs on GeneralComp { testcase TC_NegSem_060304_compatibility_of_communication_operations_001() runs on GeneralComp { p.send(MyString:"abc"); p.send(MyString:"abc"); setverdict(pass); setverdict(pass); } } control { control { execute(TC_060304_compatibility_of_communication_operations_001()); execute(TC_NegSem_060304_compatibility_of_communication_operations_001()); } } } } ATS/06_types_and_values/0603_type_compatibility/060304_compatibility_of_communication_operations/NegSem_060304_compatibility_of_communication_operations_002.ttcn +2 −2 Original line number Original line Diff line number Diff line Loading @@ -25,7 +25,7 @@ module NegSem_060304_compatibility_of_communication_operations_002 type charstring MyString; // synonym type charstring MyString; // synonym testcase TC_060304_compatibility_of_communication_operations_002() runs on GeneralComp { testcase TC_NegSem_060304_compatibility_of_communication_operations_002() runs on GeneralComp { p.send(charstring:"abc"); p.send(charstring:"abc"); alt { alt { []p.receive(MyString:?) {} []p.receive(MyString:?) {} Loading @@ -35,6 +35,6 @@ module NegSem_060304_compatibility_of_communication_operations_002 } } control { control { execute(TC_060304_compatibility_of_communication_operations_002()); execute(TC_NegSem_060304_compatibility_of_communication_operations_002()); } } } } ATS/06_types_and_values/0603_type_compatibility/060304_compatibility_of_communication_operations/NegSem_060304_compatibility_of_communication_operations_003.ttcn +2 −2 Original line number Original line Diff line number Diff line Loading @@ -32,7 +32,7 @@ module NegSem_060304_compatibility_of_communication_operations_003 p.raise(S, MyString:"abc"); p.raise(S, MyString:"abc"); } } testcase TC_060304_compatibility_of_communication_operations_003() runs on GeneralComp system GeneralComp { testcase TC_NegSem_060304_compatibility_of_communication_operations_003() runs on GeneralComp system GeneralComp { var GeneralComp v_ptc := GeneralComp.create("PTC"); var GeneralComp v_ptc := GeneralComp.create("PTC"); connect(self:p, v_ptc:p); connect(self:p, v_ptc:p); v_ptc.start(f_mirror()); v_ptc.start(f_mirror()); Loading @@ -43,6 +43,6 @@ module NegSem_060304_compatibility_of_communication_operations_003 } } control { control { execute(TC_060304_compatibility_of_communication_operations_003()); execute(TC_NegSem_060304_compatibility_of_communication_operations_003()); } } } } ATS/06_types_and_values/0603_type_compatibility/060304_compatibility_of_communication_operations/NegSem_060304_compatibility_of_communication_operations_004.ttcn +2 −2 Original line number Original line Diff line number Diff line Loading @@ -32,7 +32,7 @@ module NegSem_060304_compatibility_of_communication_operations_004 p.raise(S, "abc"); p.raise(S, "abc"); } } testcase TC_060304_compatibility_of_communication_operations_003() runs on GeneralComp system GeneralComp { testcase TC_NegSem_060304_compatibility_of_communication_operations_003() runs on GeneralComp system GeneralComp { var GeneralComp v_ptc := GeneralComp.create("PTC"); var GeneralComp v_ptc := GeneralComp.create("PTC"); connect(self:p, v_ptc:p); connect(self:p, v_ptc:p); v_ptc.start(f_mirror()); v_ptc.start(f_mirror()); Loading @@ -43,6 +43,6 @@ module NegSem_060304_compatibility_of_communication_operations_004 } } control { control { execute(TC_060304_compatibility_of_communication_operations_003()); execute(TC_NegSem_060304_compatibility_of_communication_operations_003()); } } } } ATS/06_types_and_values/0603_type_compatibility/060304_compatibility_of_communication_operations/NegSem_060304_compatibility_of_communication_operations_005.ttcn 0 → 100644 +42 −0 Original line number Original line Diff line number Diff line /*************************************************** ** @author STF 487 ** @version 0.0.1 ** @purpose 1:6.3.4, compatible but not strongly typed value in trigger operation ** @verdict pass reject ***************************************************/ // The following requirement is tested: // The communication operations (see clause 22) send, receive, trigger, call, getcall, // reply, getreply and raise and connection operations connect, map, disconnect and // unmap (see clause 21.1) are exceptions to the weaker rule of type compatibility // and require strong typing. The types of values or templates directly used as // parameters to these operations shall also be explicitly defined in the associated // port type definition. module NegSem_060304_compatibility_of_communication_operations_005 { type port P message { inout charstring; } type component GeneralComp { port P p; } type charstring MyString; // synonym testcase TC_NegSem_060304_compatibility_of_communication_operations_005() runs on GeneralComp { timer t := 2.0; t.start; p.send(charstring:"abc"); alt { []p.trigger(MyString:?) {} []t.timeout {} // to avoid endless blocking in case the previous statement is incorrectly accepted } setverdict(pass); } control { execute(TC_NegSem_060304_compatibility_of_communication_operations_005()); } } Loading
ATS/06_types_and_values/0603_type_compatibility/060304_compatibility_of_communication_operations/NegSem_060304_compatibility_of_communication_operations_001.ttcn +2 −2 Original line number Original line Diff line number Diff line Loading @@ -25,12 +25,12 @@ module NegSem_060304_compatibility_of_communication_operations_001 type charstring MyString; // synonym type charstring MyString; // synonym testcase TC_060304_compatibility_of_communication_operations_001() runs on GeneralComp { testcase TC_NegSem_060304_compatibility_of_communication_operations_001() runs on GeneralComp { p.send(MyString:"abc"); p.send(MyString:"abc"); setverdict(pass); setverdict(pass); } } control { control { execute(TC_060304_compatibility_of_communication_operations_001()); execute(TC_NegSem_060304_compatibility_of_communication_operations_001()); } } } }
ATS/06_types_and_values/0603_type_compatibility/060304_compatibility_of_communication_operations/NegSem_060304_compatibility_of_communication_operations_002.ttcn +2 −2 Original line number Original line Diff line number Diff line Loading @@ -25,7 +25,7 @@ module NegSem_060304_compatibility_of_communication_operations_002 type charstring MyString; // synonym type charstring MyString; // synonym testcase TC_060304_compatibility_of_communication_operations_002() runs on GeneralComp { testcase TC_NegSem_060304_compatibility_of_communication_operations_002() runs on GeneralComp { p.send(charstring:"abc"); p.send(charstring:"abc"); alt { alt { []p.receive(MyString:?) {} []p.receive(MyString:?) {} Loading @@ -35,6 +35,6 @@ module NegSem_060304_compatibility_of_communication_operations_002 } } control { control { execute(TC_060304_compatibility_of_communication_operations_002()); execute(TC_NegSem_060304_compatibility_of_communication_operations_002()); } } } }
ATS/06_types_and_values/0603_type_compatibility/060304_compatibility_of_communication_operations/NegSem_060304_compatibility_of_communication_operations_003.ttcn +2 −2 Original line number Original line Diff line number Diff line Loading @@ -32,7 +32,7 @@ module NegSem_060304_compatibility_of_communication_operations_003 p.raise(S, MyString:"abc"); p.raise(S, MyString:"abc"); } } testcase TC_060304_compatibility_of_communication_operations_003() runs on GeneralComp system GeneralComp { testcase TC_NegSem_060304_compatibility_of_communication_operations_003() runs on GeneralComp system GeneralComp { var GeneralComp v_ptc := GeneralComp.create("PTC"); var GeneralComp v_ptc := GeneralComp.create("PTC"); connect(self:p, v_ptc:p); connect(self:p, v_ptc:p); v_ptc.start(f_mirror()); v_ptc.start(f_mirror()); Loading @@ -43,6 +43,6 @@ module NegSem_060304_compatibility_of_communication_operations_003 } } control { control { execute(TC_060304_compatibility_of_communication_operations_003()); execute(TC_NegSem_060304_compatibility_of_communication_operations_003()); } } } }
ATS/06_types_and_values/0603_type_compatibility/060304_compatibility_of_communication_operations/NegSem_060304_compatibility_of_communication_operations_004.ttcn +2 −2 Original line number Original line Diff line number Diff line Loading @@ -32,7 +32,7 @@ module NegSem_060304_compatibility_of_communication_operations_004 p.raise(S, "abc"); p.raise(S, "abc"); } } testcase TC_060304_compatibility_of_communication_operations_003() runs on GeneralComp system GeneralComp { testcase TC_NegSem_060304_compatibility_of_communication_operations_003() runs on GeneralComp system GeneralComp { var GeneralComp v_ptc := GeneralComp.create("PTC"); var GeneralComp v_ptc := GeneralComp.create("PTC"); connect(self:p, v_ptc:p); connect(self:p, v_ptc:p); v_ptc.start(f_mirror()); v_ptc.start(f_mirror()); Loading @@ -43,6 +43,6 @@ module NegSem_060304_compatibility_of_communication_operations_004 } } control { control { execute(TC_060304_compatibility_of_communication_operations_003()); execute(TC_NegSem_060304_compatibility_of_communication_operations_003()); } } } }
ATS/06_types_and_values/0603_type_compatibility/060304_compatibility_of_communication_operations/NegSem_060304_compatibility_of_communication_operations_005.ttcn 0 → 100644 +42 −0 Original line number Original line Diff line number Diff line /*************************************************** ** @author STF 487 ** @version 0.0.1 ** @purpose 1:6.3.4, compatible but not strongly typed value in trigger operation ** @verdict pass reject ***************************************************/ // The following requirement is tested: // The communication operations (see clause 22) send, receive, trigger, call, getcall, // reply, getreply and raise and connection operations connect, map, disconnect and // unmap (see clause 21.1) are exceptions to the weaker rule of type compatibility // and require strong typing. The types of values or templates directly used as // parameters to these operations shall also be explicitly defined in the associated // port type definition. module NegSem_060304_compatibility_of_communication_operations_005 { type port P message { inout charstring; } type component GeneralComp { port P p; } type charstring MyString; // synonym testcase TC_NegSem_060304_compatibility_of_communication_operations_005() runs on GeneralComp { timer t := 2.0; t.start; p.send(charstring:"abc"); alt { []p.trigger(MyString:?) {} []t.timeout {} // to avoid endless blocking in case the previous statement is incorrectly accepted } setverdict(pass); } control { execute(TC_NegSem_060304_compatibility_of_communication_operations_005()); } }