diff --git a/src/libCom/test/Makefile b/src/libCom/test/Makefile index b54ae15f6..2c54b85a3 100644 --- a/src/libCom/test/Makefile +++ b/src/libCom/test/Makefile @@ -6,9 +6,14 @@ PROD_LIBS += Com USR_LIBS_hpux += cma +epicsListTest_SRCS += epicsListTest.cpp PROD += epicsListTest OBJS_IOC += epicsListTest +epicsAlgorithmTest_SRCS += epicsAlgorithmTest.cpp +PROD += epicsAlgorithmTest +OBJS_IOC += epicsAlgorithmTest + epicsTimeTestHost_SRCS += epicsTimeTestMain.cpp epicsTimeTest.cpp PROD += epicsTimeTestHost OBJS_IOC += epicsTimeTest diff --git a/src/libCom/test/epicsAlgorithmTest.cpp b/src/libCom/test/epicsAlgorithmTest.cpp new file mode 100644 index 000000000..87c6be13f --- /dev/null +++ b/src/libCom/test/epicsAlgorithmTest.cpp @@ -0,0 +1,47 @@ +// epicsAlgorithmTest.cpp +// Authors: Jeff Hill & Andrew Johnson + +#include + +#include "epicsAlgorithm.h" + +#ifdef vxWorks + #define MAIN epicsAlgorithm +#else + #define MAIN main +#endif + + +int MAIN(int /*argc*/, char* /*argv[]*/) +{ + float f1 = 3.3f; + float f2 = 3.4f; + float f3; + + f3 = epicsMin(f1,f2); + assert(f3==f1); + + f3 = epicsMax(f1,f2); + assert(f3==f2); + + epicsSwap(f1,f2); + assert(f1==3.4f); + assert(f2==3.3f); + + int i1 = 3; + int i2 = 4; + int i3; + + i3 = epicsMin(i1,i2); + assert(i3==i1); + + i3 = epicsMax(i1,i2); + assert(i3==i2); + + epicsSwap(i1,i2); + assert(i1==4); + assert(i2==3); + + return 0; +} +