Fixed type name extraction for local types

git-svn-id: https://svn.code.sf.net/p/turtle/code/trunk@72 860be788-9bd5-4423-9f1e-828f051e677b
This commit is contained in:
mat007 2009-12-10 23:46:12 +00:00
parent 618206f410
commit 87335f7ab0
3 changed files with 26 additions and 24 deletions

View file

@ -16,7 +16,7 @@ struct my_type_from_default_namespace {};
BOOST_AUTO_TEST_CASE( name_of_type_from_default_namespace_is_extracted )
{
BOOST_CHECK_EQUAL( "my_type_from_default_namespace", mock::detail::type_name< my_type_from_default_namespace >() );
BOOST_CHECK_EQUAL( "my_type_from_default_namespace", mock::detail::type_name( typeid( my_type_from_default_namespace ) ) );
}
namespace
@ -26,7 +26,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< my_type_from_anonymous_namespace >() );
BOOST_CHECK_EQUAL( "my_type_from_anonymous_namespace", mock::detail::type_name( typeid( my_type_from_anonymous_namespace ) ) );
}
namespace nm
@ -36,7 +36,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< nm::my_type_from_named_namespace >() );
BOOST_CHECK_EQUAL( "my_type_from_named_namespace", mock::detail::type_name( typeid( nm::my_type_from_named_namespace ) ) );
}
namespace nm
@ -49,7 +49,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< nm::inner::my_type_from_named_inner_namespace >() );
BOOST_CHECK_EQUAL( "my_type_from_named_inner_namespace", mock::detail::type_name( typeid( nm::inner::my_type_from_named_inner_namespace ) ) );
}
namespace
@ -62,5 +62,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< inner::my_type_from_unnamed_inner_namespace >() );
BOOST_CHECK_EQUAL( "my_type_from_unnamed_inner_namespace", mock::detail::type_name( typeid( 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 ) ) );
}