From: <mk...@us...> - 2003-10-25 00:33:44
|
Update of /cvsroot/csp/APPLICATIONS/SimData/SimData/Tests In directory sc8-pr-cvs1:/tmp/cvs-serv5796 Modified Files: Makefile test_Object.cpp Log Message: Index: Makefile =================================================================== RCS file: /cvsroot/csp/APPLICATIONS/SimData/SimData/Tests/Makefile,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** Makefile 24 Oct 2003 15:45:43 -0000 1.1 --- Makefile 25 Oct 2003 00:24:03 -0000 1.2 *************** *** 17,21 **** SWDEP = $(SWIG) -M $(SWOPTS) DEPFILES = $(addprefix $(DEPDIR)/,$(addsuffix .d, $(TESTS))) ! DEPFILTER = DEPS_MAGIC := $(shell mkdir $(DEPDIR) > /dev/null 2>&1 || :) --- 17,21 ---- SWDEP = $(SWIG) -M $(SWOPTS) DEPFILES = $(addprefix $(DEPDIR)/,$(addsuffix .d, $(TESTS))) ! DEPFILTER = | sed 's/\.o:/:/' DEPS_MAGIC := $(shell mkdir $(DEPDIR) > /dev/null 2>&1 || :) *************** *** 37,55 **** endif $(DEPDIR)/%.d : % - @echo "Computing dependencies for $<..." @$(MKDEP) $<.cpp $(DEPFILTER) > $@ %: %.cpp @echo -n "Building $@..." @for foo in a; do \ ! $(CXX) -o $@ $(CFLAGS) $(@:=.cpp) -L$(TOPDIR)/SimData -lSimData 2>/dev/null 1>/dev/null; \ ! if [ $$? = "0" ]; then echo "ok"; else echo "failed!"; fi; \ done run: @for test in $(TESTS); do \ echo -n "Running $$test..."; \ ! ./$$test 2>/dev/null 1>/dev/null; \ if [ $$? = "0" ]; then echo "ok"; else echo "failed!"; fi; \ done --- 37,59 ---- endif + FAILURES = 0 + $(DEPDIR)/%.d : % @$(MKDEP) $<.cpp $(DEPFILTER) > $@ + #@echo "Computing dependencies for $<..." + %: %.cpp @echo -n "Building $@..." @for foo in a; do \ ! $(CXX) -o $@ $(CFLAGS) $(@:=.cpp) -L$(TOPDIR)/SimData -lSimData 2>.testlog 1>/dev/null; \ ! if [ $$? = "0" ]; then echo "ok"; else echo "failed!"; exit 1; fi; \ done + $ run: @for test in $(TESTS); do \ echo -n "Running $$test..."; \ ! ./$$test 2>.testlog 1>/dev/null; \ if [ $$? = "0" ]; then echo "ok"; else echo "failed!"; fi; \ done Index: test_Object.cpp =================================================================== RCS file: /cvsroot/csp/APPLICATIONS/SimData/SimData/Tests/test_Object.cpp,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** test_Object.cpp 24 Oct 2003 15:45:43 -0000 1.1 --- test_Object.cpp 25 Oct 2003 00:24:03 -0000 1.2 *************** *** 60,66 **** public: ! SIMDATA_OBJECT(SubObject,0,0) EXTEND_SIMDATA_XML_INTERFACE(SubObject, TestObject) ! SIMDATA_XML("link1", SubObject::_link1, true) SIMDATA_XML("link2", SubObject::_link2, true) END_SIMDATA_XML_INTERFACE --- 60,66 ---- public: ! SIMDATA_STATIC_OBJECT(SubObject,0,0) EXTEND_SIMDATA_XML_INTERFACE(SubObject, TestObject) ! SIMDATA_XML("link1", SubObject::_link1, false) SIMDATA_XML("link2", SubObject::_link2, true) END_SIMDATA_XML_INTERFACE *************** *** 78,87 **** SIMDATA_REGISTER_INTERFACE(SubObject); void test() { // TODO - // * get object interfaces from the registry // * set and retrieve values ! // * test introspection ! // * split Object class declarations into a header ::exit(0); } --- 78,126 ---- SIMDATA_REGISTER_INTERFACE(SubObject); + void testTestObjectInterface(simdata::InterfaceProxy *i) { + assert(i != 0); + assert(i->variableExists("vector")); + assert(i->variableExists("link")); + assert(i->variableExists("bool")); + assert(i->variableRequired("vector")); + assert(i->variableRequired("link")); + assert(!i->variableRequired("bool")); + assert(i->variableType("vector") == "type::Vector3"); + assert(i->variableType("bool") == "builtin::bool"); + } + + void testSubObjectInterface(simdata::InterfaceProxy *i) { + assert(i != 0); + assert(i->variableExists("link1")); + assert(i->variableExists("link2")); + assert(!i->variableRequired("link1")); + assert(i->variableRequired("link2")); + assert(i->isSubclass(TestObject::_getClassName())); + assert(i->isSubclass(TestObject::_getClassHash())); + } + void test() { // TODO // * set and retrieve values ! // * split Object class declarations into a header? ! simdata::InterfaceRegistry ® = simdata::InterfaceRegistry::getInterfaceRegistry(); ! assert(reg.hasInterface("TestObject")); ! assert(reg.hasInterface("SubObject")); ! assert(reg.hasInterface(TestObject::_getClassHash())); ! assert(reg.hasInterface(SubObject::_getClassHash())); ! assert(reg.hasInterface(TestObject::_getClassName())); ! assert(reg.hasInterface(SubObject::_getClassName())); ! simdata::InterfaceProxy *i; ! i = reg.getInterface("TestObject"); ! assert(i->getClassHash() == TestObject::_getClassHash()); ! assert(i->getClassName() == TestObject::_getClassName()); ! assert(!i->isStatic()); ! testTestObjectInterface(i); ! i = reg.getInterface("SubObject"); ! assert(i->getClassHash() == SubObject::_getClassHash()); ! assert(i->getClassName() == SubObject::_getClassName()); ! assert(i->isStatic()); ! testTestObjectInterface(i); ! testSubObjectInterface(i); ::exit(0); } |