[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. |