From 99349248538c639bb64fd9210bead7902adef28f Mon Sep 17 00:00:00 2001 From: mat007 Date: Fri, 21 Jan 2011 14:53:12 +0000 Subject: [PATCH] Cleanup git-svn-id: https://svn.code.sf.net/p/turtle/code/trunk@202 860be788-9bd5-4423-9f1e-828f051e677b --- src/libraries/turtle/lambda.hpp | 49 +++++----------------- src/libraries/turtle/mock.hpp | 1 + src/tests/turtle_test/integration_test.cpp | 9 ++-- 3 files changed, 17 insertions(+), 42 deletions(-) diff --git a/src/libraries/turtle/lambda.hpp b/src/libraries/turtle/lambda.hpp index 4f9aea7..641de0a 100644 --- a/src/libraries/turtle/lambda.hpp +++ b/src/libraries/turtle/lambda.hpp @@ -13,9 +13,7 @@ #ifdef MOCK_USE_BOOST_BIND #include #else -#include -#include -#include +#include #endif #include @@ -23,8 +21,12 @@ namespace mock { namespace detail { - #ifdef MOCK_USE_BOOST_BIND + using boost::bind; +#else + using boost::phoenix::bind; +#endif + template< typename Result, typename Signature > struct lambda { @@ -34,21 +36,21 @@ namespace detail template< typename T > static functor_type make_val( T t ) { - return boost::bind( &do_identity< T >, t ); + return bind( &do_identity< T >, t ); } template< typename T > static functor_type make_val( boost::reference_wrapper< T > t ) { - return boost::bind( &do_ref_identity< T >, t.get_pointer() ); + return bind( &do_ref_identity< T >, t.get_pointer() ); } template< typename T > static functor_type make_throw( T t ) { - return boost::bind( &do_throw< T >, t ); + return bind( &do_throw< T >, t ); } static functor_type make_nothing() { - return boost::bind( &do_nothing ); + return bind( &do_nothing ); } template< typename T > @@ -70,37 +72,6 @@ namespace detail { } }; - -#else - - template< typename Result, typename Signature > - struct lambda - { - typedef BOOST_DEDUCED_TYPENAME - boost::function< Signature > functor_type; - - template< typename T > - static functor_type make_val( T t ) - { - return boost::phoenix::val( t ); - } - template< typename T > - static functor_type make_val( boost::reference_wrapper< T > t ) - { - return *boost::phoenix::val( t.get_pointer() ); - } - template< typename T > - static functor_type make_throw( T t ) - { - return boost::phoenix::throw_( t ); - } - static functor_type make_nothing() - { - return boost::phoenix::nothing; - } - }; -#endif - } } diff --git a/src/libraries/turtle/mock.hpp b/src/libraries/turtle/mock.hpp index 5f4dee2..34f9ee9 100644 --- a/src/libraries/turtle/mock.hpp +++ b/src/libraries/turtle/mock.hpp @@ -20,6 +20,7 @@ #include #include #include +#include #include #include #include diff --git a/src/tests/turtle_test/integration_test.cpp b/src/tests/turtle_test/integration_test.cpp index c52d049..ce3444f 100644 --- a/src/tests/turtle_test/integration_test.cpp +++ b/src/tests/turtle_test/integration_test.cpp @@ -18,6 +18,7 @@ #include #include #include +#include namespace { @@ -346,7 +347,7 @@ namespace friend std::ostream& operator<<( std::ostream& s, const near_constraint& c ) { - return s << "std::abs( _ - " << c.expected_ << " ) < " << c.threshold_; + return s << "near( " << c.expected_ << ", " << c.threshold_ << " )"; } //template< typename Actual > @@ -371,6 +372,8 @@ BOOST_AUTO_TEST_CASE( writing_custom_constraint ) MOCK_EXPECT( f, _ ).with( near( 3.f, 0.01f ) ); f( 3.f ); const std::string expected = "f\n" - ". unlimited().with( std::abs( _ - 3 ) < 0.01 )"; - BOOST_CHECK_EQUAL( expected, mock::format( f ) ); + ". unlimited().with( near( 3, 0.01 ) )"; + std::stringstream s; + s << f; + BOOST_CHECK_EQUAL( expected, s.str() ); }