[pygccxml-commit] SF.net SVN: pygccxml:[1739] pyplusplus_dev/unittests
Brought to you by:
mbaas,
roman_yakovenko
|
From: <rom...@us...> - 2009-06-14 04:17:47
|
Revision: 1739
http://pygccxml.svn.sourceforge.net/pygccxml/?rev=1739&view=rev
Author: roman_yakovenko
Date: 2009-06-14 04:17:46 +0000 (Sun, 14 Jun 2009)
Log Message:
-----------
adding new test case - immutable by reference
Modified Paths:
--------------
pyplusplus_dev/unittests/call_policies_tester.py
pyplusplus_dev/unittests/classes_tester.py
pyplusplus_dev/unittests/data/call_policies_to_be_exported.hpp
Modified: pyplusplus_dev/unittests/call_policies_tester.py
===================================================================
--- pyplusplus_dev/unittests/call_policies_tester.py 2009-06-10 06:31:44 UTC (rev 1738)
+++ pyplusplus_dev/unittests/call_policies_tester.py 2009-06-14 04:17:46 UTC (rev 1739)
@@ -24,7 +24,7 @@
ssize_t
operator()( boost::python::tuple args ){
boost::python::object self = args[0];
- call_policies::return_range_image_t& image
+ call_policies::return_range_image_t& image
= boost::python::extract<call_policies::return_range_image_t&>( self );
return image.raw_data.size();
}
@@ -82,6 +82,9 @@
, 'get_create_images_size_t'
, call_policies.return_value_policy(call_policies.reference_existing_object) )
+ mb.calldef( '::call_policies::immutable_by_ref_t::get_value' ).call_policies \
+ = call_policies.return_value_policy( call_policies.copy_non_const_reference )
+
def run_tests(self, module):
self.failUnless( module.compare( module.my_address() ) )
@@ -99,26 +102,29 @@
self.failUnless( 1977 == cont[1977] )
self.failUnless( 0.5 == module.get_fundamental_ptr_value() )
-
+
self.failUnless( None is module.get_fundamental_ptr_value_null() )
-
+
module.get_impl_details()
module.get_opaque()
-
+
x = module.arrays()
for i in range( 4 ):
arr3 = x.create_arr_3()
self.failUnless( arr3 == (0,1,2) )
-
+
image = module.return_range_image_t()
raw_data = image.get_raw_data()
self.failUnless( ['1', '\0', '2']==list( raw_data ) )
- raw_data[1] = 'x'
+ raw_data[1] = 'x'
self.failUnless( raw_data[1] == image.raw_data[1] )
for index, img in enumerate( image.create_images() ):
print index, img
+ ibr = module.immutable_by_ref_t()
+ self.failUnless( ibr.get_value() == ibr.value )
+
def create_suite():
suite = unittest.TestSuite()
suite.addTest( unittest.makeSuite(tester_t))
Modified: pyplusplus_dev/unittests/classes_tester.py
===================================================================
--- pyplusplus_dev/unittests/classes_tester.py 2009-06-10 06:31:44 UTC (rev 1738)
+++ pyplusplus_dev/unittests/classes_tester.py 2009-06-14 04:17:46 UTC (rev 1739)
@@ -30,6 +30,7 @@
protected_static_t = mb.class_( 'protected_static_t' )
self.failUnless( 'PROTECTED_STATIC' in protected_static_t.alias)
protected_static_t.alias = 'protected_static_t'
+ mb.operators()
def run_tests(self, module):
self.failIfRaisesAny( module.fundamental1 )
Modified: pyplusplus_dev/unittests/data/call_policies_to_be_exported.hpp
===================================================================
--- pyplusplus_dev/unittests/data/call_policies_to_be_exported.hpp 2009-06-10 06:31:44 UTC (rev 1738)
+++ pyplusplus_dev/unittests/data/call_policies_to_be_exported.hpp 2009-06-14 04:17:46 UTC (rev 1739)
@@ -122,6 +122,15 @@
}
};
+
+struct immutable_by_ref_t{
+ immutable_by_ref_t() : value ( 2977 ){};
+
+ int& get_value(){ return value; }
+
+ int value;
+};
+
}
#endif//__call_policies_to_be_exported_hpp__
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|