mirror of
https://github.com/boostorg/utility.git
synced 2025-11-11 21:59:55 +01:00
Expanded base-from-member constructors to 10 arguments; did minor tweaks
[SVN r18791]
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
// Boost test program for base-from-member class templates -----------------//
|
||||
|
||||
// (C) Copyright Daryle Walker 2001. Permission to copy, use, modify, sell
|
||||
// and distribute this software is granted provided this copyright
|
||||
// (C) Copyright Daryle Walker 2001, 2003. Permission to copy, use, modify,
|
||||
// sell and distribute this software is granted provided this copyright
|
||||
// notice appears in all copies. This software is provided "as is" without
|
||||
// express or implied warranty, and with no claim as to its suitability for
|
||||
// any purpose.
|
||||
@@ -9,13 +9,13 @@
|
||||
// See http://www.boost.org for most recent version including documentation.
|
||||
|
||||
// Revision History
|
||||
// 14 Jun 2003 Adjusted code for Boost.Test changes (Daryle Walker)
|
||||
// 29 Aug 2001 Initial Version (Daryle Walker)
|
||||
|
||||
#define BOOST_INCLUDE_MAIN
|
||||
#include <boost/test/test_tools.hpp> // for BOOST_TEST, main
|
||||
#include <boost/test/minimal.hpp> // for BOOST_CHECK, main
|
||||
|
||||
#include <boost/config.hpp> // for BOOST_NO_MEMBER_TEMPLATES
|
||||
#include <boost/cstdlib.hpp> // for boost::exit_success
|
||||
#include <boost/config.hpp> // for BOOST_NO_MEMBER_TEMPLATES
|
||||
#include <boost/cstdlib.hpp> // for boost::exit_success
|
||||
#include <boost/noncopyable.hpp> // for boost::noncopyable
|
||||
|
||||
#include <boost/utility/base_from_member.hpp> // for boost::base_from_member
|
||||
@@ -177,11 +177,11 @@ object_registrar obj_reg;
|
||||
int
|
||||
test_main( int , char * [] )
|
||||
{
|
||||
BOOST_TEST( obj_reg.db_.empty() );
|
||||
BOOST_TEST( obj_reg.defrauders_in_.empty() );
|
||||
BOOST_TEST( obj_reg.defrauders_out_.empty() );
|
||||
BOOST_TEST( obj_reg.overeager_.empty() );
|
||||
BOOST_TEST( obj_reg.overkilled_.empty() );
|
||||
BOOST_CHECK( obj_reg.db_.empty() );
|
||||
BOOST_CHECK( obj_reg.defrauders_in_.empty() );
|
||||
BOOST_CHECK( obj_reg.defrauders_out_.empty() );
|
||||
BOOST_CHECK( obj_reg.overeager_.empty() );
|
||||
BOOST_CHECK( obj_reg.overkilled_.empty() );
|
||||
|
||||
// Make a separate block to examine pre- and post-effects
|
||||
{
|
||||
@@ -189,20 +189,20 @@ test_main( int , char * [] )
|
||||
using std::endl;
|
||||
|
||||
bad_class bc;
|
||||
BOOST_TEST( obj_reg.db_.size() == 3 );
|
||||
BOOST_TEST( obj_reg.defrauders_in_.size() == 1 );
|
||||
BOOST_CHECK( obj_reg.db_.size() == 3 );
|
||||
BOOST_CHECK( obj_reg.defrauders_in_.size() == 1 );
|
||||
|
||||
good_class_1 gc1;
|
||||
BOOST_TEST( obj_reg.db_.size() == 6 );
|
||||
BOOST_TEST( obj_reg.defrauders_in_.size() == 1 );
|
||||
BOOST_CHECK( obj_reg.db_.size() == 6 );
|
||||
BOOST_CHECK( obj_reg.defrauders_in_.size() == 1 );
|
||||
|
||||
good_class_2 gc2;
|
||||
BOOST_TEST( obj_reg.db_.size() == 11 );
|
||||
BOOST_TEST( obj_reg.defrauders_in_.size() == 1 );
|
||||
BOOST_CHECK( obj_reg.db_.size() == 11 );
|
||||
BOOST_CHECK( obj_reg.defrauders_in_.size() == 1 );
|
||||
|
||||
BOOST_TEST( obj_reg.defrauders_out_.empty() );
|
||||
BOOST_TEST( obj_reg.overeager_.empty() );
|
||||
BOOST_TEST( obj_reg.overkilled_.empty() );
|
||||
BOOST_CHECK( obj_reg.defrauders_out_.empty() );
|
||||
BOOST_CHECK( obj_reg.overeager_.empty() );
|
||||
BOOST_CHECK( obj_reg.overkilled_.empty() );
|
||||
|
||||
// Getting the addresses of the objects ensure
|
||||
// that they're used, and not optimized away.
|
||||
@@ -211,11 +211,11 @@ test_main( int , char * [] )
|
||||
cout << "Object 'gc2' is at " << &gc2 << '.' << endl;
|
||||
}
|
||||
|
||||
BOOST_TEST( obj_reg.db_.empty() );
|
||||
BOOST_TEST( obj_reg.defrauders_in_.size() == 1 );
|
||||
BOOST_TEST( obj_reg.defrauders_out_.size() == 1 );
|
||||
BOOST_TEST( obj_reg.overeager_.empty() );
|
||||
BOOST_TEST( obj_reg.overkilled_.empty() );
|
||||
BOOST_CHECK( obj_reg.db_.empty() );
|
||||
BOOST_CHECK( obj_reg.defrauders_in_.size() == 1 );
|
||||
BOOST_CHECK( obj_reg.defrauders_out_.size() == 1 );
|
||||
BOOST_CHECK( obj_reg.overeager_.empty() );
|
||||
BOOST_CHECK( obj_reg.overkilled_.empty() );
|
||||
|
||||
return boost::exit_success;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user