⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 output_test_stream_test.cpp

📁 Boost provides free peer-reviewed portable C++ source libraries. We emphasize libraries that work
💻 CPP
字号:
//  (C) Copyright Gennadiy Rozental 2001-2008.//  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: 49313 $////  Description : tests output_test_stream test tool functionality// ***************************************************************************// Boost.Test#define BOOST_TEST_MAIN#include <boost/test/unit_test.hpp>#include <boost/test/output_test_stream.hpp>using boost::test_tools::output_test_stream;// STL#include <iomanip>//____________________________________________________________________________//BOOST_AUTO_TEST_CASE( test_constructor ){    {        output_test_stream output;        BOOST_CHECK( !output.match_pattern() );        BOOST_CHECK( output.is_empty() );    }    {        output_test_stream output( (char const*)0 );        BOOST_CHECK( !output.match_pattern() );        BOOST_CHECK( output.is_empty() );    }    {        output_test_stream output( "" );        BOOST_CHECK( !output.match_pattern() );        BOOST_CHECK( output.is_empty() );    }    {        output_test_stream output( "%&^$%&$%" );        BOOST_CHECK( !output.match_pattern() );        BOOST_CHECK( output.is_empty() );    }    {        output_test_stream output( "pattern.temp" );        BOOST_CHECK( !output.match_pattern() );        BOOST_CHECK( output.is_empty() );    }    {        output_test_stream output( "pattern.temp2", false );        BOOST_CHECK( output.match_pattern() );        BOOST_CHECK( output.is_empty() );    }    {        output_test_stream output( "pattern.temp2" );        BOOST_CHECK( output.match_pattern() );        BOOST_CHECK( output.is_empty() );    }}//____________________________________________________________________________//BOOST_AUTO_TEST_CASE( test_is_empty ){    output_test_stream output;    BOOST_CHECK( output.is_empty() );    output << 12345;    BOOST_CHECK( !output.is_empty() );    BOOST_CHECK( output.is_empty() );    output << "";    BOOST_CHECK( output.is_empty() );    output << '\0';    BOOST_CHECK( !output.is_empty( false ) );    BOOST_CHECK( !output.is_empty() );}//____________________________________________________________________________//BOOST_AUTO_TEST_CASE( test_check_length ){    output_test_stream output;    BOOST_CHECK( output.check_length( 0 ) );    output << "";    BOOST_CHECK( output.check_length( 0 ) );    output << '\0';    BOOST_CHECK( output.check_length( 1 ) );    output << 1220;    BOOST_CHECK( output.check_length( 4 ) );    output << "Text message";    BOOST_CHECK( output.check_length( 12, false ) );    BOOST_CHECK( output.check_length( 12 ) );    output.width( 20 );    output << "Text message";    BOOST_CHECK( output.check_length( 20 ) );}//____________________________________________________________________________//BOOST_AUTO_TEST_CASE( test_is_equal ){    output_test_stream output;    BOOST_CHECK( output.is_equal( "" ) );    output << 1;    BOOST_CHECK( output.is_equal( "1" ) );    output << "";    BOOST_CHECK( output.is_equal( "" ) );    output << '\0';    BOOST_CHECK( output.is_equal( boost::unit_test::const_string( "", 1 ) ) );    output << std::setw( 10 ) << "qwerty" << '\n';    BOOST_CHECK( output.is_equal( "    qwerty\n" ) );    std::string s( "test string" );    output << s << std::endl;    BOOST_CHECK( output.is_equal( "test string\n", false ) );        output << s << std::endl;    BOOST_CHECK( output.is_equal( "test string\ntest string\n" ) );    char const* literal_string = "asdfghjkl";    std::string substr1( literal_string, 5 );    std::string substr2( literal_string+5, 4 );    output << substr1;    BOOST_CHECK( output.is_equal( boost::unit_test::const_string( literal_string, 5 ), false ) );    output << substr2;    BOOST_CHECK( output.is_equal( boost::unit_test::const_string( literal_string, 9 ) ) );}//____________________________________________________________________________//BOOST_AUTO_TEST_CASE( test_match_pattern ){    for( int i1 = 0; i1 < 2; i1++ ) {        output_test_stream output( "pattern.test", i1 == 1 );                output << "text1\n";        BOOST_CHECK( output.match_pattern() );        output << "text2\n";        BOOST_CHECK( output.match_pattern() );        output << "text3\n";        BOOST_CHECK( output.match_pattern() );    }    {        output_test_stream output( "pattern.test" );        output << "text4\n";        BOOST_CHECK( !output.match_pattern() );        output << "text2\n";        BOOST_CHECK( output.match_pattern() );        output << "text3\n";        BOOST_CHECK( output.match_pattern() );    }    {        output_test_stream output( "pattern.test" );        output << "text\n";        BOOST_CHECK( !output.match_pattern() );        output << "text2\n";        BOOST_CHECK( !output.match_pattern() );        output << "text3\n";        BOOST_CHECK( !output.match_pattern() );    }    for( int i2 = 0; i2 < 2; i2++ ) {        output_test_stream output( "pattern.test", i2 == 1, false );        output << "text\rmore text\n";        BOOST_CHECK( output.match_pattern() );    }}//____________________________________________________________________________//// EOF

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -