diff --git a/MAC/Test/TestHarness/THEcho/src/THEcho.cc b/MAC/Test/TestHarness/THEcho/src/THEcho.cc index 5dd20474c4ce93f38ca6b545f3436ee800af0382..d3d2b803a18e4ecd9b644b7b22593a73b3b47753 100644 --- a/MAC/Test/TestHarness/THEcho/src/THEcho.cc +++ b/MAC/Test/TestHarness/THEcho/src/THEcho.cc @@ -225,6 +225,71 @@ GCFEvent::TResult Echo::connected(GCFEvent& e, GCFPortInterface& p) break; } + case THECHO_PING_INT_ARRAY: + { + LOG_TRACE_FLOW("Echo::connected(THECHO_PING_INT_ARRAY)"); + THEchoPingIntArrayEvent ping(e); + LOG_INFO(formatString("PING_INT_ARRAY received on port %s (seqnr=%d, intArrayParam=[%d,%d,%d,%d,%d,%d,%d,%d,%d,%d])",p.getName().c_str(),ping.seqnr,ping.intArrayParam[0],ping.intArrayParam[1],ping.intArrayParam[2],ping.intArrayParam[3],ping.intArrayParam[4],ping.intArrayParam[5],ping.intArrayParam[6],ping.intArrayParam[7],ping.intArrayParam[8],ping.intArrayParam[9])); + THEchoEchoIntArrayEvent echo; + echo.seqnr = ping.seqnr; + for(int i=0;i<10;i++) + echo.intArrayParam[i] = ping.intArrayParam[i]; + _reply(echo,p); + break; + } + + case THECHO_PING_INT_ARRAY_20: + { + LOG_TRACE_FLOW("Echo::connected(THECHO_PING_INT_ARRAY_20)"); + THEchoPingIntArray20Event ping(e); + + int numInts=20; + int i; + char strTemp[50]; + string paramDump("["); + for(i=0;i<numInts-1;i++) + { + sprintf(strTemp,"%d,",ping.intArrayParam[i]); + paramDump += string(strTemp); + } + sprintf(strTemp,"%d]",ping.intArrayParam[i]); + paramDump += string(strTemp); + LOG_INFO(formatString("PING_INT_ARRAY_20 received on port %s (seqnr=%d, intArrayParam=%s)",p.getName().c_str(),ping.seqnr,paramDump.c_str())); + + THEchoEchoIntArray20Event echo; + echo.seqnr = ping.seqnr; + for(i=0;i<numInts;i++) + echo.intArrayParam[i] = ping.intArrayParam[i]; + _reply(echo,p); + break; + } + + case THECHO_PING_INT_ARRAY_61: + { + LOG_TRACE_FLOW("Echo::connected(THECHO_PING_INT_ARRAY_61)"); + THEchoPingIntArray61Event ping(e); + + int numInts=61; + int i; + char strTemp[50]; + string paramDump("["); + for(i=0;i<numInts-1;i++) + { + sprintf(strTemp,"%d,",ping.intArrayParam[i]); + paramDump += string(strTemp); + } + sprintf(strTemp,"%d]",ping.intArrayParam[i]); + paramDump += string(strTemp); + LOG_INFO(formatString("PING_INT_ARRAY_61 received on port %s (seqnr=%d, intArrayParam=%s)",p.getName().c_str(),ping.seqnr,paramDump.c_str())); + + THEchoEchoIntArray61Event echo; + echo.seqnr = ping.seqnr; + for(i=0;i<numInts;i++) + echo.intArrayParam[i] = ping.intArrayParam[i]; + _reply(echo,p); + break; + } + case THECHOROUTING_PING_UINT: { LOG_TRACE_FLOW("Echo::connected(THECHOROUTING_PING_UINT)"); @@ -305,6 +370,72 @@ GCFEvent::TResult Echo::connected(GCFEvent& e, GCFPortInterface& p) stop(); break; } + + case THECHOROUTING_PING_INT_ARRAY: + { + LOG_TRACE_FLOW("Echo::connected(THECHOROUTING_PING_INT_ARRAY)"); + THEchoRoutingPingIntArrayEvent ping(e); + LOG_INFO(formatString("PING_INT_ARRAY received on port %s (seqnr=%d, intArrayParam=[%d,%d,%d,%d,%d,%d,%d,%d,%d,%d])",p.getName().c_str(),ping.seqnr,ping.intArrayParam[0],ping.intArrayParam[1],ping.intArrayParam[2],ping.intArrayParam[3],ping.intArrayParam[4],ping.intArrayParam[5],ping.intArrayParam[6],ping.intArrayParam[7],ping.intArrayParam[8],ping.intArrayParam[9])); + THEchoRoutingEchoIntArrayEvent echo; + echo.seqnr = ping.seqnr; + for(int i=0;i<10;i++) + echo.intArrayParam[i] = ping.intArrayParam[i]; + _reply(echo,p); + break; + } + + case THECHOROUTING_PING_INT_ARRAY_20: + { + LOG_TRACE_FLOW("Echo::connected(THECHOROUTING_PING_INT_ARRAY_20)"); + THEchoRoutingPingIntArray20Event ping(e); + + int numInts=20; + int i; + char strTemp[50]; + string paramDump("["); + for(i=0;i<numInts-1;i++) + { + sprintf(strTemp,"%d,",ping.intArrayParam[i]); + paramDump += string(strTemp); + } + sprintf(strTemp,"%d]",ping.intArrayParam[i]); + paramDump += string(strTemp); + LOG_INFO(formatString("PING_INT_ARRAY_20 received on port %s (seqnr=%d, intArrayParam=%s)",p.getName().c_str(),ping.seqnr,paramDump.c_str())); + + THEchoRoutingEchoIntArray20Event echo; + echo.seqnr = ping.seqnr; + for(int i=0;i<numInts;i++) + echo.intArrayParam[i] = ping.intArrayParam[i]; + _reply(echo,p); + break; + } + + case THECHOROUTING_PING_INT_ARRAY_61: + { + LOG_TRACE_FLOW("Echo::connected(THECHOROUTING_PING_INT_ARRAY_61)"); + THEchoRoutingPingIntArray61Event ping(e); + + int numInts=61; + int i; + char strTemp[50]; + string paramDump("["); + for(i=0;i<numInts-1;i++) + { + sprintf(strTemp,"%d,",ping.intArrayParam[i]); + paramDump += string(strTemp); + } + sprintf(strTemp,"%d]",ping.intArrayParam[i]); + paramDump += string(strTemp); + LOG_INFO(formatString("PING_INT_ARRAY_61 received on port %s (seqnr=%d, intArrayParam=%s)",p.getName().c_str(),ping.seqnr,paramDump.c_str())); + + THEchoRoutingEchoIntArray61Event echo; + echo.seqnr = ping.seqnr; + for(int i=0;i<numInts;i++) + echo.intArrayParam[i] = ping.intArrayParam[i]; + _reply(echo,p); + break; + } + default: status = GCFEvent::NOT_HANDLED; break; diff --git a/MAC/Test/TestHarness/THEcho/src/THEchoRouting_Protocol.prot b/MAC/Test/TestHarness/THEcho/src/THEchoRouting_Protocol.prot index abcf1bc356e718be8900dd061c5ca43603ce74d4..417357ec9ea3f3348fbf4b756051f0320aa03374 100644 --- a/MAC/Test/TestHarness/THEcho/src/THEchoRouting_Protocol.prot +++ b/MAC/Test/TestHarness/THEcho/src/THEchoRouting_Protocol.prot @@ -221,3 +221,82 @@ event = { type = "unsigned int"; }; }; + +event = { + signal = PING_INT_ARRAY; + dir = IN; + param = { + name = "seqnr"; + type = "unsigned int"; + }; + param = { + name = "intArrayParam"; + type = "int[10]"; + }; +}; + +event = { + signal = ECHO_INT_ARRAY; + dir = IN; + param = { + name = "seqnr"; + type = "unsigned int"; + }; + param = { + name = "intArrayParam"; + type = "int[10]"; + }; +}; + +event = { + signal = PING_INT_ARRAY_20; + dir = IN; + param = { + name = "seqnr"; + type = "unsigned int"; + }; + param = { + name = "intArrayParam"; + type = "int[20]"; + }; +}; + +event = { + signal = ECHO_INT_ARRAY_20; + dir = IN; + param = { + name = "seqnr"; + type = "unsigned int"; + }; + param = { + name = "intArrayParam"; + type = "int[20]"; + }; +}; + +event = { + signal = PING_INT_ARRAY_61; + dir = IN; + param = { + name = "seqnr"; + type = "unsigned int"; + }; + param = { + name = "intArrayParam"; + type = "int[61]"; + }; +}; + +event = { + signal = ECHO_INT_ARRAY_61; + dir = IN; + param = { + name = "seqnr"; + type = "unsigned int"; + }; + param = { + name = "intArrayParam"; + type = "int[61]"; + }; +}; + diff --git a/MAC/Test/TestHarness/THEcho/src/THEcho_Protocol.prot b/MAC/Test/TestHarness/THEcho/src/THEcho_Protocol.prot index 1fd98da43b7dcaa15e8d8a6ebb2de3ceeee4e015..4d8056a62718c6d000c2006bb71753da6922de42 100644 --- a/MAC/Test/TestHarness/THEcho/src/THEcho_Protocol.prot +++ b/MAC/Test/TestHarness/THEcho/src/THEcho_Protocol.prot @@ -217,3 +217,82 @@ event = { type = "unsigned int"; }; }; + +event = { + signal = PING_INT_ARRAY; + dir = IN; + param = { + name = "seqnr"; + type = "unsigned int"; + }; + param = { + name = "intArrayParam"; + type = "int[10]"; + }; +}; + +event = { + signal = ECHO_INT_ARRAY; + dir = OUT; + param = { + name = "seqnr"; + type = "unsigned int"; + }; + param = { + name = "intArrayParam"; + type = "int[10]"; + }; +}; + +event = { + signal = PING_INT_ARRAY_20; + dir = IN; + param = { + name = "seqnr"; + type = "unsigned int"; + }; + param = { + name = "intArrayParam"; + type = "int[20]"; + }; +}; + +event = { + signal = ECHO_INT_ARRAY_20; + dir = OUT; + param = { + name = "seqnr"; + type = "unsigned int"; + }; + param = { + name = "intArrayParam"; + type = "int[20]"; + }; +}; + +event = { + signal = PING_INT_ARRAY_61; + dir = IN; + param = { + name = "seqnr"; + type = "unsigned int"; + }; + param = { + name = "intArrayParam"; + type = "int[61]"; + }; +}; + +event = { + signal = ECHO_INT_ARRAY_61; + dir = OUT; + param = { + name = "seqnr"; + type = "unsigned int"; + }; + param = { + name = "intArrayParam"; + type = "int[61]"; + }; +}; + diff --git a/MAC/Test/TestHarness/THEcho/test/THEchoTest.cc b/MAC/Test/TestHarness/THEcho/test/THEchoTest.cc index c2121fbff0eae3c0b0ea8091c2d338d4c5fc49fc..8dd5a1ed264e342587b06588431d224775b8d542 100644 --- a/MAC/Test/TestHarness/THEcho/test/THEchoTest.cc +++ b/MAC/Test/TestHarness/THEcho/test/THEchoTest.cc @@ -173,17 +173,24 @@ GCFEvent::TResult EchoTest::test1(GCFEvent& e, GCFPortInterface& p) break; } +// case THECHO_ECHO_UINT: case THECHO_ECHO_INT: case THECHO_ECHO_LONG: case THECHO_ECHO_ENUM: case THECHO_ECHO_DOUBLE: case THECHO_ECHO_STRING: + case THECHO_ECHO_INT_ARRAY: case THECHOROUTING_ECHO_UINT: case THECHOROUTING_ECHO_INT: case THECHOROUTING_ECHO_LONG: case THECHOROUTING_ECHO_ENUM: case THECHOROUTING_ECHO_DOUBLE: case THECHOROUTING_ECHO_STRING: + case THECHOROUTING_ECHO_INT_ARRAY: + case THECHO_ECHO_INT_ARRAY_20: + case THECHO_ECHO_INT_ARRAY_61: + case THECHOROUTING_ECHO_INT_ARRAY_20: + case THECHOROUTING_ECHO_INT_ARRAY_61: LOG_FATAL("wrong echo received!!"); stop(); break; @@ -245,16 +252,23 @@ GCFEvent::TResult EchoTest::test2(GCFEvent& e, GCFPortInterface& p) } case THECHO_ECHO_UINT: +// case THECHO_ECHO_INT: case THECHO_ECHO_LONG: case THECHO_ECHO_ENUM: case THECHO_ECHO_DOUBLE: case THECHO_ECHO_STRING: + case THECHO_ECHO_INT_ARRAY: case THECHOROUTING_ECHO_UINT: case THECHOROUTING_ECHO_INT: case THECHOROUTING_ECHO_LONG: case THECHOROUTING_ECHO_ENUM: case THECHOROUTING_ECHO_DOUBLE: case THECHOROUTING_ECHO_STRING: + case THECHOROUTING_ECHO_INT_ARRAY: + case THECHO_ECHO_INT_ARRAY_20: + case THECHO_ECHO_INT_ARRAY_61: + case THECHOROUTING_ECHO_INT_ARRAY_20: + case THECHOROUTING_ECHO_INT_ARRAY_61: LOG_FATAL("wrong echo received!!"); stop(); break; @@ -317,15 +331,22 @@ GCFEvent::TResult EchoTest::test3(GCFEvent& e, GCFPortInterface& p) case THECHO_ECHO_UINT: case THECHO_ECHO_INT: +// case THECHO_ECHO_LONG: case THECHO_ECHO_ENUM: case THECHO_ECHO_DOUBLE: case THECHO_ECHO_STRING: + case THECHO_ECHO_INT_ARRAY: case THECHOROUTING_ECHO_UINT: case THECHOROUTING_ECHO_INT: case THECHOROUTING_ECHO_LONG: case THECHOROUTING_ECHO_ENUM: case THECHOROUTING_ECHO_DOUBLE: case THECHOROUTING_ECHO_STRING: + case THECHOROUTING_ECHO_INT_ARRAY: + case THECHO_ECHO_INT_ARRAY_20: + case THECHO_ECHO_INT_ARRAY_61: + case THECHOROUTING_ECHO_INT_ARRAY_20: + case THECHOROUTING_ECHO_INT_ARRAY_61: LOG_FATAL("wrong echo received!!"); stop(); break; @@ -390,14 +411,21 @@ GCFEvent::TResult EchoTest::test4(GCFEvent& e, GCFPortInterface& p) case THECHO_ECHO_UINT: case THECHO_ECHO_INT: case THECHO_ECHO_LONG: +// case THECHO_ECHO_ENUM: case THECHO_ECHO_DOUBLE: case THECHO_ECHO_STRING: + case THECHO_ECHO_INT_ARRAY: case THECHOROUTING_ECHO_UINT: case THECHOROUTING_ECHO_INT: case THECHOROUTING_ECHO_LONG: case THECHOROUTING_ECHO_ENUM: case THECHOROUTING_ECHO_DOUBLE: case THECHOROUTING_ECHO_STRING: + case THECHOROUTING_ECHO_INT_ARRAY: + case THECHO_ECHO_INT_ARRAY_20: + case THECHO_ECHO_INT_ARRAY_61: + case THECHOROUTING_ECHO_INT_ARRAY_20: + case THECHOROUTING_ECHO_INT_ARRAY_61: LOG_FATAL("wrong echo received!!"); stop(); break; @@ -463,13 +491,20 @@ GCFEvent::TResult EchoTest::test5(GCFEvent& e, GCFPortInterface& p) case THECHO_ECHO_INT: case THECHO_ECHO_LONG: case THECHO_ECHO_ENUM: +// case THECHO_ECHO_DOUBLE: case THECHO_ECHO_STRING: + case THECHO_ECHO_INT_ARRAY: case THECHOROUTING_ECHO_UINT: case THECHOROUTING_ECHO_INT: case THECHOROUTING_ECHO_LONG: case THECHOROUTING_ECHO_ENUM: case THECHOROUTING_ECHO_DOUBLE: case THECHOROUTING_ECHO_STRING: + case THECHOROUTING_ECHO_INT_ARRAY: + case THECHO_ECHO_INT_ARRAY_20: + case THECHO_ECHO_INT_ARRAY_61: + case THECHOROUTING_ECHO_INT_ARRAY_20: + case THECHOROUTING_ECHO_INT_ARRAY_61: LOG_FATAL("wrong echo received!!"); stop(); break; @@ -535,12 +570,19 @@ GCFEvent::TResult EchoTest::test6(GCFEvent& e, GCFPortInterface& p) case THECHO_ECHO_LONG: case THECHO_ECHO_ENUM: case THECHO_ECHO_DOUBLE: +// case THECHO_ECHO_STRING: + case THECHO_ECHO_INT_ARRAY: case THECHOROUTING_ECHO_UINT: case THECHOROUTING_ECHO_INT: case THECHOROUTING_ECHO_LONG: case THECHOROUTING_ECHO_ENUM: case THECHOROUTING_ECHO_DOUBLE: case THECHOROUTING_ECHO_STRING: + case THECHOROUTING_ECHO_INT_ARRAY: + case THECHO_ECHO_INT_ARRAY_20: + case THECHO_ECHO_INT_ARRAY_61: + case THECHOROUTING_ECHO_INT_ARRAY_20: + case THECHOROUTING_ECHO_INT_ARRAY_61: LOG_FATAL("wrong echo received!!"); stop(); break; @@ -568,6 +610,85 @@ GCFEvent::TResult EchoTest::test7(GCFEvent& e, GCFPortInterface& p) case F_ENTRY: { LOG_TRACE_FLOW("EchoTest::test7(F_ENTRY)"); + THEchoPingIntArrayEvent ping; + ping.seqnr = _seqnr; + for(int i=0;i<10;i++) + ping.intArrayParam[i]=i; + _send(ping,_client); + break; + } + + case THECHO_ECHO_INT_ARRAY: + { + LOG_TRACE_FLOW("EchoTest::test7(THECHO_ECHO_INT_ARRAY)"); + if(!_isClient(p)) + { + LOG_FATAL("reply received on wrong port!!"); + stop(); + } + else + { + THEchoEchoIntArrayEvent echo(e); + LOG_INFO(formatString("ECHO_INT_ARRAY received on port %s (seqnr=%d, intArrayParam=[%d,%d,%d,%d,%d,%d,%d,%d,%d,%d])",p.getName().c_str(),echo.seqnr,echo.intArrayParam[0],echo.intArrayParam[1],echo.intArrayParam[2],echo.intArrayParam[3],echo.intArrayParam[4],echo.intArrayParam[5],echo.intArrayParam[6],echo.intArrayParam[7],echo.intArrayParam[8],echo.intArrayParam[9])); + if(_seqnr != echo.seqnr) + { + LOG_FATAL("wrong seqnr received!!"); + stop(); + } + else + { + _seqnr++; + TRAN(EchoTest::test8); + } + } + break; + } + + case THECHO_ECHO_UINT: + case THECHO_ECHO_INT: + case THECHO_ECHO_LONG: + case THECHO_ECHO_ENUM: + case THECHO_ECHO_DOUBLE: + case THECHO_ECHO_STRING: +// case THECHO_ECHO_INT_ARRAY: + case THECHOROUTING_ECHO_UINT: + case THECHOROUTING_ECHO_INT: + case THECHOROUTING_ECHO_LONG: + case THECHOROUTING_ECHO_ENUM: + case THECHOROUTING_ECHO_DOUBLE: + case THECHOROUTING_ECHO_STRING: + case THECHOROUTING_ECHO_INT_ARRAY: + case THECHO_ECHO_INT_ARRAY_20: + case THECHO_ECHO_INT_ARRAY_61: + case THECHOROUTING_ECHO_INT_ARRAY_20: + case THECHOROUTING_ECHO_INT_ARRAY_61: + LOG_FATAL("wrong echo received!!"); + stop(); + break; + + case F_DISCONNECTED: + LOG_TRACE_FLOW("EchoTest::test7(F_DISCONNECTED)"); + TRAN(EchoTest::initial); + break; + + default: + status = GCFEvent::NOT_HANDLED; + break; + } + + return status; +} + +GCFEvent::TResult EchoTest::test8(GCFEvent& e, GCFPortInterface& p) +{ + GCFEvent::TResult status = GCFEvent::HANDLED; + + switch (e.signal) + { + + case F_ENTRY: + { + LOG_TRACE_FLOW("EchoTest::test8(F_ENTRY)"); THEchoRoutingPingUintEvent ping; ping.seqnr = _seqnr; ping.uintParam = 123456789; @@ -577,7 +698,7 @@ GCFEvent::TResult EchoTest::test7(GCFEvent& e, GCFPortInterface& p) case THECHOROUTING_ECHO_UINT: { - LOG_TRACE_FLOW("EchoTest::test7(THECHOROUTING_ECHO_UINT)"); + LOG_TRACE_FLOW("EchoTest::test8(THECHOROUTING_ECHO_UINT)"); if(!_isServer(p)) { LOG_FATAL("reply received on wrong port!!"); @@ -595,7 +716,7 @@ GCFEvent::TResult EchoTest::test7(GCFEvent& e, GCFPortInterface& p) else { _seqnr++; - TRAN(EchoTest::test8); + TRAN(EchoTest::test9); } } break; @@ -607,17 +728,24 @@ GCFEvent::TResult EchoTest::test7(GCFEvent& e, GCFPortInterface& p) case THECHO_ECHO_ENUM: case THECHO_ECHO_DOUBLE: case THECHO_ECHO_STRING: + case THECHO_ECHO_INT_ARRAY: +// case THECHOROUTING_ECHO_UINT: case THECHOROUTING_ECHO_INT: case THECHOROUTING_ECHO_LONG: case THECHOROUTING_ECHO_ENUM: case THECHOROUTING_ECHO_DOUBLE: case THECHOROUTING_ECHO_STRING: + case THECHOROUTING_ECHO_INT_ARRAY: + case THECHO_ECHO_INT_ARRAY_20: + case THECHO_ECHO_INT_ARRAY_61: + case THECHOROUTING_ECHO_INT_ARRAY_20: + case THECHOROUTING_ECHO_INT_ARRAY_61: LOG_FATAL("wrong echo received!!"); stop(); break; case F_DISCONNECTED: - LOG_TRACE_FLOW("EchoTest::test7(F_DISCONNECTED)"); + LOG_TRACE_FLOW("EchoTest::test8(F_DISCONNECTED)"); TRAN(EchoTest::initial); break; @@ -629,7 +757,7 @@ GCFEvent::TResult EchoTest::test7(GCFEvent& e, GCFPortInterface& p) return status; } -GCFEvent::TResult EchoTest::test8(GCFEvent& e, GCFPortInterface& p) +GCFEvent::TResult EchoTest::test9(GCFEvent& e, GCFPortInterface& p) { GCFEvent::TResult status = GCFEvent::HANDLED; @@ -638,7 +766,7 @@ GCFEvent::TResult EchoTest::test8(GCFEvent& e, GCFPortInterface& p) case F_ENTRY: { - LOG_TRACE_FLOW("EchoTest::test8(F_ENTRY)"); + LOG_TRACE_FLOW("EchoTest::test9(F_ENTRY)"); THEchoRoutingPingIntEvent ping; ping.seqnr = _seqnr; ping.intParam = 123456789; @@ -648,7 +776,7 @@ GCFEvent::TResult EchoTest::test8(GCFEvent& e, GCFPortInterface& p) case THECHOROUTING_ECHO_INT: { - LOG_TRACE_FLOW("EchoTest::test8(THECHOROUTING_ECHO_INT)"); + LOG_TRACE_FLOW("EchoTest::test9(THECHOROUTING_ECHO_INT)"); if(!_isServer(p)) { LOG_FATAL("reply received on wrong port!!"); @@ -666,7 +794,7 @@ GCFEvent::TResult EchoTest::test8(GCFEvent& e, GCFPortInterface& p) else { _seqnr++; - TRAN(EchoTest::test9); + TRAN(EchoTest::test10); } } break; @@ -678,17 +806,24 @@ GCFEvent::TResult EchoTest::test8(GCFEvent& e, GCFPortInterface& p) case THECHO_ECHO_ENUM: case THECHO_ECHO_DOUBLE: case THECHO_ECHO_STRING: + case THECHO_ECHO_INT_ARRAY: case THECHOROUTING_ECHO_UINT: +// case THECHOROUTING_ECHO_INT: case THECHOROUTING_ECHO_LONG: case THECHOROUTING_ECHO_ENUM: case THECHOROUTING_ECHO_DOUBLE: case THECHOROUTING_ECHO_STRING: + case THECHOROUTING_ECHO_INT_ARRAY: + case THECHO_ECHO_INT_ARRAY_20: + case THECHO_ECHO_INT_ARRAY_61: + case THECHOROUTING_ECHO_INT_ARRAY_20: + case THECHOROUTING_ECHO_INT_ARRAY_61: LOG_FATAL("wrong echo received!!"); stop(); break; case F_DISCONNECTED: - LOG_TRACE_FLOW("EchoTest::test8(F_DISCONNECTED)"); + LOG_TRACE_FLOW("EchoTest::test9(F_DISCONNECTED)"); TRAN(EchoTest::initial); break; @@ -700,7 +835,7 @@ GCFEvent::TResult EchoTest::test8(GCFEvent& e, GCFPortInterface& p) return status; } -GCFEvent::TResult EchoTest::test9(GCFEvent& e, GCFPortInterface& p) +GCFEvent::TResult EchoTest::test10(GCFEvent& e, GCFPortInterface& p) { GCFEvent::TResult status = GCFEvent::HANDLED; @@ -709,7 +844,7 @@ GCFEvent::TResult EchoTest::test9(GCFEvent& e, GCFPortInterface& p) case F_ENTRY: { - LOG_TRACE_FLOW("EchoTest::test9(F_ENTRY)"); + LOG_TRACE_FLOW("EchoTest::test10(F_ENTRY)"); THEchoRoutingPingLongEvent ping; ping.seqnr = _seqnr; ping.longParam = 123456789; @@ -719,7 +854,7 @@ GCFEvent::TResult EchoTest::test9(GCFEvent& e, GCFPortInterface& p) case THECHOROUTING_ECHO_LONG: { - LOG_TRACE_FLOW("EchoTest::test9(THECHOROUTING_ECHO_LONG)"); + LOG_TRACE_FLOW("EchoTest::test10(THECHOROUTING_ECHO_LONG)"); if(!_isServer(p)) { LOG_FATAL("reply received on wrong port!!"); @@ -737,7 +872,7 @@ GCFEvent::TResult EchoTest::test9(GCFEvent& e, GCFPortInterface& p) else { _seqnr++; - TRAN(EchoTest::test10); + TRAN(EchoTest::test11); } } break; @@ -749,17 +884,24 @@ GCFEvent::TResult EchoTest::test9(GCFEvent& e, GCFPortInterface& p) case THECHO_ECHO_ENUM: case THECHO_ECHO_DOUBLE: case THECHO_ECHO_STRING: + case THECHO_ECHO_INT_ARRAY: case THECHOROUTING_ECHO_UINT: case THECHOROUTING_ECHO_INT: +// case THECHOROUTING_ECHO_LONG: case THECHOROUTING_ECHO_ENUM: case THECHOROUTING_ECHO_DOUBLE: case THECHOROUTING_ECHO_STRING: + case THECHOROUTING_ECHO_INT_ARRAY: + case THECHO_ECHO_INT_ARRAY_20: + case THECHO_ECHO_INT_ARRAY_61: + case THECHOROUTING_ECHO_INT_ARRAY_20: + case THECHOROUTING_ECHO_INT_ARRAY_61: LOG_FATAL("wrong echo received!!"); stop(); break; case F_DISCONNECTED: - LOG_TRACE_FLOW("EchoTest::test9(F_DISCONNECTED)"); + LOG_TRACE_FLOW("EchoTest::test10(F_DISCONNECTED)"); TRAN(EchoTest::initial); break; @@ -771,7 +913,7 @@ GCFEvent::TResult EchoTest::test9(GCFEvent& e, GCFPortInterface& p) return status; } -GCFEvent::TResult EchoTest::test10(GCFEvent& e, GCFPortInterface& p) +GCFEvent::TResult EchoTest::test11(GCFEvent& e, GCFPortInterface& p) { GCFEvent::TResult status = GCFEvent::HANDLED; @@ -780,7 +922,7 @@ GCFEvent::TResult EchoTest::test10(GCFEvent& e, GCFPortInterface& p) case F_ENTRY: { - LOG_TRACE_FLOW("EchoTest::test10(F_ENTRY)"); + LOG_TRACE_FLOW("EchoTest::test11(F_ENTRY)"); THEchoRoutingPingEnumEvent ping; ping.seqnr = _seqnr; ping.enumParam = ECHOROUTING_ENUM_SECOND; @@ -790,7 +932,7 @@ GCFEvent::TResult EchoTest::test10(GCFEvent& e, GCFPortInterface& p) case THECHOROUTING_ECHO_ENUM: { - LOG_TRACE_FLOW("EchoTest::test10(THECHOROUTING_ECHO_ENUM)"); + LOG_TRACE_FLOW("EchoTest::test11(THECHOROUTING_ECHO_ENUM)"); if(!_isServer(p)) { LOG_FATAL("reply received on wrong port!!"); @@ -808,7 +950,7 @@ GCFEvent::TResult EchoTest::test10(GCFEvent& e, GCFPortInterface& p) else { _seqnr++; - TRAN(EchoTest::test11); + TRAN(EchoTest::test12); } } break; @@ -820,17 +962,24 @@ GCFEvent::TResult EchoTest::test10(GCFEvent& e, GCFPortInterface& p) case THECHO_ECHO_ENUM: case THECHO_ECHO_DOUBLE: case THECHO_ECHO_STRING: + case THECHO_ECHO_INT_ARRAY: case THECHOROUTING_ECHO_UINT: case THECHOROUTING_ECHO_INT: case THECHOROUTING_ECHO_LONG: +// case THECHOROUTING_ECHO_ENUM: case THECHOROUTING_ECHO_DOUBLE: case THECHOROUTING_ECHO_STRING: + case THECHOROUTING_ECHO_INT_ARRAY: + case THECHO_ECHO_INT_ARRAY_20: + case THECHO_ECHO_INT_ARRAY_61: + case THECHOROUTING_ECHO_INT_ARRAY_20: + case THECHOROUTING_ECHO_INT_ARRAY_61: LOG_FATAL("wrong echo received!!"); stop(); break; case F_DISCONNECTED: - LOG_TRACE_FLOW("EchoTest::test10(F_DISCONNECTED)"); + LOG_TRACE_FLOW("EchoTest::test11(F_DISCONNECTED)"); TRAN(EchoTest::initial); break; @@ -842,7 +991,7 @@ GCFEvent::TResult EchoTest::test10(GCFEvent& e, GCFPortInterface& p) return status; } -GCFEvent::TResult EchoTest::test11(GCFEvent& e, GCFPortInterface& p) +GCFEvent::TResult EchoTest::test12(GCFEvent& e, GCFPortInterface& p) { GCFEvent::TResult status = GCFEvent::HANDLED; @@ -851,7 +1000,7 @@ GCFEvent::TResult EchoTest::test11(GCFEvent& e, GCFPortInterface& p) case F_ENTRY: { - LOG_TRACE_FLOW("EchoTest::test11(F_ENTRY)"); + LOG_TRACE_FLOW("EchoTest::test12(F_ENTRY)"); THEchoRoutingPingDoubleEvent ping; ping.seqnr = _seqnr; ping.doubleParam = 1234.56789; @@ -861,7 +1010,7 @@ GCFEvent::TResult EchoTest::test11(GCFEvent& e, GCFPortInterface& p) case THECHOROUTING_ECHO_DOUBLE: { - LOG_TRACE_FLOW("EchoTest::test11(THECHOROUTING_ECHO_DOUBLE)"); + LOG_TRACE_FLOW("EchoTest::test12(THECHOROUTING_ECHO_DOUBLE)"); if(!_isServer(p)) { LOG_FATAL("reply received on wrong port!!"); @@ -879,7 +1028,7 @@ GCFEvent::TResult EchoTest::test11(GCFEvent& e, GCFPortInterface& p) else { _seqnr++; - TRAN(EchoTest::test12); + TRAN(EchoTest::test13); } } break; @@ -891,17 +1040,24 @@ GCFEvent::TResult EchoTest::test11(GCFEvent& e, GCFPortInterface& p) case THECHO_ECHO_ENUM: case THECHO_ECHO_DOUBLE: case THECHO_ECHO_STRING: + case THECHO_ECHO_INT_ARRAY: case THECHOROUTING_ECHO_UINT: case THECHOROUTING_ECHO_INT: case THECHOROUTING_ECHO_LONG: case THECHOROUTING_ECHO_ENUM: +// case THECHOROUTING_ECHO_DOUBLE: case THECHOROUTING_ECHO_STRING: + case THECHOROUTING_ECHO_INT_ARRAY: + case THECHO_ECHO_INT_ARRAY_20: + case THECHO_ECHO_INT_ARRAY_61: + case THECHOROUTING_ECHO_INT_ARRAY_20: + case THECHOROUTING_ECHO_INT_ARRAY_61: LOG_FATAL("wrong echo received!!"); stop(); break; case F_DISCONNECTED: - LOG_TRACE_FLOW("EchoTest::test11(F_DISCONNECTED)"); + LOG_TRACE_FLOW("EchoTest::test12(F_DISCONNECTED)"); TRAN(EchoTest::initial); break; @@ -913,7 +1069,7 @@ GCFEvent::TResult EchoTest::test11(GCFEvent& e, GCFPortInterface& p) return status; } -GCFEvent::TResult EchoTest::test12(GCFEvent& e, GCFPortInterface& p) +GCFEvent::TResult EchoTest::test13(GCFEvent& e, GCFPortInterface& p) { GCFEvent::TResult status = GCFEvent::HANDLED; @@ -922,7 +1078,7 @@ GCFEvent::TResult EchoTest::test12(GCFEvent& e, GCFPortInterface& p) case F_ENTRY: { - LOG_TRACE_FLOW("EchoTest::test12(F_ENTRY)"); + LOG_TRACE_FLOW("EchoTest::test13(F_ENTRY)"); THEchoRoutingPingStringEvent ping; ping.seqnr = _seqnr; ping.stringParam = "123456789"; @@ -932,7 +1088,7 @@ GCFEvent::TResult EchoTest::test12(GCFEvent& e, GCFPortInterface& p) case THECHOROUTING_ECHO_STRING: { - LOG_TRACE_FLOW("EchoTest::test12(THECHOROUTING_ECHO_STRING)"); + LOG_TRACE_FLOW("EchoTest::test13(THECHOROUTING_ECHO_STRING)"); if(!_isServer(p)) { LOG_FATAL("reply received on wrong port!!"); @@ -950,7 +1106,7 @@ GCFEvent::TResult EchoTest::test12(GCFEvent& e, GCFPortInterface& p) else { _seqnr++; - TRAN(EchoTest::test13); + TRAN(EchoTest::test14); } } break; @@ -962,17 +1118,24 @@ GCFEvent::TResult EchoTest::test12(GCFEvent& e, GCFPortInterface& p) case THECHO_ECHO_ENUM: case THECHO_ECHO_DOUBLE: case THECHO_ECHO_STRING: + case THECHO_ECHO_INT_ARRAY: case THECHOROUTING_ECHO_UINT: case THECHOROUTING_ECHO_INT: case THECHOROUTING_ECHO_LONG: case THECHOROUTING_ECHO_ENUM: case THECHOROUTING_ECHO_DOUBLE: +// case THECHOROUTING_ECHO_STRING: + case THECHOROUTING_ECHO_INT_ARRAY: + case THECHO_ECHO_INT_ARRAY_20: + case THECHO_ECHO_INT_ARRAY_61: + case THECHOROUTING_ECHO_INT_ARRAY_20: + case THECHOROUTING_ECHO_INT_ARRAY_61: LOG_FATAL("wrong echo received!!"); stop(); break; case F_DISCONNECTED: - LOG_TRACE_FLOW("EchoTest::test12(F_DISCONNECTED)"); + LOG_TRACE_FLOW("EchoTest::test13(F_DISCONNECTED)"); TRAN(EchoTest::initial); break; @@ -984,7 +1147,7 @@ GCFEvent::TResult EchoTest::test12(GCFEvent& e, GCFPortInterface& p) return status; } -GCFEvent::TResult EchoTest::test13(GCFEvent& e, GCFPortInterface& p) +GCFEvent::TResult EchoTest::test14(GCFEvent& e, GCFPortInterface& p) { GCFEvent::TResult status = GCFEvent::HANDLED; @@ -993,8 +1156,38 @@ GCFEvent::TResult EchoTest::test13(GCFEvent& e, GCFPortInterface& p) case F_ENTRY: { - LOG_TRACE_FLOW("EchoTest::test13(F_ENTRY)"); - TRAN(EchoTest::final); + LOG_TRACE_FLOW("EchoTest::test14(F_ENTRY)"); + THEchoRoutingPingIntArrayEvent ping; + ping.seqnr = _seqnr; + for(int i=0;i<10;i++) + ping.intArrayParam[i]=i; + _send(ping,_routingClient); + break; + } + + case THECHOROUTING_ECHO_INT_ARRAY: + { + LOG_TRACE_FLOW("EchoTest::test14(THECHOROUTING_ECHO_INT_ARRAY)"); + if(!_isServer(p)) + { + LOG_FATAL("reply received on wrong port!!"); + stop(); + } + else + { + THEchoRoutingEchoIntArrayEvent echo(e); + LOG_INFO(formatString("ECHO_INT_ARRAY received on port %s (seqnr=%d, intArrayParam=[%d,%d,%d,%d,%d,%d,%d,%d,%d,%d])",p.getName().c_str(),echo.seqnr,echo.intArrayParam[0],echo.intArrayParam[1],echo.intArrayParam[2],echo.intArrayParam[3],echo.intArrayParam[4],echo.intArrayParam[5],echo.intArrayParam[6],echo.intArrayParam[7],echo.intArrayParam[8],echo.intArrayParam[9])); + if(_seqnr != echo.seqnr) + { + LOG_FATAL("wrong seqnr received!!"); + stop(); + } + else + { + _seqnr++; + TRAN(EchoTest::test15); + } + } break; } @@ -1004,18 +1197,396 @@ GCFEvent::TResult EchoTest::test13(GCFEvent& e, GCFPortInterface& p) case THECHO_ECHO_ENUM: case THECHO_ECHO_DOUBLE: case THECHO_ECHO_STRING: + case THECHO_ECHO_INT_ARRAY: case THECHOROUTING_ECHO_UINT: case THECHOROUTING_ECHO_INT: case THECHOROUTING_ECHO_LONG: case THECHOROUTING_ECHO_ENUM: case THECHOROUTING_ECHO_DOUBLE: case THECHOROUTING_ECHO_STRING: +// case THECHOROUTING_ECHO_INT_ARRAY: + case THECHO_ECHO_INT_ARRAY_20: + case THECHO_ECHO_INT_ARRAY_61: + case THECHOROUTING_ECHO_INT_ARRAY_20: + case THECHOROUTING_ECHO_INT_ARRAY_61: LOG_FATAL("wrong echo received!!"); stop(); break; case F_DISCONNECTED: - LOG_TRACE_FLOW("EchoTest::test13(F_DISCONNECTED)"); + LOG_TRACE_FLOW("EchoTest::test14(F_DISCONNECTED)"); + TRAN(EchoTest::initial); + break; + + default: + status = GCFEvent::NOT_HANDLED; + break; + } + + return status; +} + +GCFEvent::TResult EchoTest::test15(GCFEvent& e, GCFPortInterface& p) +{ + GCFEvent::TResult status = GCFEvent::HANDLED; + + switch (e.signal) + { + + case F_ENTRY: + { + LOG_TRACE_FLOW("EchoTest::test15(F_ENTRY)"); + THEchoPingIntArray20Event ping; + ping.seqnr = _seqnr; + int numInts=20; + for(int i=0;i<numInts;i++) + ping.intArrayParam[i]=i; + _send(ping,_client); + break; + } + + case THECHO_ECHO_INT_ARRAY_20: + { + LOG_TRACE_FLOW("EchoTest::test15(THECHO_ECHO_INT_ARRAY_20)"); + if(!_isClient(p)) + { + LOG_FATAL("reply received on wrong port!!"); + stop(); + } + else + { + THEchoEchoIntArray20Event echo(e); + + int numInts=20; + int i; + char strTemp[50]; + string paramDump("["); + for(i=0;i<numInts-1;i++) + { + sprintf(strTemp,"%d,",echo.intArrayParam[i]); + paramDump += string(strTemp); + } + sprintf(strTemp,"%d]",echo.intArrayParam[i]); + paramDump += string(strTemp); + LOG_INFO(formatString("ECHO_INT_ARRAY_20 received on port %s (seqnr=%d, intArrayParam=%s)",p.getName().c_str(),echo.seqnr,paramDump.c_str())); + + if(_seqnr != echo.seqnr) + { + LOG_FATAL("wrong seqnr received!!"); + stop(); + } + else + { + _seqnr++; + TRAN(EchoTest::test16); + } + } + break; + } + + case THECHO_ECHO_UINT: + case THECHO_ECHO_INT: + case THECHO_ECHO_LONG: + case THECHO_ECHO_ENUM: + case THECHO_ECHO_DOUBLE: + case THECHO_ECHO_STRING: + case THECHO_ECHO_INT_ARRAY: + case THECHOROUTING_ECHO_UINT: + case THECHOROUTING_ECHO_INT: + case THECHOROUTING_ECHO_LONG: + case THECHOROUTING_ECHO_ENUM: + case THECHOROUTING_ECHO_DOUBLE: + case THECHOROUTING_ECHO_STRING: + case THECHOROUTING_ECHO_INT_ARRAY: +// case THECHO_ECHO_INT_ARRAY_20: + case THECHO_ECHO_INT_ARRAY_61: + case THECHOROUTING_ECHO_INT_ARRAY_20: + case THECHOROUTING_ECHO_INT_ARRAY_61: + LOG_FATAL("wrong echo received!!"); + stop(); + break; + + case F_DISCONNECTED: + LOG_TRACE_FLOW("EchoTest::test15(F_DISCONNECTED)"); + TRAN(EchoTest::initial); + break; + + default: + status = GCFEvent::NOT_HANDLED; + break; + } + + return status; +} + +GCFEvent::TResult EchoTest::test16(GCFEvent& e, GCFPortInterface& p) +{ + GCFEvent::TResult status = GCFEvent::HANDLED; + + switch (e.signal) + { + + case F_ENTRY: + { + LOG_TRACE_FLOW("EchoTest::test16(F_ENTRY)"); + THEchoPingIntArray61Event ping; + ping.seqnr = _seqnr; + int numInts=61; + for(int i=0;i<numInts;i++) + ping.intArrayParam[i]=i; + _send(ping,_client); + break; + } + + case THECHO_ECHO_INT_ARRAY_61: + { + LOG_TRACE_FLOW("EchoTest::test16(THECHO_ECHO_INT_ARRAY_61)"); + if(!_isClient(p)) + { + LOG_FATAL("reply received on wrong port!!"); + stop(); + } + else + { + THEchoEchoIntArray61Event echo(e); + + int numInts=61; + int i; + char strTemp[50]; + string paramDump("["); + for(i=0;i<numInts-1;i++) + { + sprintf(strTemp,"%d,",echo.intArrayParam[i]); + paramDump += string(strTemp); + } + sprintf(strTemp,"%d]",echo.intArrayParam[i]); + paramDump += string(strTemp); + LOG_INFO(formatString("ECHO_INT_ARRAY_61 received on port %s (seqnr=%d, intArrayParam=%s)",p.getName().c_str(),echo.seqnr,paramDump.c_str())); + + if(_seqnr != echo.seqnr) + { + LOG_FATAL("wrong seqnr received!!"); + stop(); + } + else + { + _seqnr++; + TRAN(EchoTest::test17); + } + } + break; + } + + case THECHO_ECHO_UINT: + case THECHO_ECHO_INT: + case THECHO_ECHO_LONG: + case THECHO_ECHO_ENUM: + case THECHO_ECHO_DOUBLE: + case THECHO_ECHO_STRING: + case THECHO_ECHO_INT_ARRAY: + case THECHOROUTING_ECHO_UINT: + case THECHOROUTING_ECHO_INT: + case THECHOROUTING_ECHO_LONG: + case THECHOROUTING_ECHO_ENUM: + case THECHOROUTING_ECHO_DOUBLE: + case THECHOROUTING_ECHO_STRING: + case THECHOROUTING_ECHO_INT_ARRAY: + case THECHO_ECHO_INT_ARRAY_20: +// case THECHO_ECHO_INT_ARRAY_61: + case THECHOROUTING_ECHO_INT_ARRAY_20: + case THECHOROUTING_ECHO_INT_ARRAY_61: + LOG_FATAL("wrong echo received!!"); + stop(); + break; + + case F_DISCONNECTED: + LOG_TRACE_FLOW("EchoTest::test16(F_DISCONNECTED)"); + TRAN(EchoTest::initial); + break; + + default: + status = GCFEvent::NOT_HANDLED; + break; + } + + return status; +} + +GCFEvent::TResult EchoTest::test17(GCFEvent& e, GCFPortInterface& p) +{ + GCFEvent::TResult status = GCFEvent::HANDLED; + + switch (e.signal) + { + + case F_ENTRY: + { + LOG_TRACE_FLOW("EchoTest::test17(F_ENTRY)"); + THEchoRoutingPingIntArray20Event ping; + ping.seqnr = _seqnr; + int numInts=20; + for(int i=0;i<numInts;i++) + ping.intArrayParam[i]=i; + _send(ping,_routingClient); + break; + } + + case THECHOROUTING_ECHO_INT_ARRAY_20: + { + LOG_TRACE_FLOW("EchoTest::test17(THECHOROUTING_ECHO_INT_ARRAY_20)"); + if(!_isServer(p)) + { + LOG_FATAL("reply received on wrong port!!"); + stop(); + } + else + { + THEchoRoutingEchoIntArray20Event echo(e); + + int numInts=20; + int i; + char strTemp[50]; + string paramDump("["); + for(i=0;i<numInts-1;i++) + { + sprintf(strTemp,"%d,",echo.intArrayParam[i]); + paramDump += string(strTemp); + } + sprintf(strTemp,"%d]",echo.intArrayParam[i]); + paramDump += string(strTemp); + LOG_INFO(formatString("ECHO_INT_ARRAY_20 received on port %s (seqnr=%d, intArrayParam=%s)",p.getName().c_str(),echo.seqnr,paramDump.c_str())); + + if(_seqnr != echo.seqnr) + { + LOG_FATAL("wrong seqnr received!!"); + stop(); + } + else + { + _seqnr++; + TRAN(EchoTest::test18); + } + } + break; + } + + case THECHO_ECHO_UINT: + case THECHO_ECHO_INT: + case THECHO_ECHO_LONG: + case THECHO_ECHO_ENUM: + case THECHO_ECHO_DOUBLE: + case THECHO_ECHO_STRING: + case THECHO_ECHO_INT_ARRAY: + case THECHOROUTING_ECHO_UINT: + case THECHOROUTING_ECHO_INT: + case THECHOROUTING_ECHO_LONG: + case THECHOROUTING_ECHO_ENUM: + case THECHOROUTING_ECHO_DOUBLE: + case THECHOROUTING_ECHO_STRING: + case THECHOROUTING_ECHO_INT_ARRAY: + case THECHO_ECHO_INT_ARRAY_20: + case THECHO_ECHO_INT_ARRAY_61: +// case THECHOROUTING_ECHO_INT_ARRAY_20: + case THECHOROUTING_ECHO_INT_ARRAY_61: + LOG_FATAL("wrong echo received!!"); + stop(); + break; + + case F_DISCONNECTED: + LOG_TRACE_FLOW("EchoTest::test17(F_DISCONNECTED)"); + TRAN(EchoTest::initial); + break; + + default: + status = GCFEvent::NOT_HANDLED; + break; + } + + return status; +} + +GCFEvent::TResult EchoTest::test18(GCFEvent& e, GCFPortInterface& p) +{ + GCFEvent::TResult status = GCFEvent::HANDLED; + + switch (e.signal) + { + + case F_ENTRY: + { + LOG_TRACE_FLOW("EchoTest::test18(F_ENTRY)"); + THEchoRoutingPingIntArray61Event ping; + ping.seqnr = _seqnr; + int numInts=61; + for(int i=0;i<numInts;i++) + ping.intArrayParam[i]=i; + _send(ping,_routingClient); + break; + } + + case THECHOROUTING_ECHO_INT_ARRAY_61: + { + LOG_TRACE_FLOW("EchoTest::test18(THECHOROUTING_ECHO_INT_ARRAY_61)"); + if(!_isServer(p)) + { + LOG_FATAL("reply received on wrong port!!"); + stop(); + } + else + { + THEchoRoutingEchoIntArray61Event echo(e); + + int numInts=61; + int i; + char strTemp[50]; + string paramDump("["); + for(i=0;i<numInts-1;i++) + { + sprintf(strTemp,"%d,",echo.intArrayParam[i]); + paramDump += string(strTemp); + } + sprintf(strTemp,"%d]",echo.intArrayParam[i]); + paramDump += string(strTemp); + LOG_INFO(formatString("ECHO_INT_ARRAY_61 received on port %s (seqnr=%d, intArrayParam=%s)",p.getName().c_str(),echo.seqnr,paramDump.c_str())); + + if(_seqnr != echo.seqnr) + { + LOG_FATAL("wrong seqnr received!!"); + stop(); + } + else + { + _seqnr++; + TRAN(EchoTest::final); + } + } + break; + } + + case THECHO_ECHO_UINT: + case THECHO_ECHO_INT: + case THECHO_ECHO_LONG: + case THECHO_ECHO_ENUM: + case THECHO_ECHO_DOUBLE: + case THECHO_ECHO_STRING: + case THECHO_ECHO_INT_ARRAY: + case THECHOROUTING_ECHO_UINT: + case THECHOROUTING_ECHO_INT: + case THECHOROUTING_ECHO_LONG: + case THECHOROUTING_ECHO_ENUM: + case THECHOROUTING_ECHO_DOUBLE: + case THECHOROUTING_ECHO_STRING: + case THECHOROUTING_ECHO_INT_ARRAY: + case THECHO_ECHO_INT_ARRAY_20: + case THECHO_ECHO_INT_ARRAY_61: + case THECHOROUTING_ECHO_INT_ARRAY_20: +// case THECHOROUTING_ECHO_INT_ARRAY_61: + LOG_FATAL("wrong echo received!!"); + stop(); + break; + + case F_DISCONNECTED: + LOG_TRACE_FLOW("EchoTest::test18(F_DISCONNECTED)"); TRAN(EchoTest::initial); break; @@ -1047,11 +1618,17 @@ GCFEvent::TResult EchoTest::final(GCFEvent& e, GCFPortInterface& /*p*/) case THECHO_ECHO_UINT: case THECHO_ECHO_INT: case THECHO_ECHO_LONG: + case THECHO_ECHO_ENUM: + case THECHO_ECHO_DOUBLE: case THECHO_ECHO_STRING: + case THECHO_ECHO_INT_ARRAY: case THECHOROUTING_ECHO_UINT: case THECHOROUTING_ECHO_INT: case THECHOROUTING_ECHO_LONG: + case THECHOROUTING_ECHO_ENUM: + case THECHOROUTING_ECHO_DOUBLE: case THECHOROUTING_ECHO_STRING: + case THECHOROUTING_ECHO_INT_ARRAY: LOG_FATAL("wrong echo received!!"); stop(); break; diff --git a/MAC/Test/TestHarness/THEcho/test/THEchoTest.h b/MAC/Test/TestHarness/THEcho/test/THEchoTest.h index 0ffdb8e4d8957633afcb5e76691604bec875db2c..fd7d6d8049f750a355e2d7b2d3d62186b9ce984d 100644 --- a/MAC/Test/TestHarness/THEcho/test/THEchoTest.h +++ b/MAC/Test/TestHarness/THEcho/test/THEchoTest.h @@ -69,6 +69,11 @@ class EchoTest : public GCFTask GCFEvent::TResult test11(GCFEvent& e, GCFPortInterface& p); GCFEvent::TResult test12(GCFEvent& e, GCFPortInterface& p); GCFEvent::TResult test13(GCFEvent& e, GCFPortInterface& p); + GCFEvent::TResult test14(GCFEvent& e, GCFPortInterface& p); + GCFEvent::TResult test15(GCFEvent& e, GCFPortInterface& p); + GCFEvent::TResult test16(GCFEvent& e, GCFPortInterface& p); + GCFEvent::TResult test17(GCFEvent& e, GCFPortInterface& p); + GCFEvent::TResult test18(GCFEvent& e, GCFPortInterface& p); GCFEvent::TResult final(GCFEvent& e, GCFPortInterface& p); private: