resurrect testpvalink
This commit is contained in:
@ -29,8 +29,10 @@
|
||||
#include "pvif.h"
|
||||
#include "tpool.h"
|
||||
|
||||
extern int pvaLinkDebug;
|
||||
extern int pvaLinkIsolate;
|
||||
extern "C" {
|
||||
epicsShareExtern int pvaLinkDebug;
|
||||
epicsShareExtern int pvaLinkIsolate;
|
||||
}
|
||||
|
||||
#if 0
|
||||
# define TRACE(X) std::cerr<<"PVAL "<<__func__<<" " X <<"\n"
|
||||
|
@ -71,7 +71,7 @@ void pvaLinkChannel::open()
|
||||
} catch(std::exception& e){
|
||||
errlogPrintf("failed to find in QSRV; %s\n", key.first.c_str());
|
||||
}
|
||||
if(!chan) {
|
||||
if(!pvaLinkIsolate && !chan) {
|
||||
chan = pvaGlobal->provider_remote.connect(key.first);
|
||||
TRACE(<<"Remote "<<key.first);
|
||||
}
|
||||
|
@ -14,6 +14,10 @@ p2pTestIoc_DBD += base.dbd
|
||||
# Tests explicitly create/destory PDB provider
|
||||
#p2pTestIoc_DBD += qsrv.dbd
|
||||
|
||||
TARGETS += $(COMMON_DIR)/pvaLinkTestIoc.dbd
|
||||
pvaLinkTestIoc_DBD += base.dbd
|
||||
pvaLinkTestIoc_DBD += qsrv.dbd
|
||||
|
||||
PROD_SRCS += utilitiesx.cpp
|
||||
PROD_LIBS += pvAccess pvData
|
||||
PROD_LIBS += $(EPICS_BASE_IOC_LIBS)
|
||||
@ -43,11 +47,11 @@ TESTS += testpdb
|
||||
PROD_HOST += check_consist
|
||||
check_consist_SRCS += check_consist.cpp
|
||||
|
||||
#TESTPROD_HOST += testpvalink
|
||||
TESTPROD_HOST += testpvalink
|
||||
testpvalink_SRCS += testpvalink.cpp
|
||||
testpvalink_SRCS += p2pTestIoc_registerRecordDeviceDriver.cpp
|
||||
testpvalink_SRCS += pvaLinkTestIoc_registerRecordDeviceDriver.cpp
|
||||
testpvalink_LIBS += qsrv
|
||||
#TESTS += testpvalink
|
||||
TESTS += testpvalink
|
||||
|
||||
ifdef BASE_3_16
|
||||
TESTPROD_HOST += testgroupconfig
|
||||
|
@ -39,7 +39,7 @@ void testPut()
|
||||
testDiag("==== testPut ====");
|
||||
testdbGetFieldEqual("target:li2.VAL", DBF_LONG, 43);
|
||||
testdbGetFieldEqual("src:li2.VAL", DBF_LONG, 0);
|
||||
testdbGetFieldEqual("src:li2.INP", DBF_STRING, "{\"pva\":\"target:l2\"}");
|
||||
testdbGetFieldEqual("src:li2.OUT", DBF_STRING, "{\"pva\":\"target:li2\"}");
|
||||
|
||||
testdbPutFieldOk("src:li2.VAL", DBF_LONG, 14);
|
||||
|
||||
@ -50,11 +50,11 @@ void testPut()
|
||||
} // namespace
|
||||
|
||||
extern "C"
|
||||
void p2pTestIoc_registerRecordDeviceDriver(struct dbBase *);
|
||||
void pvaLinkTestIoc_registerRecordDeviceDriver(struct dbBase *);
|
||||
|
||||
MAIN(testpvalink)
|
||||
{
|
||||
testPlan(0);
|
||||
testPlan(15);
|
||||
|
||||
// Disable PVA client provider, use local/QSRV provider
|
||||
pvaLinkIsolate = 1;
|
||||
@ -63,8 +63,8 @@ MAIN(testpvalink)
|
||||
try {
|
||||
TestIOC IOC;
|
||||
|
||||
testdbReadDatabase("p2pTestIoc.dbd", NULL, NULL);
|
||||
p2pTestIoc_registerRecordDeviceDriver(pdbbase);
|
||||
testdbReadDatabase("pvaLinkTestIoc.dbd", NULL, NULL);
|
||||
pvaLinkTestIoc_registerRecordDeviceDriver(pdbbase);
|
||||
testdbReadDatabase("testpvalink.db", NULL, NULL);
|
||||
|
||||
IOC.init();
|
||||
|
@ -17,5 +17,5 @@ record(longin, "target:li2") {
|
||||
}
|
||||
|
||||
record(longout, "src:li2") {
|
||||
field(OUT, {pva:"target:li"})
|
||||
field(OUT, {pva:"target:li2"})
|
||||
}
|
||||
|
Reference in New Issue
Block a user