Commit Graph
79 Commits
Author SHA1 Message Date
Ralph Lange da91893ec2 libCom/test: Add test for epicsThreadHooks 2012-07-02 18:18:54 +02:00
Andrew Johnson 269fb01c63 libCom: Add routines for parsing strings into epicsTypes
Adds new routines for converting numeric strings into the
standard epicsInt8, epicsUInt8, epicsInt16, epicsUInt16,
epicsInt32 and epicsUInt32 types, along with Long, ULong,
Double and Float.  These all provide error checking and
detection of extraneous characters.  The epicsScanDouble
and epicsScanFloat routines originally in epicsStdlib.h
are replaced by macros that call the epicsParse routine,
and this also provides epicsScanLong and epicsScanULong
to match.

A test file is added to ensure conversions work properly
and report appropriate errors.  This file also checks the
native strtod() routine if not used to check whether the
epicsStrtod() code is required on this platform.
2012-06-22 14:06:52 -05:00
Andrew Johnson 0b92d61a14 libCom/test: Added epicsTypesTest, checks type sizes. 2011-10-28 15:19:54 -05:00
Andrew Johnson dfb8c8ed2b Merged the rebased-atomics branch.
There are still quite a lot of warnings that need cleaning
up when compiling epicsAtomicTest.cpp on a 64-bit system.
2011-09-09 18:09:48 -05:00
Andrew Johnson 8e028f0f3d libCom/test: errlog test needs -lsocket on Solaris 2011-09-07 10:05:42 -05:00
Michael DavidsaverandAndrew Johnson 2714ff703b Fix source reorg issues from Windows
* fix libCom exports for things which used to be built differently
* logserver needs winsock
* errlog prefix: fix warnings on win32
* fix dll imports in ioc/db
2011-08-30 18:09:11 -05:00
unknownandAndrew Johnson f0afcef02e o changed to more generic implementation to reduce the code size
o changed name, OSD_ATOMIC_INLINE to EPICS_ATOMIC_INLINE
o changed supported data types, unsigned removed and int added (per reveiw at codeathon)
o added add/subtract functions (per reveiw at codeathon)
o now presuming that __sync_synchronize available all gcc 4  mingw does not provide windows mem barrier)
o consolodated on one implemention for Microsoft invarient of cmplr intrinisic or win32 by using macros to config a shared header file
o improved doc in epicsAtomic.h
o added overloaded c++ interface in namespace epics :: atomic to epicsAtomic.h
o added epicsAtomicReadMemoryBarrier and epicsAtomicWriteMemoryBarrier interface to epicsAtomic.h
o changed the implementation so that each of the functions can be individually specified for a particular compiler, os, or in the generic implementation (this is accomplished with macros)
o modified the functional and performance test so that they are based on templates so we can easily support new data types
o modified performance tests to repeat function calls and measure performance using a template
2011-08-29 19:02:41 -06:00
Jeff HillandAndrew Johnson fa55316272 o added CMPL_CLASD definition to CONFIG.gnuCommon, CONFIG.solarisCommon.solarisCommon, configure/os/CONFIG.win32-x86.win32-x86
o added CMPLR_SRC_DIRS to ALL_SRC_DIRS, and added compiler/$CMPLR_CLASS) to INSTALL_INCLUDES in CONFIG_COMMON
o added additional compiler specific rule deciding where things are installed to  in CONFIG_COMMON
o added compiler specific include install to RULES_BUILD
o changed configure/os/CONFIG.linux-x86.linux-x86 to specify minimum arch is 586 (pentium circa 1995)
o changed configure/os/CONFIG.win32-x86-cygwin.win32-x86-cygwin to specify minimum arch is 586 (pentium circa 1995)
o added epicsAtoimic facility to libCom/Makefile
o added testing and performance measurement to  libCom/test/Makefile
2011-08-05 08:57:15 -06:00
Andrew Johnson 641aa70eb1 libCom/test: Added Michael Davidsaver's unit tests for errlog 2010-09-30 14:36:30 -05:00
Nick Rees 31790737e4 Added Andrews changes to RULES_BUILD to generate a hint file for the runner 2010-05-27 15:36:52 +01:00
Andrew Johnson e9593e4b6c Run epicsMessageQueueTest last, since it takes 5 minutes. 2010-05-05 15:43:58 -05:00
Andrew Johnson b4be728539 cvtFastPerform measures performance, it doesn't do functional testing.
* Cleaned up some warning messages in it on darwin
* Removed it from the epicsRunLibComTests function.
2010-04-26 17:19:10 -05:00
Andrew Johnson 6ece3235c9 Added libCom/test code for epicsThreadOnce() implementations.
Also fixed subsystems that were not using epicsThreadOnce correctly.
2010-04-26 15:48:42 -05:00
Jeff Hill 7315f02888 added cvtFastPerfotm test 2009-07-23 17:25:51 +00:00
Andrew Johnson f3d07ad12f ellLib changes: ANSIfication patch; moved test code out of ellLib.c into
its own unit test program in libCom/test; changed ellFree() to take a
function pointer for the free() routine, so it can be used on Windows;
modified epicsExit and dbBkpt to use it and pass in the free routine.
2009-04-09 16:51:05 +00:00
W. Eric Norum 48257aec7c Fix race condition exposed by compilers with more agressive optimization.
Add test procedure for epicsRingBytes.
2008-10-07 11:05:41 +00:00
Andrew Johnson 1ed5eb1ad1 Major reworking of the task watchdog implementation:
* Added new monitoring API with insert and remove callbacks; the old API is
  still supported though.
* Added report routine, callable from iocsh.
* taskwdInsert() can take a NULL tid, meaning the calling thread.
2008-05-22 17:54:19 +00:00
Andrew Johnson 37b371e956 macLib cleanup, added support for scoped macros.
New test program for regular macros as well as the environment variable tests.
2008-03-31 19:30:17 +00:00
Janet B. Anderson cfefdbf067 Moved test rule to RULES_BUILD. 2006-11-16 22:15:51 +00:00
Janet B. Anderson 60c8cbbb7b Use new TESTSCRIPTS definition. 2006-11-16 21:40:42 +00:00
Andrew Johnson 20ede98a35 Make .t files work with prove, where $cwd may be a parent directory.
Won't work if you give prove an absolute path to the .t file though...
2006-11-14 17:42:20 +00:00
Andrew Johnson fc0fd6ec0d Removed old comment. 2006-11-13 21:04:54 +00:00
Andrew Johnson e66768314f Converted to use epicsUntiTest.h. 2006-11-13 20:21:05 +00:00
Andrew Johnson db0d1f1156 TESTPROD_LIBS doesn't work, use PROD_LIBS instead. 2006-11-10 23:09:26 +00:00
Andrew Johnson 52b7171576 Moved testMain.h into libCom/misc, since db/test is built before libCom/test. 2006-11-10 22:43:04 +00:00
Andrew Johnson 62963c7d5d Fixes for make test if '.' is not in $PATH. 2006-11-10 16:32:26 +00:00
Andrew Johnson 6c19051727 Major reorganization:
Removed all Main.cpp files, use the macro in testMain.h instead and
defaulted all argc/argv parameters.
Converted all real test programs to use epicsUnitTest.h.
Moved performance measurements from epicsThreadTest to epicsThreadPerform.
Moved epicsOkToBlockTest tests into epicsThreadTest.
On a host arch,  make test  inside the O.arch directory runs all tests.
2006-11-09 22:38:41 +00:00
W. Eric Norum fd81d5f7ca Add epicsExit test.
Clean up some typos.
2006-10-27 15:43:49 +00:00
W. Eric Norum 8f5c1bb7a3 Add test harness for RTEMS. 2006-10-27 15:36:26 +00:00
Andrew Johnson 4d67f3596a Converted some of the test routines to use the new epicsUnitTest facility. 2006-03-30 20:13:25 +00:00
Marty Kraimer 92f32f3c21 new test 2005-11-21 19:09:20 +00:00
Andrew Johnson 81c052a4e2 Removed epicsList and associated test file - not used or maintained. 2005-10-28 19:36:09 +00:00
Marty Kraimer b0a654b4c1 epicsMaxThreads is new 2004-10-07 13:21:40 +00:00
W. Eric Norum 99690a12e2 Tread RTEMS like vxWorks. 2004-09-16 00:41:03 +00:00
Marty Kraimer 63f139adc5 epicsExit and epicsStdioRedirect 2004-08-27 16:04:26 +00:00
Marty Kraimer f2fc8f8838 ShellContext=>OkToBlock 2004-07-09 17:53:54 +00:00
Jeff Hill 965a511c47 added socket unblock mechanism test 2004-05-12 20:51:25 +00:00
Janet B. Anderson d96c061366 Build object files for vxWorks only. 2003-07-22 14:54:54 +00:00
W. Eric Norum e70dba5bf9 Macro expansion using environment variables as macro definitions. 2003-07-15 19:04:29 +00:00
Marty Kraimer 9519c2646a epicsStringTest is new 2003-04-07 13:52:15 +00:00
Marty Kraimer f3380f81f0 epicsStdio is new 2003-03-25 17:03:29 +00:00
Janet B. Anderson 6021e84957 Changes for shared libraries and os consistancy. 2003-03-18 22:45:03 +00:00
W. Eric Norum 4c980ea26f Add epicsMessageQueue support. 2003-02-21 18:40:31 +00:00
Janet B. Anderson 0438779bf8 Added Com_DIR definition. 2002-12-09 19:52:14 +00:00
Janet B. Anderson 93b0bf478d Updated license comments. 2002-07-12 21:35:43 +00:00
W. Eric Norum 4dac34a6ab Build complete applications for RTEMS. 2002-05-06 20:05:35 +00:00
Marty Kraimer 4428be70c3 support isinf; epicsIsNAN=>isnan; add test for epicsMath 2002-04-11 15:44:34 +00:00
Jeff Hill 76c6ebf3a9 test ansi / iso exception behavior 2002-03-23 00:29:12 +00:00
Ralph Lange 96d928fa51 Changes for HP-UX 11 - first semi-stable version 2002-02-04 15:14:43 +00:00
Marty Kraimer 51bb0b0a44 add example from appDevGuide 2002-02-01 20:04:05 +00:00