Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r70475 - branches/release/boost/detail
From: dnljms_at_[hidden]
Date: 2011-03-23 09:23:56


Author: danieljames
Date: 2011-03-23 09:23:55 EDT (Wed, 23 Mar 2011)
New Revision: 70475
URL: http://svn.boost.org/trac/boost/changeset/70475

Log:
Detail: fully merge lightweight_test.hpp
Properties modified:
   branches/release/boost/detail/ (props changed)
   branches/release/boost/detail/endian.hpp (props changed)
Text files modified:
   branches/release/boost/detail/lightweight_test.hpp | 29 ++++++++++++++++++++++-------
   1 files changed, 22 insertions(+), 7 deletions(-)

Modified: branches/release/boost/detail/lightweight_test.hpp
==============================================================================
--- branches/release/boost/detail/lightweight_test.hpp (original)
+++ branches/release/boost/detail/lightweight_test.hpp 2011-03-23 09:23:55 EDT (Wed, 23 Mar 2011)
@@ -11,6 +11,7 @@
 // boost/detail/lightweight_test.hpp - lightweight test library
 //
 // Copyright (c) 2002, 2009 Peter Dimov
+// Copyright (2) Beman Dawes 2010, 2011
 //
 // Distributed under the Boost Software License, Version 1.0.
 // See accompanying file LICENSE_1_0.txt or copy at
@@ -23,9 +24,15 @@
 // int boost::report_errors()
 //
 
+#include <iostream>
 #include <boost/current_function.hpp>
 #include <boost/assert.hpp>
-#include <iostream>
+
+// IDE's like Visual Studio perform better if output goes to std::cout or
+// some other stream, so allow user to configure output stream:
+#ifndef BOOST_LIGHTWEIGHT_TEST_OSTREAM
+# define BOOST_LIGHTWEIGHT_TEST_OSTREAM std::cerr
+#endif
 
 namespace boost
 {
@@ -58,24 +65,30 @@
 
 inline void test_failed_impl(char const * expr, char const * file, int line, char const * function)
 {
- std::cerr << file << "(" << line << "): test '" << expr << "' failed in function '" << function << "'" << std::endl;
+ BOOST_LIGHTWEIGHT_TEST_OSTREAM
+ << file << "(" << line << "): test '" << expr << "' failed in function '"
+ << function << "'" << std::endl;
     ++test_errors();
 }
 
 inline void error_impl(char const * msg, char const * file, int line, char const * function)
 {
- std::cerr << file << "(" << line << "): " << msg << " in function '" << function << "'" << std::endl;
+ BOOST_LIGHTWEIGHT_TEST_OSTREAM
+ << file << "(" << line << "): " << msg << " in function '"
+ << function << "'" << std::endl;
     ++test_errors();
 }
 
-template<class T, class U> inline void test_eq_impl( char const * expr1, char const * expr2, char const * file, int line, char const * function, T const & t, U const & u )
+template<class T, class U> inline void test_eq_impl( char const * expr1, char const * expr2,
+ char const * file, int line, char const * function, T const & t, U const & u )
 {
     if( t == u )
     {
     }
     else
     {
- std::cerr << file << "(" << line << "): test '" << expr1 << " == " << expr2
+ BOOST_LIGHTWEIGHT_TEST_OSTREAM
+ << file << "(" << line << "): test '" << expr1 << " == " << expr2
             << "' failed in function '" << function << "': "
             << "'" << t << "' != '" << u << "'" << std::endl;
         ++test_errors();
@@ -108,12 +121,14 @@
 
     if( errors == 0 )
     {
- std::cerr << "No errors detected." << std::endl;
+ BOOST_LIGHTWEIGHT_TEST_OSTREAM
+ << "No errors detected." << std::endl;
         return 0;
     }
     else
     {
- std::cerr << errors << " error" << (errors == 1? "": "s") << " detected." << std::endl;
+ BOOST_LIGHTWEIGHT_TEST_OSTREAM
+ << errors << " error" << (errors == 1? "": "s") << " detected." << std::endl;
         return 1;
     }
 }


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk