Sunday, March 27, 2005

CppUnit : I found some tiny test unit libraries such as CppUnit-x and CUnit, but I tried and ported the standard test unit library to for T-Engine platform as following.
$ cd /usr/local
$ tar xvfz arc/cppunit-1.10.2.tar.gz
$ cd cppunit-1.10.2/
$ ./configure
$ vi include/cppunit/config-auto.h
--- config-auto.h.org 2005-03-24 10:29:04.000000000 +0900
+++ config-auto.h 2005-03-24 10:29:34.000000000 +0900
@@ -58,7 +58,7 @@

/* define if the compiler supports Run-Time Type Identification */
#ifndef CPPUNIT_HAVE_RTTI
-#define CPPUNIT_HAVE_RTTI 1
+/* #define CPPUNIT_HAVE_RTTI 1 */
#endif

/* Define if you have the shl_load function. */
$ export CPPUNITROOT=/usr/local/cppunit-1.10.2
$ vi Makefile
......
USE_CPP = 1
REL_TYP=q
......
CPPFLAGS += -D__USE_THREADS
CPPFLAGS += -D__USE_IOSTREAMS
......
CFLAGS += -I$(CPPUNITROOT)/include
......
LOADLIBES += -lstlport
......
CPPUNITSRC =
$(CPPUNITROOT)/src/cppunit/AdditionalMessage.cpp
$(CPPUNITROOT)/src/cppunit/Asserter.cpp
$(CPPUNITROOT)/src/cppunit/BeOsDynamicLibraryManager.cpp
$(CPPUNITROOT)/src/cppunit/BriefTestProgressListener.cpp
$(CPPUNITROOT)/src/cppunit/CompilerOutputter.cpp
$(CPPUNITROOT)/src/cppunit/DefaultProtector.cpp
$(CPPUNITROOT)/src/cppunit/Exception.cpp
$(CPPUNITROOT)/src/cppunit/Message.cpp
$(CPPUNITROOT)/src/cppunit/Protector.cpp
$(CPPUNITROOT)/src/cppunit/ProtectorChain.cpp
$(CPPUNITROOT)/src/cppunit/RepeatedTest.cpp
$(CPPUNITROOT)/src/cppunit/ShlDynamicLibraryManager.cpp
$(CPPUNITROOT)/src/cppunit/SourceLine.cpp
$(CPPUNITROOT)/src/cppunit/StringTools.cpp
$(CPPUNITROOT)/src/cppunit/SynchronizedObject.cpp
$(CPPUNITROOT)/src/cppunit/Test.cpp
$(CPPUNITROOT)/src/cppunit/TestAssert.cpp
$(CPPUNITROOT)/src/cppunit/TestCase.cpp
$(CPPUNITROOT)/src/cppunit/TestCaseDecorator.cpp
$(CPPUNITROOT)/src/cppunit/TestComposite.cpp
$(CPPUNITROOT)/src/cppunit/TestDecorator.cpp
$(CPPUNITROOT)/src/cppunit/TestFactoryRegistry.cpp
$(CPPUNITROOT)/src/cppunit/TestFailure.cpp
$(CPPUNITROOT)/src/cppunit/TestLeaf.cpp
$(CPPUNITROOT)/src/cppunit/TestNamer.cpp
$(CPPUNITROOT)/src/cppunit/TestPath.cpp
$(CPPUNITROOT)/src/cppunit/TestPlugInDefaultImpl.cpp
$(CPPUNITROOT)/src/cppunit/TestResult.cpp
$(CPPUNITROOT)/src/cppunit/TestResultCollector.cpp
$(CPPUNITROOT)/src/cppunit/TestRunner.cpp
$(CPPUNITROOT)/src/cppunit/TestSetUp.cpp
$(CPPUNITROOT)/src/cppunit/TestSuccessListener.cpp
$(CPPUNITROOT)/src/cppunit/TestSuite.cpp
$(CPPUNITROOT)/src/cppunit/TestSuiteBuilderContext.cpp
$(CPPUNITROOT)/src/cppunit/TextOutputter.cpp
$(CPPUNITROOT)/src/cppunit/TextTestProgressListener.cpp
$(CPPUNITROOT)/src/cppunit/TextTestResult.cpp
$(CPPUNITROOT)/src/cppunit/TextTestRunner.cpp
$(CPPUNITROOT)/src/cppunit/TypeInfoHelper.cpp
$(CPPUNITROOT)/src/cppunit/XmlDocument.cpp
$(CPPUNITROOT)/src/cppunit/XmlElement.cpp
$(CPPUNITROOT)/src/cppunit/XmlOutputter.cpp
$(CPPUNITROOT)/src/cppunit/XmlOutputterHook.cpp

CPPUNITSRC_NOUSE =
$(CPPUNITROOT)/src/cppunit/DllMain.cpp
$(CPPUNITROOT)/src/cppunit/DynamicLibraryManager.cpp
$(CPPUNITROOT)/src/cppunit/DynamicLibraryManagerException.cpp
$(CPPUNITROOT)/src/cppunit/PlugInManager.cpp
$(CPPUNITROOT)/src/cppunit/PlugInParameters.cpp
$(CPPUNITROOT)/src/cppunit/UnixDynamicLibraryManager.cpp
$(CPPUNITROOT)/src/cppunit/Win32DynamicLibraryManager.cpp
......
SRC = ...... $(CPPUNITSRC)
......
Using the library, I could run the sample test cast on the platform, T-Engine SH7727, as following. The standard console is outed to the terminal console :-)
PMC T-Kernel/SH7727 + Extension Version 1.1.02
Copyright (C) 2002-2004 by Personal Media Corporation

** SegmentMgr OK
** ProcessMgr OK
** MemoryMgr OK
** MessageMgr OK
** TaskCommMgr OK
** GNameMgr OK
** DeviceMgr OK
** ClockMgr OK
** EventMgr OK
** FileMgr OK
** CardMgr OK
** UsbMgr OK
** ClockDrv OK
** SysDiskDrv OK

[/SYS]% cd skonno
[/SYS/skonno]% recv samptestunit
[/SYS/skonno]% ls
samptestunit
[/SYS/skonno]% samptestunit
SampleTestCase::testStringSize : OK
SampleTestCase::testStringTrimFunc : OK
SampleTestCase::testStringFindFunc : OK
SampleTestCase::testStringTokenizer : OK
OK (4)

Comments: Post a Comment

<< Home

This page is powered by Blogger. Isn't yours?