mirror of
https://github.com/FairRootGroup/FairMQ.git
synced 2025-10-15 09:31:45 +00:00
Add FairMQ tests (PUB-SUB, PUSH-PULL, REQ-REP).
This commit is contained in:
committed by
Mohammad Al-Turany
parent
fbf7dbf2ba
commit
f13bb5995d
65
fairmq/test/pub-sub/runTestSub.cxx
Normal file
65
fairmq/test/pub-sub/runTestSub.cxx
Normal file
@@ -0,0 +1,65 @@
|
||||
/********************************************************************************
|
||||
* Copyright (C) 2014 GSI Helmholtzzentrum fuer Schwerionenforschung GmbH *
|
||||
* *
|
||||
* This software is distributed under the terms of the *
|
||||
* GNU Lesser General Public Licence version 3 (LGPL) version 3, *
|
||||
* copied verbatim in the file "LICENSE" *
|
||||
********************************************************************************/
|
||||
/**
|
||||
* runTestSub.cxx
|
||||
*
|
||||
* @since 2015-09-05
|
||||
* @author A. Rybalchenko
|
||||
*/
|
||||
|
||||
#include <string>
|
||||
|
||||
#include "FairMQLogger.h"
|
||||
#include "FairMQTestSub.h"
|
||||
|
||||
#ifdef NANOMSG
|
||||
#include "FairMQTransportFactoryNN.h"
|
||||
#else
|
||||
#include "FairMQTransportFactoryZMQ.h"
|
||||
#endif
|
||||
|
||||
int main(int argc, char** argv)
|
||||
{
|
||||
FairMQTestSub testSub;
|
||||
testSub.CatchSignals();
|
||||
|
||||
#ifdef NANOMSG
|
||||
testSub.SetTransport(new FairMQTransportFactoryNN());
|
||||
#else
|
||||
testSub.SetTransport(new FairMQTransportFactoryZMQ());
|
||||
#endif
|
||||
|
||||
testSub.SetProperty(FairMQTestSub::Id, "testSub_" + std::to_string(getpid()));
|
||||
|
||||
FairMQChannel controlChannel("push", "connect", "tcp://127.0.0.1:5555");
|
||||
controlChannel.UpdateRateLogging(0);
|
||||
testSub.fChannels["control"].push_back(controlChannel);
|
||||
|
||||
FairMQChannel subChannel("sub", "connect", "tcp://127.0.0.1:5556");
|
||||
subChannel.UpdateRateLogging(0);
|
||||
testSub.fChannels["data"].push_back(subChannel);
|
||||
|
||||
testSub.ChangeState("INIT_DEVICE");
|
||||
testSub.WaitForEndOfState("INIT_DEVICE");
|
||||
|
||||
testSub.ChangeState("INIT_TASK");
|
||||
testSub.WaitForEndOfState("INIT_TASK");
|
||||
|
||||
testSub.ChangeState("RUN");
|
||||
testSub.WaitForEndOfState("RUN");
|
||||
|
||||
testSub.ChangeState("RESET_TASK");
|
||||
testSub.WaitForEndOfState("RESET_TASK");
|
||||
|
||||
testSub.ChangeState("RESET_DEVICE");
|
||||
testSub.WaitForEndOfState("RESET_DEVICE");
|
||||
|
||||
testSub.ChangeState("END");
|
||||
|
||||
return 0;
|
||||
}
|
Reference in New Issue
Block a user