mirror of
https://github.com/mat007/turtle.git
synced 2026-06-22 12:13:43 +00:00
Removed all std::string to spare unnecessary memory allocations
git-svn-id: https://svn.code.sf.net/p/turtle/code/trunk@383 860be788-9bd5-4423-9f1e-828f051e677b
This commit is contained in:
parent
64c638d59c
commit
ad40a1a9cf
15 changed files with 157 additions and 102 deletions
|
|
@ -12,7 +12,6 @@
|
|||
#define MOCK_ERROR_POLICY mock_error
|
||||
#include <boost/lexical_cast.hpp>
|
||||
#include <stdexcept>
|
||||
#include <string>
|
||||
|
||||
namespace
|
||||
{
|
||||
|
|
@ -37,14 +36,14 @@ namespace mock
|
|||
|
||||
template< typename Context >
|
||||
static void missing_action( const Context& context,
|
||||
const std::string& /*file*/, int /*line*/ )
|
||||
const char* /*file*/, int /*line*/ )
|
||||
{
|
||||
last_context = boost::lexical_cast< std::string >( context );
|
||||
++missing_action_count;
|
||||
}
|
||||
template< typename Context >
|
||||
static void expected_call( const Context& /*context*/,
|
||||
const std::string& /*file*/, int /*line*/ )
|
||||
const char* /*file*/, int /*line*/ )
|
||||
{
|
||||
last_context.clear();
|
||||
++expected_call_count;
|
||||
|
|
@ -57,21 +56,21 @@ namespace mock
|
|||
}
|
||||
template< typename Context >
|
||||
static void sequence_failed( const Context& context,
|
||||
const std::string& /*file*/, int /*line*/ )
|
||||
const char* /*file*/, int /*line*/ )
|
||||
{
|
||||
last_context = boost::lexical_cast< std::string >( context );
|
||||
++sequence_failed_count;
|
||||
}
|
||||
template< typename Context >
|
||||
static void verification_failed( const Context& context,
|
||||
const std::string& /*file*/, int /*line*/ )
|
||||
const char* /*file*/, int /*line*/ )
|
||||
{
|
||||
last_context = boost::lexical_cast< std::string >( context );
|
||||
++verification_failed_count;
|
||||
}
|
||||
template< typename Context >
|
||||
static void untriggered_expectation( const Context& context,
|
||||
const std::string& /*file*/, int /*line*/ )
|
||||
const char* /*file*/, int /*line*/ )
|
||||
{
|
||||
last_context = boost::lexical_cast< std::string >( context );
|
||||
++untriggered_expectation_count;
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@ namespace
|
|||
{
|
||||
fixture()
|
||||
{
|
||||
mock::detail::configure( o, e, "instance", "type", "name" );
|
||||
mock::detail::configure( o, e, "instance", mock::detail::type_name( typeid( "type" ) ), "name" );
|
||||
}
|
||||
mock::object o;
|
||||
mock::function< void() > e;
|
||||
|
|
@ -64,7 +64,7 @@ BOOST_AUTO_TEST_CASE( an_object_is_assignable_by_sharing_its_state )
|
|||
mock::function< void() > e;
|
||||
{
|
||||
mock::object o2;
|
||||
mock::detail::configure( o2, e, "instance", "type", "name" );
|
||||
mock::detail::configure( o2, e, "instance", mock::detail::type_name( typeid( "type" ) ), "name" );
|
||||
e.expect().once();
|
||||
o1 = o2;
|
||||
BOOST_CHECK( ! mock::verify( o2 ) );
|
||||
|
|
@ -78,7 +78,7 @@ BOOST_AUTO_TEST_CASE( an_object_is_copiable_by_sharing_its_state )
|
|||
std::auto_ptr< mock::object > o2( new mock::object );
|
||||
const mock::object o1( *o2 );
|
||||
mock::function< void() > e;
|
||||
mock::detail::configure( *o2, e, "instance", "type", "name" );
|
||||
mock::detail::configure( *o2, e, "instance", mock::detail::type_name( typeid( "type" ) ), "name" );
|
||||
e.expect().once();
|
||||
BOOST_CHECK( ! mock::verify( *o2 ) );
|
||||
BOOST_CHECK( ! mock::verify( o1 ) );
|
||||
|
|
|
|||
|
|
@ -8,12 +8,22 @@
|
|||
|
||||
#include <turtle/type_name.hpp>
|
||||
#include <boost/test/auto_unit_test.hpp>
|
||||
#include <boost/lexical_cast.hpp>
|
||||
|
||||
struct my_type_from_default_namespace {};
|
||||
|
||||
namespace
|
||||
{
|
||||
template< typename T >
|
||||
std::string to_string( const T& )
|
||||
{
|
||||
return boost::lexical_cast< std::string >( mock::detail::type_name( typeid( T ) ) );
|
||||
}
|
||||
}
|
||||
|
||||
BOOST_AUTO_TEST_CASE( name_of_type_from_default_namespace_is_extracted )
|
||||
{
|
||||
BOOST_CHECK_EQUAL( "my_type_from_default_namespace", mock::detail::type_name( typeid( my_type_from_default_namespace ) ) );
|
||||
BOOST_CHECK_EQUAL( "my_type_from_default_namespace", to_string( my_type_from_default_namespace() ) );
|
||||
}
|
||||
|
||||
namespace
|
||||
|
|
@ -23,7 +33,7 @@ namespace
|
|||
|
||||
BOOST_AUTO_TEST_CASE( name_of_type_from_anonymous_namespace_is_extracted )
|
||||
{
|
||||
BOOST_CHECK_EQUAL( "my_type_from_anonymous_namespace", mock::detail::type_name( typeid( my_type_from_anonymous_namespace ) ) );
|
||||
BOOST_CHECK_EQUAL( "my_type_from_anonymous_namespace", to_string( my_type_from_anonymous_namespace() ) );
|
||||
}
|
||||
|
||||
namespace nm
|
||||
|
|
@ -33,7 +43,7 @@ namespace nm
|
|||
|
||||
BOOST_AUTO_TEST_CASE( name_of_type_from_named_namespace_is_extracted )
|
||||
{
|
||||
BOOST_CHECK_EQUAL( "my_type_from_named_namespace", mock::detail::type_name( typeid( nm::my_type_from_named_namespace ) ) );
|
||||
BOOST_CHECK_EQUAL( "my_type_from_named_namespace", to_string( nm::my_type_from_named_namespace() ) );
|
||||
}
|
||||
|
||||
namespace nm
|
||||
|
|
@ -46,7 +56,7 @@ namespace inner
|
|||
|
||||
BOOST_AUTO_TEST_CASE( name_of_type_from_named_inner_namespace_is_extracted )
|
||||
{
|
||||
BOOST_CHECK_EQUAL( "my_type_from_named_inner_namespace", mock::detail::type_name( typeid( nm::inner::my_type_from_named_inner_namespace ) ) );
|
||||
BOOST_CHECK_EQUAL( "my_type_from_named_inner_namespace", to_string( nm::inner::my_type_from_named_inner_namespace() ) );
|
||||
}
|
||||
|
||||
namespace
|
||||
|
|
@ -59,11 +69,11 @@ namespace inner
|
|||
|
||||
BOOST_AUTO_TEST_CASE( name_of_type_from_unnamed_inner_namespace_is_extracted )
|
||||
{
|
||||
BOOST_CHECK_EQUAL( "my_type_from_unnamed_inner_namespace", mock::detail::type_name( typeid( inner::my_type_from_unnamed_inner_namespace ) ) );
|
||||
BOOST_CHECK_EQUAL( "my_type_from_unnamed_inner_namespace", to_string( inner::my_type_from_unnamed_inner_namespace() ) );
|
||||
}
|
||||
|
||||
BOOST_AUTO_TEST_CASE( name_of_local_type_is_extracted )
|
||||
{
|
||||
struct my_local_type {};
|
||||
BOOST_CHECK_EQUAL( "my_local_type", mock::detail::type_name( typeid( my_local_type ) ) );
|
||||
BOOST_CHECK_EQUAL( "my_local_type", boost::lexical_cast< std::string >( mock::detail::type_name( typeid( my_local_type ) ) ) );
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue