50 makefile_am =
"""# -*- Makefile -*- 51 #------------------------------------------------------------ 53 # @brief Makefile.am for [class_name] unit test 54 # @date [dollar]Date[dollar] 56 # @author Noriaki Ando <n-ando@aist.go.jp> 61 #------------------------------------------------------------ 69 AUTOMAKE_OPTIONS = 1.9 72 IDLFLAGS = @IDL_FLAGS@ 75 open_rtm_dir = [dollar](top_builddir)/../../../../.. 76 target_srcdir = [dollar](top_builddir)/.. 79 AM_CPPFLAGS += -I[dollar](includedir) 80 AM_CPPFLAGS += -I[dollar](target_srcdir) 81 AM_CPPFLAGS += -I[dollar](open_rtm_dir) 82 AM_CPPFLAGS += -I[dollar](open_rtm_dir)/rtc/corba/idl 85 AM_LDFLAGS += -L[dollar](open_rtm_dir)/coil/lib 87 IDL_SOURCES = [dollar](open_rtm_dir)/rtc/corba/idl/SDOPackage.idl 88 IDL_SOURCES += [dollar](open_rtm_dir)/rtc/corba/idl/RTC.idl 89 IDL_SOURCES += [dollar](open_rtm_dir)/rtc/corba/idl/OpenRTM.idl 91 noinst_PROGRAMS = [class_name]Tests 93 [class_name]Tests_SOURCES = ../TestRunner.cpp 94 [class_name]Tests_SOURCES += [class_name]Tests.cpp 95 [class_name]Tests_SOURCES += [dollar](IDL_SOURCES:.idl=Stub.cpp) 96 [class_name]Tests_SOURCES += [dollar](open_rtm_dir)/doil/ORBManager.cpp 97 [class_name]Tests_SOURCES += [dollar](open_rtm_dir)/doil/corba/CORBAManager.cpp 99 [class_name]Tests_LDFLAGS = -L[dollar](libdir) 101 [class_name]Tests_LDADD = -lomniORB4 102 [class_name]Tests_LDADD += -lomnithread 103 [class_name]Tests_LDADD += -lomniDynamic4 104 [class_name]Tests_LDADD += -lcoil 105 #[class_name]Tests_LDADD += -lcppunit 106 [class_name]Tests_LDADD += [dollar](target_srcdir)/[class_name].o 107 [class_name]Tests_LDADD += [dollar](target_srcdir)/RTCTypeConversion.o 108 [class_name]Tests_LDADD += [dollar](target_srcdir)/SDOPackageTypeConversion.o 120 *.o *.Po *.gch *.la \\ 121 *Skel.cpp *Skel.h *Stub.cpp *Stub.h \\ 124 *.cc *.hh *.i *.a *.c *.inl 128 test_cpp =
"""// -*- C++ -*- 130 * @file [class_name]Tests.cpp 131 * @brief [class_name] test class 132 * @date [dollar]Date[dollar] 134 * @author Noriaki Ando <n-ando@aist.go.jp> 142 * [dollar]Log[dollar] 147 #ifndef [class_name]_cpp 148 #define [class_name]_cpp 151 #include <cppunit/ui/text/TestRunner.h> 152 #include <cppunit/extensions/HelperMacros.h> 153 #include <cppunit/TestAssert.h> 154 #include <doil/ImplBase.h> 157 * @class [class_name] Local Implementation class. 158 * @brief [class_name] test. 162 * @class [class_name]Tests class 163 * @brief [class_name] test 165 namespace [class_name] 168 class [class_name]Tests 169 : public CppUnit::TestFixture 171 CPPUNIT_TEST_SUITE([class_name]Tests); 172 CPPUNIT_TEST(test_case0); 173 CPPUNIT_TEST_SUITE_END(); 194 * @brief Test initialization 201 * @brief Test finalization 203 virtual void tearDown() 210 CPPUNIT_FAIL("Automatic failue."); 213 }; // namespace [class_name] 217 * Register test suite 219 CPPUNIT_TEST_SUITE_REGISTRATION([class_name]::[class_name]Tests); 222 int main(int argc, char* argv[]) 224 CppUnit::TextUi::TestRunner runner; 225 runner.addTest(CppUnit::TestFactoryRegistry::getRegistry().makeTest()); 226 CppUnit::Outputter* outputter = 227 new CppUnit::TextOutputter(&runner.result(), std::cout); 228 runner.setOutputter(outputter); 229 bool retcode = runner.run(); 233 #endif // [class_name]_cpp 240 self.
data[
"dollar"] =
"$" 241 self.
data[
"class_name"] = classname
242 self.
data[
"makefile"] = classname +
"/Makefile.am" 243 self.
data[
"testcpp"] = classname +
"/" + classname +
"Tests.cpp" 254 def gen(self, fname, temp_txt, data):
258 text=t.generate(data)
261 print "\"", fname,
"\"" " was generated." 270 self.
gen(self.
data[
"makefile"], makefile_am, self.
data)
274 self.
gen(self.
data[
"testcpp"], test_cpp, self.
data)
278 if len(sys.argv) < 2:
281 class_name = sys.argv[1]
283 os.mkdir(class_name, 0755)
285 print "Directory \"" + class_name +
"\" already exists."
def gen(self, fname, temp_txt, data)
def __init__(self, classname)