123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424 |
- /*
- * ctkEventDispatcherLocalTest.cpp
- * ctkEventBusTest
- *
- * Created by Daniele Giunchi on 20/04/10.
- * Copyright 2009 B3C. All rights reserved.
- *
- * See Licence at: http://tiny.cc/QXJ4D
- *
- */
- #include "ctkTestSuite.h"
- #include <ctkEventDispatcherLocal.h>
- #include <ctkBusEvent.h>
- using namespace ctkEventBus;
- //-------------------------------------------------------------------------
- /**
- Class name: ctkObjectCustom
- Custom object needed for testing.
- */
- class testObjectCustomForDispatcherLocal : public QObject {
- Q_OBJECT
- public:
- /// constructor.
- testObjectCustomForDispatcherLocal();
- /// Return the var's value.
- int var() {return m_Var;}
- public Q_SLOTS:
- /// Test slot that will increment the value of m_Var when an UPDATE_OBJECT event is raised.
- // no return value
- void setObjectValue0(){};
- void setObjectValue1(int v1){QVERIFY(v1 != 0);};
- void setObjectValue2(int v1, int v2){QVERIFY(v1 != 0);QVERIFY(v2 != 0);};
- void setObjectValue3(int v1, int v2, int v3){QVERIFY(v1 != 0);QVERIFY(v2 != 0);QVERIFY(v3 != 0);};
- void setObjectValue4(int v1, int v2, int v3, int v4){QVERIFY(v1 != 0);QVERIFY(v2 != 0);QVERIFY(v3 != 0);QVERIFY(v4 != 0);};
- void setObjectValue5(int v1, int v2, int v3, int v4, int v5){QVERIFY(v1 != 0);QVERIFY(v2 != 0);QVERIFY(v3 != 0);QVERIFY(v4 != 0);QVERIFY(v5 != 0);};
- void setObjectValue6(int v1, int v2, int v3, int v4, int v5, int v6){QVERIFY(v1 != 0);QVERIFY(v2 != 0);QVERIFY(v3 != 0);QVERIFY(v4 != 0);QVERIFY(v5 != 0);QVERIFY(v6 != 0);};
- void setObjectValue7(int v1, int v2, int v3, int v4, int v5, int v6, int v7){QVERIFY(v1 != 0);QVERIFY(v2 != 0);QVERIFY(v3 != 0);QVERIFY(v4 != 0);QVERIFY(v5 != 0);QVERIFY(v6 != 0);QVERIFY(v7 != 0);};
- void setObjectValue8(int v1, int v2, int v3, int v4, int v5, int v6, int v7, int v8){QVERIFY(v1 != 0);QVERIFY(v2 != 0);QVERIFY(v3 != 0);QVERIFY(v4 != 0);QVERIFY(v5 != 0);QVERIFY(v6 != 0);QVERIFY(v7 != 0);QVERIFY(v8 != 0);};
- void setObjectValue9(int v1, int v2, int v3, int v4, int v5, int v6, int v7, int v8, int v9){QVERIFY(v1 != 0);QVERIFY(v2 != 0);QVERIFY(v3 != 0);QVERIFY(v4 != 0);QVERIFY(v5 != 0);QVERIFY(v6 != 0);QVERIFY(v7 != 0);QVERIFY(v8 != 0);QVERIFY(v9 != 0);};
- void setObjectValue10(int v1, int v2, int v3, int v4, int v5, int v6, int v7, int v8, int v9, int v10){QVERIFY(v1 != 0);QVERIFY(v2 != 0);QVERIFY(v3 != 0);QVERIFY(v4 != 0);QVERIFY(v5 != 0);QVERIFY(v6 != 0);QVERIFY(v7 != 0);QVERIFY(v8 != 0);QVERIFY(v9 != 0);QVERIFY(v10 != 0);};
- // with return value
- int setObjectValue0WithReturnValue(){ return 0;};
- int setObjectValue1WithReturnValue(int v1){return v1;};
- int setObjectValue2WithReturnValue(int v1, int v2){return v1 + v2;};
- int setObjectValue3WithReturnValue(int v1, int v2, int v3){return v1 + v2 + v3;};
- int setObjectValue4WithReturnValue(int v1, int v2, int v3, int v4){return v1 + v2 + v3 + v4;};
- int setObjectValue5WithReturnValue(int v1, int v2, int v3, int v4, int v5){return v1 + v2 + v3 + v4 +v5;};
- int setObjectValue6WithReturnValue(int v1, int v2, int v3, int v4, int v5, int v6){return v1 + v2 + v3 + v4 +v5 + v6;};
- int setObjectValue7WithReturnValue(int v1, int v2, int v3, int v4, int v5, int v6, int v7){return v1 + v2 + v3 + v4 +v5 + v6 + v7;};
- int setObjectValue8WithReturnValue(int v1, int v2, int v3, int v4, int v5, int v6, int v7, int v8){return v1 + v2 + v3 + v4 +v5 + v6 + v7 + v8;};
- int setObjectValue9WithReturnValue(int v1, int v2, int v3, int v4, int v5, int v6, int v7, int v8, int v9){return v1 + v2 + v3 + v4 +v5 + v6 + v7 + v8 + v9;};
- int setObjectValue10WithReturnValue(int v1, int v2, int v3, int v4, int v5, int v6, int v7, int v8, int v9, int v10){return v1 + v2 + v3 + v4 +v5 + v6 + v7 + v8 + v9 + v10;};
- Q_SIGNALS:
- void signalSetObjectValue0();
- void signalSetObjectValue1(int v1);
- void signalSetObjectValue2(int v1, int v2);
- void signalSetObjectValue3(int v1, int v2, int v3);
- void signalSetObjectValue4(int v1, int v2, int v3, int v4);
- void signalSetObjectValue5(int v1, int v2, int v3, int v4, int v5);
- void signalSetObjectValue6(int v1, int v2, int v3, int v4, int v5, int v6);
- void signalSetObjectValue7(int v1, int v2, int v3, int v4, int v5, int v6, int v7);
- void signalSetObjectValue8(int v1, int v2, int v3, int v4, int v5, int v6, int v7, int v8);
- void signalSetObjectValue9(int v1, int v2, int v3, int v4, int v5, int v6, int v7, int v8, int v9);
- void signalSetObjectValue10(int v1, int v2, int v3, int v4, int v5, int v6, int v7, int v8, int v9, int v10);
- int signalSetObjectValue0WithReturnValue();
- int signalSetObjectValue1WithReturnValue(int v1);
- int signalSetObjectValue2WithReturnValue(int v1, int v2);
- int signalSetObjectValue3WithReturnValue(int v1, int v2, int v3);
- int signalSetObjectValue4WithReturnValue(int v1, int v2, int v3, int v4);
- int signalSetObjectValue5WithReturnValue(int v1, int v2, int v3, int v4, int v5);
- int signalSetObjectValue6WithReturnValue(int v1, int v2, int v3, int v4, int v5, int v6);
- int signalSetObjectValue7WithReturnValue(int v1, int v2, int v3, int v4, int v5, int v6, int v7);
- int signalSetObjectValue8WithReturnValue(int v1, int v2, int v3, int v4, int v5, int v6, int v7, int v8);
- int signalSetObjectValue9WithReturnValue(int v1, int v2, int v3, int v4, int v5, int v6, int v7, int v8, int v9);
- int signalSetObjectValue10WithReturnValue(int v1, int v2, int v3, int v4, int v5, int v6, int v7, int v8, int v9, int v10);
- private:
- int m_Var; ///< Test var.
- };
- testObjectCustomForDispatcherLocal::testObjectCustomForDispatcherLocal() : m_Var(0) {
- }
- //-------------------------------------------------------------------------
- /**
- Class name: ctkEventDispatcherLocalTest
- This class implements the test suite for ctkEventDispatcherlocal/
- */
- //! <title>
- //ctkEventDispatcherLocal
- //! </title>
- //! <description>
- //ctkEventDispatcherLocal allows dispatching events coming from local
- //application to attached observers.
- //! </description>
- class ctkEventDispatcherLocalTest : public QObject {
- Q_OBJECT
- private Q_SLOTS:
- /// Initialize test variables
- void initTestCase() {
- m_ObjTest = new testObjectCustomForDispatcherLocal;
- m_EventDispatcherLocal =new ctkEventBus::ctkEventDispatcherLocal;
- }
- /// Cleanup test variables memory allocation.
- void cleanupTestCase() {
- delete m_ObjTest;
- delete m_EventDispatcherLocal;
- }
- /// ctkEventDispatcherLocal allocation test case.
- void ctkEventDispatcherLocalAllocationTest();
- /// notify event test which cover all the possibilities in terms of arguments
- void notifyEventWithoutReturnValueTest();
- /// notify event test which cover all the possibilities in terms of arguments with returned value
- void notifyEventWitReturnValueTest();
- private:
- testObjectCustomForDispatcherLocal *m_ObjTest; ///< Test Object var
- ctkEventDispatcherLocal *m_EventDispatcherLocal; ///< Test var.
- };
- void ctkEventDispatcherLocalTest::ctkEventDispatcherLocalAllocationTest() {
- QVERIFY(m_EventDispatcherLocal != NULL);
- }
- void ctkEventDispatcherLocalTest::notifyEventWithoutReturnValueTest() {
- //test with events which returns no value
- QString topic0 = "ctk/local/setObjectValue0";
- QString topic1 = "ctk/local/setObjectValue1";
- QString topic2 = "ctk/local/setObjectValue2";
- QString topic3 = "ctk/local/setObjectValue3";
- QString topic4 = "ctk/local/setObjectValue4";
- QString topic5 = "ctk/local/setObjectValue5";
- QString topic6 = "ctk/local/setObjectValue6";
- QString topic7 = "ctk/local/setObjectValue7";
- QString topic8 = "ctk/local/setObjectValue8";
- QString topic9 = "ctk/local/setObjectValue9";
- QString topic10 = "ctk/local/setObjectValue10";
- //signal
- ctkBusEvent *propSignal0 = new ctkBusEvent(topic0, ctkEventTypeLocal, ctkSignatureTypeSignal, m_ObjTest, "signalSetObjectValue0()");
- m_EventDispatcherLocal->registerSignal(*propSignal0);
- ctkBusEvent *propSignal1 = new ctkBusEvent(topic1, ctkEventTypeLocal, ctkSignatureTypeSignal, m_ObjTest, "signalSetObjectValue1(int)");
- m_EventDispatcherLocal->registerSignal(*propSignal1);
- ctkBusEvent *propSignal2 = new ctkBusEvent(topic2, ctkEventTypeLocal, ctkSignatureTypeSignal, m_ObjTest, "signalSetObjectValue2(int,int)");
- m_EventDispatcherLocal->registerSignal(*propSignal2);
- ctkBusEvent *propSignal3 = new ctkBusEvent(topic3, ctkEventTypeLocal, ctkSignatureTypeSignal, m_ObjTest, "signalSetObjectValue3(int,int,int)");
- m_EventDispatcherLocal->registerSignal(*propSignal3);
- ctkBusEvent *propSignal4 = new ctkBusEvent(topic4, ctkEventTypeLocal, ctkSignatureTypeSignal, m_ObjTest, "signalSetObjectValue4(int,int,int,int)");
- m_EventDispatcherLocal->registerSignal(*propSignal4);
- ctkBusEvent *propSignal5 = new ctkBusEvent(topic5, ctkEventTypeLocal, ctkSignatureTypeSignal, m_ObjTest, "signalSetObjectValue5(int,int,int,int,int)");
- m_EventDispatcherLocal->registerSignal(*propSignal5);
- ctkBusEvent *propSignal6 = new ctkBusEvent(topic6, ctkEventTypeLocal, ctkSignatureTypeSignal, m_ObjTest, "signalSetObjectValue6(int,int,int,int,int,int)");
- m_EventDispatcherLocal->registerSignal(*propSignal6);
- ctkBusEvent *propSignal7 = new ctkBusEvent(topic7, ctkEventTypeLocal, ctkSignatureTypeSignal, m_ObjTest, "signalSetObjectValue7(int,int,int,int,int,int,int)");
- m_EventDispatcherLocal->registerSignal(*propSignal7);
- ctkBusEvent *propSignal8 = new ctkBusEvent(topic8, ctkEventTypeLocal, ctkSignatureTypeSignal, m_ObjTest, "signalSetObjectValue8(int,int,int,int,int,int,int,int)");
- m_EventDispatcherLocal->registerSignal(*propSignal8);
- ctkBusEvent *propSignal9 = new ctkBusEvent(topic9, ctkEventTypeLocal, ctkSignatureTypeSignal, m_ObjTest, "signalSetObjectValue9(int,int,int,int,int,int,int,int,int)");
- m_EventDispatcherLocal->registerSignal(*propSignal9);
- ctkBusEvent *propSignal10 = new ctkBusEvent(topic10, ctkEventTypeLocal, ctkSignatureTypeSignal, m_ObjTest, "signalSetObjectValue10(int,int,int,int,int,int,int,int,int,int)");
- m_EventDispatcherLocal->registerSignal(*propSignal10);
- //callback
- ctkBusEvent *propCallback0 = new ctkBusEvent(topic0, ctkEventTypeLocal, ctkSignatureTypeCallback, m_ObjTest, "setObjectValue0()");
- m_EventDispatcherLocal->addObserver(*propCallback0);
- ctkBusEvent *propCallback1 = new ctkBusEvent(topic1, ctkEventTypeLocal, ctkSignatureTypeCallback, m_ObjTest, "setObjectValue1(int)");
- m_EventDispatcherLocal->addObserver(*propCallback1);
- ctkBusEvent *propCallback2 = new ctkBusEvent(topic2, ctkEventTypeLocal, ctkSignatureTypeCallback, m_ObjTest, "setObjectValue2(int,int)");
- m_EventDispatcherLocal->addObserver(*propCallback2);
- ctkBusEvent *propCallback3 = new ctkBusEvent(topic3, ctkEventTypeLocal, ctkSignatureTypeCallback, m_ObjTest, "setObjectValue3(int,int,int)");
- m_EventDispatcherLocal->addObserver(*propCallback3);
- ctkBusEvent *propCallback4 = new ctkBusEvent(topic4, ctkEventTypeLocal, ctkSignatureTypeCallback, m_ObjTest, "setObjectValue4(int,int,int,int)");
- m_EventDispatcherLocal->addObserver(*propCallback4);
- ctkBusEvent *propCallback5 = new ctkBusEvent(topic5, ctkEventTypeLocal, ctkSignatureTypeCallback, m_ObjTest, "setObjectValue5(int,int,int,int,int)");
- m_EventDispatcherLocal->addObserver(*propCallback5);
- ctkBusEvent *propCallback6 = new ctkBusEvent(topic6, ctkEventTypeLocal, ctkSignatureTypeCallback, m_ObjTest, "setObjectValue6(int,int,int,int,int,int)");
- m_EventDispatcherLocal->addObserver(*propCallback6);
- ctkBusEvent *propCallback7 = new ctkBusEvent(topic7, ctkEventTypeLocal, ctkSignatureTypeCallback, m_ObjTest, "setObjectValue7(int,int,int,int,int,int,int)");
- m_EventDispatcherLocal->addObserver(*propCallback7);
- ctkBusEvent *propCallback8 = new ctkBusEvent(topic8, ctkEventTypeLocal, ctkSignatureTypeCallback, m_ObjTest, "setObjectValue8(int,int,int,int,int,int,int,int)");
- m_EventDispatcherLocal->addObserver(*propCallback8);
- ctkBusEvent *propCallback9 = new ctkBusEvent(topic9, ctkEventTypeLocal, ctkSignatureTypeCallback, m_ObjTest, "setObjectValue9(int,int,int,int,int,int,int,int,int)");
- m_EventDispatcherLocal->addObserver(*propCallback9);
- ctkBusEvent *propCallback10 = new ctkBusEvent(topic10, ctkEventTypeLocal, ctkSignatureTypeCallback, m_ObjTest, "setObjectValue10(int,int,int,int,int,int,int,int,int,int)");
- m_EventDispatcherLocal->addObserver(*propCallback10);
- ctkEventArgumentsList argList;
- m_EventDispatcherLocal->notifyEvent(*propSignal0);
- m_EventDispatcherLocal->notifyEvent(*propSignal0, &argList);
- int argCounter=1;
- for( ; argCounter <= 10; argCounter++) {
- if(argCounter != 0) {
- argList.append(ctkEventArgument(int, argCounter));
- }
- QString topicToNotify = "ctk/local/setObjectValue";
- topicToNotify.append(QString::number(argCounter));
- ctkBusEvent *notEvent = new ctkBusEvent(topicToNotify, ctkDictionary());
- m_EventDispatcherLocal->notifyEvent(*notEvent, &argList);
- delete notEvent;
- }
- //delete all events
- delete propSignal0;
- delete propSignal1;
- delete propSignal2;
- delete propSignal3;
- delete propSignal4;
- delete propSignal5;
- delete propSignal6;
- delete propSignal7;
- delete propSignal8;
- delete propSignal9;
- delete propSignal10;
- //delete all events
- delete propCallback0;
- delete propCallback1;
- delete propCallback2;
- delete propCallback3;
- delete propCallback4;
- delete propCallback5;
- delete propCallback6;
- delete propCallback7;
- delete propCallback8;
- delete propCallback9;
- delete propCallback10;
- }
- void ctkEventDispatcherLocalTest::notifyEventWitReturnValueTest() {
- //test with events which returns no value
- QString topic0 = "ctk/local/setObjectValue0WithReturnValue";
- QString topic1 = "ctk/local/setObjectValue1WithReturnValue";
- QString topic2 = "ctk/local/setObjectValue2WithReturnValue";
- QString topic3 = "ctk/local/setObjectValue3WithReturnValue";
- QString topic4 = "ctk/local/setObjectValue4WithReturnValue";
- QString topic5 = "ctk/local/setObjectValue5WithReturnValue";
- QString topic6 = "ctk/local/setObjectValue6WithReturnValue";
- QString topic7 = "ctk/local/setObjectValue7WithReturnValue";
- QString topic8 = "ctk/local/setObjectValue8WithReturnValue";
- QString topic9 = "ctk/local/setObjectValue9WithReturnValue";
- QString topic10 = "ctk/local/setObjectValue10WithReturnValue";
- //signal
- ctkBusEvent *propSignal0 = new ctkBusEvent(topic0, ctkEventTypeLocal, ctkSignatureTypeSignal, m_ObjTest, "signalSetObjectValue0WithReturnValue()");
- m_EventDispatcherLocal->registerSignal(*propSignal0);
- ctkBusEvent *propSignal1 = new ctkBusEvent(topic1, ctkEventTypeLocal, ctkSignatureTypeSignal, m_ObjTest, "signalSetObjectValue1WithReturnValue(int)");
- m_EventDispatcherLocal->registerSignal(*propSignal1);
- ctkBusEvent *propSignal2 = new ctkBusEvent(topic2, ctkEventTypeLocal, ctkSignatureTypeSignal, m_ObjTest, "signalSetObjectValue2WithReturnValue(int,int)");
- m_EventDispatcherLocal->registerSignal(*propSignal2);
- ctkBusEvent *propSignal3 = new ctkBusEvent(topic3, ctkEventTypeLocal, ctkSignatureTypeSignal, m_ObjTest, "signalSetObjectValue3WithReturnValue(int,int,int)");
- m_EventDispatcherLocal->registerSignal(*propSignal3);
- ctkBusEvent *propSignal4 = new ctkBusEvent(topic4, ctkEventTypeLocal, ctkSignatureTypeSignal, m_ObjTest, "signalSetObjectValue4WithReturnValue(int,int,int,int)");
- m_EventDispatcherLocal->registerSignal(*propSignal4);
- ctkBusEvent *propSignal5 = new ctkBusEvent(topic5, ctkEventTypeLocal, ctkSignatureTypeSignal, m_ObjTest, "signalSetObjectValue5WithReturnValue(int,int,int,int,int)");
- m_EventDispatcherLocal->registerSignal(*propSignal5);
- ctkBusEvent *propSignal6 = new ctkBusEvent(topic6, ctkEventTypeLocal, ctkSignatureTypeSignal, m_ObjTest, "signalSetObjectValue6WithReturnValue(int,int,int,int,int,int)");
- m_EventDispatcherLocal->registerSignal(*propSignal6);
- ctkBusEvent *propSignal7 = new ctkBusEvent(topic7, ctkEventTypeLocal, ctkSignatureTypeSignal, m_ObjTest, "signalSetObjectValue7WithReturnValue(int,int,int,int,int,int,int)");
- m_EventDispatcherLocal->registerSignal(*propSignal7);
- ctkBusEvent *propSignal8 = new ctkBusEvent(topic8, ctkEventTypeLocal, ctkSignatureTypeSignal, m_ObjTest, "signalSetObjectValue8WithReturnValue(int,int,int,int,int,int,int,int)");
- m_EventDispatcherLocal->registerSignal(*propSignal8);
- ctkBusEvent *propSignal9 = new ctkBusEvent(topic9, ctkEventTypeLocal, ctkSignatureTypeSignal, m_ObjTest, "signalSetObjectValue9WithReturnValue(int,int,int,int,int,int,int,int,int)");
- m_EventDispatcherLocal->registerSignal(*propSignal9);
- ctkBusEvent *propSignal10 = new ctkBusEvent(topic10, ctkEventTypeLocal, ctkSignatureTypeSignal, m_ObjTest, "signalSetObjectValue10WithReturnValue(int,int,int,int,int,int,int,int,int,int)");
- m_EventDispatcherLocal->registerSignal(*propSignal10);
- //callback
- ctkBusEvent *propCallback0 = new ctkBusEvent(topic0, ctkEventTypeLocal, ctkSignatureTypeCallback, m_ObjTest, "setObjectValue0WithReturnValue()");
- bool result = m_EventDispatcherLocal->addObserver(*propCallback0);
- ctkBusEvent *propCallback1 = new ctkBusEvent(topic1, ctkEventTypeLocal, ctkSignatureTypeCallback, m_ObjTest, "setObjectValue1WithReturnValue(int)");
- result = m_EventDispatcherLocal->addObserver(*propCallback1);
- ctkBusEvent *propCallback2 = new ctkBusEvent(topic2, ctkEventTypeLocal, ctkSignatureTypeCallback, m_ObjTest, "setObjectValue2WithReturnValue(int,int)");
- result = m_EventDispatcherLocal->addObserver(*propCallback2);
- ctkBusEvent *propCallback3 = new ctkBusEvent(topic3, ctkEventTypeLocal, ctkSignatureTypeCallback, m_ObjTest, "setObjectValue3WithReturnValue(int,int,int)");
- result = m_EventDispatcherLocal->addObserver(*propCallback3);
- ctkBusEvent *propCallback4 = new ctkBusEvent(topic4, ctkEventTypeLocal, ctkSignatureTypeCallback, m_ObjTest, "setObjectValue4WithReturnValue(int,int,int,int)");
- result = m_EventDispatcherLocal->addObserver(*propCallback4);
- ctkBusEvent *propCallback5 = new ctkBusEvent(topic5, ctkEventTypeLocal, ctkSignatureTypeCallback, m_ObjTest, "setObjectValue5WithReturnValue(int,int,int,int,int)");
- result = m_EventDispatcherLocal->addObserver(*propCallback5);
- ctkBusEvent *propCallback6 = new ctkBusEvent(topic6, ctkEventTypeLocal, ctkSignatureTypeCallback, m_ObjTest, "setObjectValue6WithReturnValue(int,int,int,int,int,int)");
- result = m_EventDispatcherLocal->addObserver(*propCallback6);
- ctkBusEvent *propCallback7 = new ctkBusEvent(topic7, ctkEventTypeLocal, ctkSignatureTypeCallback, m_ObjTest, "setObjectValue7WithReturnValue(int,int,int,int,int,int,int)");
- result = m_EventDispatcherLocal->addObserver(*propCallback7);
- ctkBusEvent *propCallback8 = new ctkBusEvent(topic8, ctkEventTypeLocal, ctkSignatureTypeCallback, m_ObjTest, "setObjectValue8WithReturnValue(int,int,int,int,int,int,int,int)");
- result = m_EventDispatcherLocal->addObserver(*propCallback8);
- ctkBusEvent *propCallback9 = new ctkBusEvent(topic9, ctkEventTypeLocal, ctkSignatureTypeCallback, m_ObjTest, "setObjectValue9WithReturnValue(int,int,int,int,int,int,int,int,int)");
- result = m_EventDispatcherLocal->addObserver(*propCallback9);
- ctkBusEvent *propCallback10 = new ctkBusEvent(topic10, ctkEventTypeLocal, ctkSignatureTypeCallback, m_ObjTest, "setObjectValue10WithReturnValue(int,int,int,int,int,int,int,int,int,int)");
- result = m_EventDispatcherLocal->addObserver(*propCallback10);
- ctkEventArgumentsList argList;
- int returnValue = -1;
- ctkGenericReturnArgument ret_val = ctkEventReturnArgument(int,returnValue);
- int argCounter=0;
- bool ret(false);
- for( ; argCounter <= 10; argCounter++) {
- returnValue = -1;
- int *toAppend = new int(argCounter);
- if(argCounter != 0) {
- argList.append(ctkEventArgument(int, *toAppend));
- }
- QString topicToNotify = "ctk/local/setObjectValue";
- topicToNotify.append(QString::number(argCounter));
- topicToNotify.append("WithReturnValue");
- ctkBusEvent *notEvent = new ctkBusEvent(topicToNotify, ctkDictionary());
- m_EventDispatcherLocal->notifyEvent(*notEvent, &argList, &ret_val);
- int c = 0, size = argList.count(), tempSum = 0;
- for(; c<size;c++) {
- tempSum += *((int*)(argList.at(c).data()));
- }
- ret = returnValue == tempSum;
- QVERIFY(ret);
- delete notEvent;
- }
- for( ;argCounter < 10; argCounter++) {
- int *i = (int *)(argList.at(argCounter).data());
- delete i;
- }
- //delete all events
- delete propSignal0;
- delete propSignal1;
- delete propSignal2;
- delete propSignal3;
- delete propSignal4;
- delete propSignal5;
- delete propSignal6;
- delete propSignal7;
- delete propSignal8;
- delete propSignal9;
- delete propSignal10;
- //delete all events
- delete propCallback0;
- delete propCallback1;
- delete propCallback2;
- delete propCallback3;
- delete propCallback4;
- delete propCallback5;
- delete propCallback6;
- delete propCallback7;
- delete propCallback8;
- delete propCallback9;
- delete propCallback10;
- }
- CTK_REGISTER_TEST(ctkEventDispatcherLocalTest);
- #include "ctkEventDispatcherLocalTest.moc"
|