Add regression test for lp: #1824277

This commit is contained in:
Andrew Johnson
2021-05-03 14:31:24 +02:00
committed by zimoch
parent a83b3a5331
commit 40c55d65b3
3 changed files with 38 additions and 3 deletions
+2 -2
View File
@@ -126,8 +126,8 @@ regressTest_DBD += base.dbd
TESTPROD_HOST += regressTest
regressTest_SRCS += regressTest.c
regressTest_SRCS += regressTest_registerRecordDeviceDriver.cpp
TESTFILES += $(COMMON_DIR)/regressTest.dbd ../regressArray1.db ../regressHex.db ../regressLinkMS.db
TESTFILES += ../badCaLink.db
TESTFILES += $(COMMON_DIR)/regressTest.dbd ../regressArray1.db ../regressHex.db
TESTFILES += ../regressLinkMS.db ../badCaLink.db ../regressCalcout.db
TESTS += regressTest
TARGETS += $(COMMON_DIR)/simmTest.dbd
@@ -0,0 +1,6 @@
record(calcout, "cout") {
field(INPA, "99")
field(INPB, "99")
field(INPC, "99")
field(INPD, "99")
}
+30 -1
View File
@@ -134,15 +134,44 @@ void testCADisconn(void)
testdbPutFieldFail(-1, "ai:disconn.PROC", DBF_LONG, 1);
testdbGetFieldEqual("ai:disconn.SEVR", DBF_LONG, INVALID_ALARM);
testdbGetFieldEqual("ai:disconn.STAT", DBF_LONG, LINK_ALARM);
testIocShutdownOk();
testdbCleanup();
}
/* lp:1824277 Regression in calcout, setting links at runtime */
static void
testSpecialLinks(void)
{
testDiag("In testSpecialLinks()");
startRegressTestIoc("regressCalcout.db");
testdbPutFieldOk("cout.INPA", DBF_STRING, "10");
testdbGetFieldEqual("cout.A", DBF_LONG, 10);
testdbGetFieldEqual("cout.INAV", DBF_LONG, calcoutINAV_CON);
testdbPutFieldOk("cout.INPB", DBF_STRING, "{\"const\":20}");
testdbGetFieldEqual("cout.B", DBF_LONG, 20);
testdbGetFieldEqual("cout.INBV", DBF_LONG, calcoutINAV_CON);
testdbPutFieldOk("cout.INPC", DBF_STRING, "cout.A");
testdbGetFieldEqual("cout.C", DBF_LONG, 99);
testdbGetFieldEqual("cout.INCV", DBF_LONG, calcoutINAV_LOC);
testdbPutFieldOk("cout.INPD", DBF_STRING, "no-such-pv");
testdbGetFieldEqual("cout.D", DBF_LONG, 99);
testdbGetFieldEqual("cout.INDV", DBF_LONG, calcoutINAV_EXT_NC);
testIocShutdownOk();
testdbCleanup();
}
MAIN(regressTest)
{
testPlan(34);
testPlan(46);
testArrayLength1();
testHexConstantLinks();
testLinkMS();
testCADisconn();
testSpecialLinks();
return testDone();
}