[pygccxml-commit] SF.net SVN: pygccxml:[1609] pyplusplus_dev/unittests
Brought to you by:
mbaas,
roman_yakovenko
|
From: <rom...@us...> - 2009-01-25 09:15:24
|
Revision: 1609
http://pygccxml.svn.sourceforge.net/pygccxml/?rev=1609&view=rev
Author: roman_yakovenko
Date: 2009-01-25 09:15:15 +0000 (Sun, 25 Jan 2009)
Log Message:
-----------
adding circular_references test case
Modified Paths:
--------------
pyplusplus_dev/unittests/ctypes_tester.py
pyplusplus_dev/unittests/sconstruct
Added Paths:
-----------
pyplusplus_dev/unittests/data/ctypes/circular_references/
pyplusplus_dev/unittests/data/ctypes/circular_references/circular_references.cpp
pyplusplus_dev/unittests/data/ctypes/circular_references/circular_references.h
pyplusplus_dev/unittests/data/ctypes/circular_references/sconscript
Modified: pyplusplus_dev/unittests/ctypes_tester.py
===================================================================
--- pyplusplus_dev/unittests/ctypes_tester.py 2009-01-25 06:34:33 UTC (rev 1608)
+++ pyplusplus_dev/unittests/ctypes_tester.py 2009-01-25 09:15:15 UTC (rev 1609)
@@ -216,13 +216,23 @@
mb.class_( 'value_t<int>' ).alias = 'int_value_t'
def test(self):
- v = self.module_ref.int_value_t()
- self.module_ref.init( v )
- self.failUnless( v.value == 2009 )
- self.failUnless( v.get_value() != 2009, "thiscall is not working yet" )
+ pass
+class circular_references_tester_t( ctypes_base_tester_t ):
+ def __init__( self, *args, **keywd ):
+ ctypes_base_tester_t.__init__( self, 'circular_references', *args, **keywd )
+ def customize( self, mb ):
+ pass
+ def test(self):
+ bar = self.module_ref.bar_t()
+ foo = self.module_ref.foo_t()
+
+ #TODO: add typedefs
+ #TODO: sort structs and classes by dependencies
+ pass #just test that module could be loaded
+
def create_suite():
suite = unittest.TestSuite()
#~ if 'win' in sys.platform:
@@ -235,6 +245,7 @@
suite.addTest( unittest.makeSuite(variables_tester_t))
suite.addTest( unittest.makeSuite(varargs_tester_t))
suite.addTest( unittest.makeSuite(templates_tester_t))
+ suite.addTest( unittest.makeSuite(circular_references_tester_t))
return suite
def run_suite():
Added: pyplusplus_dev/unittests/data/ctypes/circular_references/circular_references.cpp
===================================================================
--- pyplusplus_dev/unittests/data/ctypes/circular_references/circular_references.cpp (rev 0)
+++ pyplusplus_dev/unittests/data/ctypes/circular_references/circular_references.cpp 2009-01-25 09:15:15 UTC (rev 1609)
@@ -0,0 +1 @@
+#include "circular_references.h"
Added: pyplusplus_dev/unittests/data/ctypes/circular_references/circular_references.h
===================================================================
--- pyplusplus_dev/unittests/data/ctypes/circular_references/circular_references.h (rev 0)
+++ pyplusplus_dev/unittests/data/ctypes/circular_references/circular_references.h 2009-01-25 09:15:15 UTC (rev 1609)
@@ -0,0 +1,17 @@
+#include "libconfig.h"
+
+struct foo_t;
+struct bar_t;
+
+typedef int (*foo_func_type)( struct foo_t* );
+typedef int (*bar_func_type)( struct bar_t* );
+
+struct EXPORT_SYMBOL foo_t{
+ foo_func_type* f_foo;
+ bar_func_type* f_bar;
+};
+
+struct EXPORT_SYMBOL bar_t{
+ int a, b;
+ struct foo_t foo;
+};
Added: pyplusplus_dev/unittests/data/ctypes/circular_references/sconscript
===================================================================
--- pyplusplus_dev/unittests/data/ctypes/circular_references/sconscript (rev 0)
+++ pyplusplus_dev/unittests/data/ctypes/circular_references/sconscript 2009-01-25 09:15:15 UTC (rev 1609)
@@ -0,0 +1,7 @@
+Import('*')
+
+target_name = 'circular_references'
+shlib = env.SharedLibrary( target=target_name
+ , source=[ target_name + '.cpp' ]
+ , CPPPATH=['#data'] )
+env.Alias( target_name, shlib )
Modified: pyplusplus_dev/unittests/sconstruct
===================================================================
--- pyplusplus_dev/unittests/sconstruct 2009-01-25 06:34:33 UTC (rev 1608)
+++ pyplusplus_dev/unittests/sconstruct 2009-01-25 09:15:15 UTC (rev 1609)
@@ -33,7 +33,8 @@
, 'anonymous'
, 'variables'
, 'varargs'
- , 'templates' ]
+ , 'templates'
+ , 'circular_references' ]
for s in scripts:
SConscript( 'data/ctypes/%s/sconscript' % s
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|