x
Yes
No
Do you want to visit DriveHQ English website?
Inicio
Características
Precios
Prueba gratuita
Software cliente
Acerca de nosotros
Servidor de archivos
|
Solución de copias de seguridad
|
Servidor FTP
|
Servidor de correo electrónico
|
Alojamiento web
|
Software cliente
Servidor de archivos
Solución de copia de seguridad
Servidor FTP
Servidor de correo electrónico
Alojamiento web
Software cliente
test_case_template.hpp - Hosted on DriveHQ Cloud IT Platform
Arriba
Subir
Descargar
Compartir
Publicar
Nueva carpeta
Nuevo archivo
Copiar
Cortar
Eliminar
Pegar
Clasificación
Actualizar
Ruta de la carpeta: \\game3dprogramming\materials\GameFactory\GameFactoryDemo\references\boost_1_35_0\boost\test\test_case_template.hpp
Girar
Efecto
Propiedad
Historial
// (C) Copyright Gennadiy Rozental 2003-2007. // Distributed under the Boost Software License, Version 1.0. // (See accompanying file LICENSE_1_0.txt or copy at // http://www.boost.org/LICENSE_1_0.txt) // See http://www.boost.org/libs/test for the library home page. // // File : $RCSfile$ // // Version : $Revision: 41369 $ // // Description : implements support for test cases templates instantiated with // sequence of test types // *************************************************************************** #ifndef BOOST_TEST_TEST_CASE_TEMPLATE_HPP_071894GER #define BOOST_TEST_TEST_CASE_TEMPLATE_HPP_071894GER // Boost.Test #include
// Boost #include
#include
#include
#include
// STL #include
#include
//____________________________________________________________________________// #define BOOST_TEST_CASE_TEMPLATE( name, typelist ) \ boost::unit_test::ut_detail::template_test_case_gen
( \ BOOST_TEST_STRINGIZE( name ) ) \ /**/ //____________________________________________________________________________// #define BOOST_TEST_CASE_TEMPLATE_FUNCTION( name, type_name ) \ template
\ void BOOST_JOIN( name, _impl )( boost::type
* ); \ \ struct name { \ template
\ static void run( boost::type
* frwrd = 0 ) \ { \ BOOST_JOIN( name, _impl )( frwrd ); \ } \ }; \ \ template
\ void BOOST_JOIN( name, _impl )( boost::type
* ) \ /**/ //____________________________________________________________________________// namespace boost { namespace unit_test { namespace ut_detail { // ************************************************************************** // // ************** test_case_template_invoker ************** // // ************************************************************************** // template
class test_case_template_invoker { public: void operator()() { TestCaseTemplate::run( (boost::type
*)0 ); } }; //____________________________________________________________________________// // ************************************************************************** // // ************** generate_test_case_4_type ************** // // ************************************************************************** // template
struct generate_test_case_4_type { explicit generate_test_case_4_type( const_string tc_name, Generator& G ) : m_test_case_name( tc_name ) , m_holder( G ) {} template
void operator()( mpl::identity
) { std::string full_name; assign_op( full_name, m_test_case_name, 0 ); full_name += '<'; full_name += typeid(TestType).name(); if( boost::is_const
::value ) full_name += " const"; full_name += '>'; m_holder.m_test_cases.push_back( new test_case( full_name, test_case_template_invoker
() ) ); } private: // Data members const_string m_test_case_name; Generator& m_holder; }; // ************************************************************************** // // ************** test_case_template ************** // // ************************************************************************** // template
class template_test_case_gen : public test_unit_generator { public: // Constructor template_test_case_gen( const_string tc_name ) { typedef generate_test_case_4_type
, TestCaseTemplate > single_test_gen; mpl::for_each
>( single_test_gen( tc_name, *this ) ); } test_unit* next() const { if( m_test_cases.empty() ) return 0; test_unit* res = m_test_cases.front(); m_test_cases.pop_front(); return res; } // Data members mutable std::list
m_test_cases; }; //____________________________________________________________________________// } // namespace ut_detail } // unit_test } // namespace boost //____________________________________________________________________________// #include
#endif // BOOST_TEST_TEST_CASE_TEMPLATE_HPP_071894GER
test_case_template.hpp
Dirección de la página
Dirección del archivo
Anterior
19/28
Siguiente
Descargar
( 5 KB )
Comments
Total ratings:
0
Average rating:
No clasificado
of 10
Would you like to comment?
Join now
, or
Logon
if you are already a member.