2
0
mirror of https://github.com/boostorg/test.git synced 2026-01-27 07:22:11 +00:00

Revert "fixed msvc-14.0 warnings and fixed pattern file for error handling test"

This reverts commit 25aef40dd0.
This commit is contained in:
Raffi Enficiaud
2015-10-08 03:16:33 +02:00
parent 88b6976710
commit 89a38094d4
17 changed files with 237 additions and 230 deletions

View File

@@ -40,9 +40,9 @@ public:
typedef T const* iterator;
// Constructor
array( T const* arr_, std::size_t size_ )
: m_arr( arr_ )
, m_size( size_ )
array( T const* arr, std::size_t size )
: m_arr( arr )
, m_size( size )
{}
// dataset interface

View File

@@ -51,12 +51,12 @@ class xrange_t {
public:
typedef SampleType sample;
xrange_t( SampleType const& begin_, StepType const& step_, data::size_t size_ )
: m_begin( begin_ )
, m_curr( begin_ )
, m_step( step_ )
xrange_t( SampleType const& begin, StepType const& step, data::size_t size )
: m_begin( begin )
, m_curr( begin )
, m_step( step )
, m_index( 0 )
, m_size( size_ )
, m_size( size )
{}
// Generator interface

View File

@@ -538,8 +538,8 @@ public:
parse_filters( master_tu_id, tu_to_enable, tu_to_disable );
// 20. Set the stage: either use default run status or disable all test units
set_run_status initial_setter( had_selector_filter ? test_unit::RS_DISABLED : test_unit::RS_INVALID );
traverse_test_tree( master_tu_id, initial_setter, true );
set_run_status setter( had_selector_filter ? test_unit::RS_DISABLED : test_unit::RS_INVALID );
traverse_test_tree( master_tu_id, setter, true );
// 30. Apply all selectors and enablers.
while( !tu_to_enable.empty() ) {
@@ -552,8 +552,8 @@ public:
continue;
// set new status and add all dependencies into tu_to_enable
set_run_status enabler( test_unit::RS_ENABLED, &tu_to_enable );
traverse_test_tree( tu.p_id, enabler, true );
set_run_status setter( test_unit::RS_ENABLED, &tu_to_enable );
traverse_test_tree( tu.p_id, setter, true );
}
// 40. Apply all disablers
@@ -566,8 +566,8 @@ public:
if( !tu.is_enabled() )
continue;
set_run_status disabler( test_unit::RS_DISABLED );
traverse_test_tree( tu.p_id, disabler, true );
set_run_status setter( test_unit::RS_DISABLED );
traverse_test_tree( tu.p_id, setter, true );
}
// 50. Make sure parents of enabled test units are also enabled

View File

@@ -82,16 +82,16 @@ class delim_policy {
typedef basic_cstring<CharT const> cstring;
public:
// Constructor
explicit delim_policy( ti_delimeter_type type_ = dt_char, cstring delimeters_ = cstring() )
: m_type( type_ )
explicit delim_policy( ti_delimeter_type t = dt_char, cstring d = cstring() )
: m_type( t )
{
set_delimeters( delimeters_ );
set_delimeters( d );
}
void set_delimeters( ti_delimeter_type type_ ) { m_type = type_; }
void set_delimeters( cstring delimeters_ )
void set_delimeters( ti_delimeter_type t ) { m_type = t; }
void set_delimeters( cstring d )
{
m_delimeters = delimeters_;
m_delimeters = d;
if( !m_delimeters.is_empty() )
m_type = dt_char;

View File

@@ -141,7 +141,7 @@ public:
virtual void produce_default( arguments_store& store ) const = 0;
/// interfaces for help message reporting
virtual void usage( std::ostream& ostr, cstring negation_prefix_ )
virtual void usage( std::ostream& ostr, cstring negation_prefix )
{
ostr << "Parameter: " << p_name << '\n';
if( !p_description.empty() )
@@ -154,14 +154,14 @@ public:
ostr << " " << id.m_prefix;
if( id.m_negatable )
cla_name_help( ostr, id.m_tag, negation_prefix_ );
cla_name_help( ostr, id.m_tag, negation_prefix );
else
cla_name_help( ostr, id.m_tag, "" );
bool optional_value_ = false;
bool optional_value = false;
if( p_has_optional_value ) {
optional_value_ = true;
optional_value = true;
ostr << '[';
}
@@ -173,7 +173,7 @@ public:
value_help( ostr );
if( optional_value_ )
if( optional_value )
ostr << ']';
ostr << '\n';
@@ -182,9 +182,9 @@ public:
ostr << " Environment variable: " << p_env_var << '\n';
}
virtual void help( std::ostream& ostr, cstring negation_prefix_ )
virtual void help( std::ostream& ostr, cstring negation_prefix )
{
usage( ostr, negation_prefix_ );
usage( ostr, negation_prefix );
if( !p_help.empty() )
ostr << '\n' << p_help << '\n';
@@ -219,7 +219,7 @@ protected:
private:
/// interface for usage/help customization
virtual void cla_name_help( std::ostream& ostr, cstring cla_tag, cstring negation_prefix_ ) const
virtual void cla_name_help( std::ostream& ostr, cstring cla_tag, cstring negation_prefix ) const
{
ostr << cla_tag;
}
@@ -326,12 +326,12 @@ private:
{
m_arg_factory.produce_default( p_name, store );
}
virtual void cla_name_help( std::ostream& ostr, cstring cla_tag, cstring negation_prefix_ ) const
virtual void cla_name_help( std::ostream& ostr, cstring cla_tag, cstring negation_prefix ) const
{
if( negation_prefix_.is_empty() )
if( negation_prefix.is_empty() )
ostr << cla_tag;
else
ostr << '[' << negation_prefix_ << ']' << cla_tag;
ostr << '[' << negation_prefix << ']' << cla_tag;
}
virtual void value_help( std::ostream& ostr ) const
{

View File

@@ -2,14 +2,14 @@
===========================
log level: log_successful_tests; error type: no error;
160: Entering test case "error_on_demand"
95: info: check 'no error' has passed
164: Entering test case "error_on_demand"
99: info: check 'no error' has passed
Leaving test case "error_on_demand"
===========================
log level: log_successful_tests; error type: user message;
160: Entering test case "error_on_demand"
164: Entering test case "error_on_demand"
message
Test case error_on_demand did not check any assertions
Leaving test case "error_on_demand"
@@ -17,60 +17,60 @@ Leaving test case "error_on_demand"
===========================
log level: log_successful_tests; error type: user warning;
160: Entering test case "error_on_demand"
103: warning: in "error_on_demand": warning
164: Entering test case "error_on_demand"
107: warning: in "error_on_demand": warning
Test case error_on_demand did not check any assertions
Leaving test case "error_on_demand"
===========================
log level: log_successful_tests; error type: user non-fatal error;
160: Entering test case "error_on_demand"
107: error: in "error_on_demand": non-fatal error
164: Entering test case "error_on_demand"
111: error: in "error_on_demand": non-fatal error
Leaving test case "error_on_demand"
===========================
log level: log_successful_tests; error type: cpp exception;
160: Entering test case "error_on_demand"
164: Entering test case "error_on_demand"
0: fatal error: in "error_on_demand": class std::runtime_error: test std::runtime error what() message
117: last checkpoint: error_on_demand() throw runtime_error
121: last checkpoint: error_on_demand() throw runtime_error
Leaving test case "error_on_demand"
===========================
log level: log_successful_tests; error type: system error;
160: Entering test case "error_on_demand"
164: Entering test case "error_on_demand"
0: fatal error: in "error_on_demand": integer divide by zero
122: last checkpoint: error_on_demand() divide by zero
126: last checkpoint: error_on_demand() divide by zero
Leaving test case "error_on_demand"
===========================
log level: log_successful_tests; error type: user fatal error;
160: Entering test case "error_on_demand"
111: fatal error: in "error_on_demand": fatal error
164: Entering test case "error_on_demand"
115: fatal error: in "error_on_demand": fatal error
Leaving test case "error_on_demand"
===========================
log level: log_successful_tests; error type: system fatal error;
160: Entering test case "error_on_demand"
164: Entering test case "error_on_demand"
0: fatal error: in "error_on_demand": memory access violation
127: last checkpoint: write to an invalid address
131: last checkpoint: write to an invalid address
Test is aborted
Leaving test case "error_on_demand"
===========================
log level: log_test_suites; error type: no error;
160: Entering test case "error_on_demand"
164: Entering test case "error_on_demand"
Leaving test case "error_on_demand"
===========================
log level: log_test_suites; error type: user message;
160: Entering test case "error_on_demand"
164: Entering test case "error_on_demand"
message
Test case error_on_demand did not check any assertions
Leaving test case "error_on_demand"
@@ -78,47 +78,47 @@ Leaving test case "error_on_demand"
===========================
log level: log_test_suites; error type: user warning;
160: Entering test case "error_on_demand"
103: warning: in "error_on_demand": warning
164: Entering test case "error_on_demand"
107: warning: in "error_on_demand": warning
Test case error_on_demand did not check any assertions
Leaving test case "error_on_demand"
===========================
log level: log_test_suites; error type: user non-fatal error;
160: Entering test case "error_on_demand"
107: error: in "error_on_demand": non-fatal error
164: Entering test case "error_on_demand"
111: error: in "error_on_demand": non-fatal error
Leaving test case "error_on_demand"
===========================
log level: log_test_suites; error type: cpp exception;
160: Entering test case "error_on_demand"
164: Entering test case "error_on_demand"
0: fatal error: in "error_on_demand": class std::runtime_error: test std::runtime error what() message
117: last checkpoint: error_on_demand() throw runtime_error
121: last checkpoint: error_on_demand() throw runtime_error
Leaving test case "error_on_demand"
===========================
log level: log_test_suites; error type: system error;
160: Entering test case "error_on_demand"
164: Entering test case "error_on_demand"
0: fatal error: in "error_on_demand": integer divide by zero
122: last checkpoint: error_on_demand() divide by zero
126: last checkpoint: error_on_demand() divide by zero
Leaving test case "error_on_demand"
===========================
log level: log_test_suites; error type: user fatal error;
160: Entering test case "error_on_demand"
111: fatal error: in "error_on_demand": fatal error
164: Entering test case "error_on_demand"
115: fatal error: in "error_on_demand": fatal error
Leaving test case "error_on_demand"
===========================
log level: log_test_suites; error type: system fatal error;
160: Entering test case "error_on_demand"
164: Entering test case "error_on_demand"
0: fatal error: in "error_on_demand": memory access violation
127: last checkpoint: write to an invalid address
131: last checkpoint: write to an invalid address
Test is aborted
Leaving test case "error_on_demand"
@@ -135,36 +135,36 @@ Test case error_on_demand did not check any assertions
===========================
log level: log_messages; error type: user warning;
103: warning: in "error_on_demand": warning
107: warning: in "error_on_demand": warning
Test case error_on_demand did not check any assertions
===========================
log level: log_messages; error type: user non-fatal error;
107: error: in "error_on_demand": non-fatal error
111: error: in "error_on_demand": non-fatal error
===========================
log level: log_messages; error type: cpp exception;
0: fatal error: in "error_on_demand": class std::runtime_error: test std::runtime error what() message
117: last checkpoint: error_on_demand() throw runtime_error
121: last checkpoint: error_on_demand() throw runtime_error
===========================
log level: log_messages; error type: system error;
0: fatal error: in "error_on_demand": integer divide by zero
122: last checkpoint: error_on_demand() divide by zero
126: last checkpoint: error_on_demand() divide by zero
===========================
log level: log_messages; error type: user fatal error;
111: fatal error: in "error_on_demand": fatal error
115: fatal error: in "error_on_demand": fatal error
===========================
log level: log_messages; error type: system fatal error;
0: fatal error: in "error_on_demand": memory access violation
127: last checkpoint: write to an invalid address
131: last checkpoint: write to an invalid address
Test is aborted
===========================
@@ -178,35 +178,35 @@ log level: log_warnings; error type: user message;
===========================
log level: log_warnings; error type: user warning;
103: warning: in "error_on_demand": warning
107: warning: in "error_on_demand": warning
===========================
log level: log_warnings; error type: user non-fatal error;
107: error: in "error_on_demand": non-fatal error
111: error: in "error_on_demand": non-fatal error
===========================
log level: log_warnings; error type: cpp exception;
0: fatal error: in "error_on_demand": class std::runtime_error: test std::runtime error what() message
117: last checkpoint: error_on_demand() throw runtime_error
121: last checkpoint: error_on_demand() throw runtime_error
===========================
log level: log_warnings; error type: system error;
0: fatal error: in "error_on_demand": integer divide by zero
122: last checkpoint: error_on_demand() divide by zero
126: last checkpoint: error_on_demand() divide by zero
===========================
log level: log_warnings; error type: user fatal error;
111: fatal error: in "error_on_demand": fatal error
115: fatal error: in "error_on_demand": fatal error
===========================
log level: log_warnings; error type: system fatal error;
0: fatal error: in "error_on_demand": memory access violation
127: last checkpoint: write to an invalid address
131: last checkpoint: write to an invalid address
===========================
log level: log_all_errors; error type: no error;
@@ -223,30 +223,30 @@ log level: log_all_errors; error type: user warning;
===========================
log level: log_all_errors; error type: user non-fatal error;
107: error: in "error_on_demand": non-fatal error
111: error: in "error_on_demand": non-fatal error
===========================
log level: log_all_errors; error type: cpp exception;
0: fatal error: in "error_on_demand": class std::runtime_error: test std::runtime error what() message
117: last checkpoint: error_on_demand() throw runtime_error
121: last checkpoint: error_on_demand() throw runtime_error
===========================
log level: log_all_errors; error type: system error;
0: fatal error: in "error_on_demand": integer divide by zero
122: last checkpoint: error_on_demand() divide by zero
126: last checkpoint: error_on_demand() divide by zero
===========================
log level: log_all_errors; error type: user fatal error;
111: fatal error: in "error_on_demand": fatal error
115: fatal error: in "error_on_demand": fatal error
===========================
log level: log_all_errors; error type: system fatal error;
0: fatal error: in "error_on_demand": memory access violation
127: last checkpoint: write to an invalid address
131: last checkpoint: write to an invalid address
===========================
log level: log_cpp_exception_errors; error type: no error;
@@ -268,24 +268,24 @@ log level: log_cpp_exception_errors; error type: user non-fatal error;
log level: log_cpp_exception_errors; error type: cpp exception;
0: fatal error: in "error_on_demand": class std::runtime_error: test std::runtime error what() message
117: last checkpoint: error_on_demand() throw runtime_error
121: last checkpoint: error_on_demand() throw runtime_error
===========================
log level: log_cpp_exception_errors; error type: system error;
0: fatal error: in "error_on_demand": integer divide by zero
122: last checkpoint: error_on_demand() divide by zero
126: last checkpoint: error_on_demand() divide by zero
===========================
log level: log_cpp_exception_errors; error type: user fatal error;
111: fatal error: in "error_on_demand": fatal error
115: fatal error: in "error_on_demand": fatal error
===========================
log level: log_cpp_exception_errors; error type: system fatal error;
0: fatal error: in "error_on_demand": memory access violation
127: last checkpoint: write to an invalid address
131: last checkpoint: write to an invalid address
===========================
log level: log_system_errors; error type: no error;
@@ -311,18 +311,18 @@ log level: log_system_errors; error type: cpp exception;
log level: log_system_errors; error type: system error;
0: fatal error: in "error_on_demand": integer divide by zero
122: last checkpoint: error_on_demand() divide by zero
126: last checkpoint: error_on_demand() divide by zero
===========================
log level: log_system_errors; error type: user fatal error;
111: fatal error: in "error_on_demand": fatal error
115: fatal error: in "error_on_demand": fatal error
===========================
log level: log_system_errors; error type: system fatal error;
0: fatal error: in "error_on_demand": memory access violation
127: last checkpoint: write to an invalid address
131: last checkpoint: write to an invalid address
===========================
log level: log_fatal_errors; error type: no error;
@@ -351,13 +351,13 @@ log level: log_fatal_errors; error type: system error;
===========================
log level: log_fatal_errors; error type: user fatal error;
111: fatal error: in "error_on_demand": fatal error
115: fatal error: in "error_on_demand": fatal error
===========================
log level: log_fatal_errors; error type: system fatal error;
0: fatal error: in "error_on_demand": memory access violation
127: last checkpoint: write to an invalid address
131: last checkpoint: write to an invalid address
===========================
log level: log_nothing; error type: no error;

View File

@@ -145,10 +145,10 @@ void error_on_demand()
BOOST_AUTO_TEST_CASE( test_errors_handling )
{
#define PATTERN_FILE_NAME "errors-handling-test.pattern"
#define PATTERN_FILE_NAME "errors_handling_test.pattern"
std::string pattern_file_name(
framework::master_test_suite().argc <= 1
? (runtime_config::save_pattern() ? PATTERN_FILE_NAME : "./baseline-outputs/" PATTERN_FILE_NAME)
? (runtime_config::save_pattern() ? PATTERN_FILE_NAME : "./test_files/" PATTERN_FILE_NAME)
: framework::master_test_suite().argv[1] );
#ifdef LIMITED_TEST

View File

@@ -110,7 +110,7 @@ BOOST_AUTO_TEST_CASE( manual_test_case_creation_test )
BOOST_TEST( tc1->p_id != INV_TEST_UNIT_ID );
BOOST_TEST( tc1->p_expected_failures == 0U );
BOOST_TEST( tc1->p_timeout == 0U );
BOOST_TEST( tc1->p_timeout == 0 );
BOOST_TEST( tc1->p_name == const_string( "empty_" ) );
BOOST_TEST( tc1->p_test_func );
BOOST_TEST( tc1->p_default_status == test_unit::RS_INHERIT );
@@ -146,10 +146,10 @@ BOOST_AUTO_TEST_CASE( manual_test_suite_creation )
if( pos != const_string::npos )
fn.trim_left( pos+1 );
BOOST_TEST( fn == const_string( "test-tree-management-test.cpp" ) );
BOOST_TEST( ts1->p_line_num == 135U );
BOOST_TEST( ts1->p_line_num == 138U );
BOOST_TEST( ts1->p_expected_failures == 0U );
BOOST_TEST( ts1->p_timeout == 0U );
BOOST_TEST( ts1->p_timeout == 0 );
BOOST_TEST( ts1->p_name == const_string( "TestSuite" ) );
BOOST_TEST( ts1->p_default_status == test_unit::RS_INHERIT );
BOOST_TEST( ts1->p_run_status == test_unit::RS_INVALID );
@@ -174,7 +174,7 @@ BOOST_AUTO_TEST_CASE( manual_test_unit_registration )
BOOST_TEST( ts1->size() == 1U );
BOOST_TEST( tc1->p_expected_failures == 1U );
BOOST_TEST( tc1->p_timeout == 10U );
BOOST_TEST( tc1->p_timeout == 10 );
BOOST_TEST( ts1->p_expected_failures == 1U );
test_case* tc2 = make_test_case( &empty_, "empty2", "file_name", line_num );
@@ -183,7 +183,7 @@ BOOST_AUTO_TEST_CASE( manual_test_unit_registration )
BOOST_TEST( ts1->size() == 2U );
BOOST_TEST( tc2->p_expected_failures == 2U );
BOOST_TEST( tc2->p_timeout == 0U );
BOOST_TEST( tc2->p_timeout == 0 );
BOOST_TEST( ts1->p_expected_failures == 3U );
test_suite* ts2 = BOOST_TEST_SUITE( "TestSuite2" );

View File

@@ -312,7 +312,7 @@ BOOST_AUTO_TEST_CASE( test_param_trie_construction,
p6.add_cla_id( "-", "paramA", " " );
store2.add( p6 );
BOOST_CHECK_THROW( rt::cla::parser testparser( store2 ), rt::conflicting_param );
BOOST_CHECK_THROW( rt::cla::parser parser( store2 ), rt::conflicting_param );
rt::parameters_store store3;
@@ -324,7 +324,7 @@ BOOST_AUTO_TEST_CASE( test_param_trie_construction,
p8.add_cla_id( "-", "param", " " );
store3.add( p8 );
BOOST_CHECK_THROW( rt::cla::parser testparser( store3 ), rt::conflicting_param );
BOOST_CHECK_THROW( rt::cla::parser parser( store3 ), rt::conflicting_param );
rt::parameters_store store4;
@@ -336,7 +336,7 @@ BOOST_AUTO_TEST_CASE( test_param_trie_construction,
p10.add_cla_id( "-", "paramA", " " );
store4.add( p10 );
BOOST_CHECK_THROW( rt::cla::parser testparser( store4 ), rt::conflicting_param );
BOOST_CHECK_THROW( rt::cla::parser parser( store4 ), rt::conflicting_param );
}
//____________________________________________________________________________//
@@ -403,19 +403,19 @@ BOOST_AUTO_TEST_CASE( test_basic_parsing )
p2.add_cla_id( "-", "p2", " " );
params_store.add( p2 );
rt::cla::parser testparser( params_store );
rt::cla::parser parser( params_store );
char const* argv1[] = { "test.exe" };
rt::arguments_store args_store1;
testparser.parse( sizeof(argv1)/sizeof(char const*), (char**)argv1, args_store1 );
parser.parse( sizeof(argv1)/sizeof(char const*), (char**)argv1, args_store1 );
BOOST_TEST( args_store1.size() == 0U );
char const* argv2[] = { "test.exe", "--param_one=abc" };
rt::arguments_store args_store2;
testparser.parse( sizeof(argv2)/sizeof(char const*), (char**)argv2, args_store2 );
parser.parse( sizeof(argv2)/sizeof(char const*), (char**)argv2, args_store2 );
BOOST_TEST( args_store2.size() == 1U );
BOOST_TEST( args_store2.has( "P1" ) );
@@ -424,7 +424,7 @@ BOOST_AUTO_TEST_CASE( test_basic_parsing )
char const* argv3[] = { "test.exe", "--param_two=12" };
rt::arguments_store args_store3;
testparser.parse( sizeof(argv3)/sizeof(char const*), (char**)argv3, args_store3 );
parser.parse( sizeof(argv3)/sizeof(char const*), (char**)argv3, args_store3 );
BOOST_TEST( args_store3.size() == 1U );
BOOST_TEST( args_store3.has( "P2" ) );
@@ -433,7 +433,7 @@ BOOST_AUTO_TEST_CASE( test_basic_parsing )
char const* argv4[] = { "test.exe", "-p1", "aaa", "-p2", "37" };
rt::arguments_store args_store4;
testparser.parse( sizeof(argv4)/sizeof(char const*), (char**)argv4, args_store4 );
parser.parse( sizeof(argv4)/sizeof(char const*), (char**)argv4, args_store4 );
BOOST_TEST( args_store4.size() == 2U );
BOOST_TEST( args_store4.has( "P1" ) );
@@ -468,12 +468,12 @@ BOOST_AUTO_TEST_CASE( test_typed_argument_parsing )
p4.add_cla_id( "-", "p4", " " );
params_store.add( p4 );
rt::cla::parser testparser( params_store );
rt::cla::parser parser( params_store );
char const* argv1[] = { "test.exe", "--another=some thing", "-p1", "1.2", "-p2", "37", "--third=Y" };
rt::arguments_store args_store1;
testparser.parse( sizeof(argv1)/sizeof(char const*), (char**)argv1, args_store1 );
parser.parse( sizeof(argv1)/sizeof(char const*), (char**)argv1, args_store1 );
BOOST_TEST( args_store1.size() == 4U );
BOOST_TEST( args_store1.has( "P1" ) );
@@ -488,7 +488,7 @@ BOOST_AUTO_TEST_CASE( test_typed_argument_parsing )
char const* argv2[] = { "test.exe", "-p3" };
rt::arguments_store args_store2;
testparser.parse( sizeof(argv2)/sizeof(char const*), (char**)argv2, args_store2 );
parser.parse( sizeof(argv2)/sizeof(char const*), (char**)argv2, args_store2 );
BOOST_TEST( args_store2.size() == 1U );
BOOST_TEST( args_store2.has( "P3" ) );
BOOST_TEST( args_store2.get<bool>( "P3" ) );
@@ -510,12 +510,12 @@ BOOST_AUTO_TEST_CASE( test_parameter_name_guessing )
p2.add_cla_id( "-", "two", " " );
params_store.add( p2 );
rt::cla::parser testparser( params_store );
rt::cla::parser parser( params_store );
char const* argv1[] = { "test.exe", "--param_o=1", "-t", "2" };
rt::arguments_store args_store1;
testparser.parse( sizeof(argv1)/sizeof(char const*), (char**)argv1, args_store1 );
parser.parse( sizeof(argv1)/sizeof(char const*), (char**)argv1, args_store1 );
BOOST_TEST( args_store1.size() == 2U );
BOOST_TEST( args_store1.has( "P1" ) );
@@ -533,11 +533,11 @@ BOOST_AUTO_TEST_CASE( test_repeatable_parameters )
p1.add_cla_id( "-", "one", " " );
params_store.add( p1 );
rt::cla::parser testparser( params_store );
rt::cla::parser parser( params_store );
rt::arguments_store args_store;
char const* argv[] = { "test.exe", "-one", "1", "-one", "2" };
testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store );
parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store );
BOOST_TEST( args_store.size() == 1U );
BOOST_TEST( args_store.has( "P1" ) );
@@ -556,11 +556,11 @@ BOOST_AUTO_TEST_CASE( test_parameter_with_optional_value )
p1.add_cla_id( "--", "param_one", "=" );
params_store.add( p1 );
rt::cla::parser testparser( params_store );
rt::cla::parser parser( params_store );
rt::arguments_store args_store1;
char const* argv1[] = { "test.exe", "--param_one=1" };
testparser.parse( sizeof(argv1)/sizeof(char const*), (char**)argv1, args_store1 );
parser.parse( sizeof(argv1)/sizeof(char const*), (char**)argv1, args_store1 );
BOOST_TEST( args_store1.size() == 1U );
BOOST_TEST( args_store1.has( "P1" ) );
@@ -568,7 +568,7 @@ BOOST_AUTO_TEST_CASE( test_parameter_with_optional_value )
rt::arguments_store args_store2;
char const* argv2[] = { "test.exe", "--param_one" };
testparser.parse( sizeof(argv2)/sizeof(char const*), (char**)argv2, args_store2 );
parser.parse( sizeof(argv2)/sizeof(char const*), (char**)argv2, args_store2 );
BOOST_TEST( args_store2.size() == 1U );
BOOST_TEST( args_store2.has( "P1" ) );
@@ -595,57 +595,57 @@ BOOST_AUTO_TEST_CASE( test_validations )
p3.add_cla_id( "--", "option", "=" );
params_store.add( p3 );
rt::cla::parser testparser( params_store );
rt::cla::parser parser( params_store );
rt::arguments_store args_store;
{
char const* argv[] = { "test.exe", "param_one=1" };
BOOST_CHECK_THROW( testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ), rt::format_error );
BOOST_CHECK_THROW( parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ), rt::format_error );
}
{
char const* argv[] = { "test.exe", "/param_one=1" };
BOOST_CHECK_THROW( testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ), rt::format_error );
BOOST_CHECK_THROW( parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ), rt::format_error );
}
{
char const* argv[] = { "test.exe", "---param_one=1" };
BOOST_CHECK_THROW( testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ), rt::format_error );
BOOST_CHECK_THROW( parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ), rt::format_error );
}
{
char const* argv[] = { "test.exe", "--=1" };
BOOST_CHECK_THROW( testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ), rt::format_error );
BOOST_CHECK_THROW( parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ), rt::format_error );
}
{
char const* argv[] = { "test.exe", "--param_one:1" };
BOOST_CHECK_THROW( testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ), rt::format_error );
BOOST_CHECK_THROW( parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ), rt::format_error );
}
{
char const* argv[] = { "test.exe", "--param_one=" };
BOOST_CHECK_THROW( testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ), rt::format_error );
BOOST_CHECK_THROW( parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ), rt::format_error );
}
{
char const* argv[] = { "test.exe", "--param_one=1", "--param_one=2" };
BOOST_CHECK_THROW( testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ), rt::duplicate_arg );
BOOST_CHECK_THROW( parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ), rt::duplicate_arg );
}
{
char const* argv[] = { "test.exe", "--param=1" };
BOOST_CHECK_THROW( testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ), rt::ambiguous_param );
BOOST_CHECK_THROW( parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ), rt::ambiguous_param );
}
{
char const* argv[] = { "test.exe", "=1" };
BOOST_CHECK_THROW( testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ), rt::format_error );
BOOST_CHECK_THROW( parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ), rt::format_error );
}
{
char const* argv[] = { "test.exe", "--opt=Yeah" };
BOOST_CHECK_THROW( testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ), rt::format_error );
BOOST_CHECK_THROW( parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ), rt::format_error );
}
}
@@ -668,12 +668,12 @@ BOOST_AUTO_TEST_CASE( test_unrecognized_param_suggestions )
p3.add_cla_id( "--", "param_three", "=" );
params_store.add( p3 );
rt::cla::parser testparser( params_store );
rt::cla::parser parser( params_store );
rt::arguments_store args_store;
{
char const* argv[] = { "test.exe", "--laram_one=1" };
BOOST_CHECK_EXCEPTION( testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ),
BOOST_CHECK_EXCEPTION( parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ),
rt::unrecognized_param,
[]( rt::unrecognized_param const& ex ) -> bool {
return ex.m_typo_candidates == std::vector<rt::cstring>{"param_one"};
@@ -682,7 +682,7 @@ BOOST_AUTO_TEST_CASE( test_unrecognized_param_suggestions )
{
char const* argv[] = { "test.exe", "--paran_one=1" };
BOOST_CHECK_EXCEPTION( testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ),
BOOST_CHECK_EXCEPTION( parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ),
rt::unrecognized_param,
[]( rt::unrecognized_param const& ex ) -> bool {
return ex.m_typo_candidates == std::vector<rt::cstring>{"param_one"};
@@ -691,7 +691,7 @@ BOOST_AUTO_TEST_CASE( test_unrecognized_param_suggestions )
{
char const* argv[] = { "test.exe", "--param_onw=1" };
BOOST_CHECK_EXCEPTION( testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ),
BOOST_CHECK_EXCEPTION( parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ),
rt::unrecognized_param,
[]( rt::unrecognized_param const& ex ) -> bool {
return ex.m_typo_candidates == std::vector<rt::cstring>{"param_one"};
@@ -700,7 +700,7 @@ BOOST_AUTO_TEST_CASE( test_unrecognized_param_suggestions )
{
char const* argv[] = { "test.exe", "--param_to=1" };
BOOST_CHECK_EXCEPTION( testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ),
BOOST_CHECK_EXCEPTION( parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ),
rt::unrecognized_param,
([]( rt::unrecognized_param const& ex ) -> bool {
return ex.m_typo_candidates == std::vector<rt::cstring>{"param_three", "param_two"};
@@ -709,7 +709,7 @@ BOOST_AUTO_TEST_CASE( test_unrecognized_param_suggestions )
{
char const* argv[] = { "test.exe", "--paramtwo=1" };
BOOST_CHECK_EXCEPTION( testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ),
BOOST_CHECK_EXCEPTION( parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ),
rt::unrecognized_param,
([]( rt::unrecognized_param const& ex ) -> bool {
return ex.m_typo_candidates == std::vector<rt::cstring>{"param_two"};
@@ -718,7 +718,7 @@ BOOST_AUTO_TEST_CASE( test_unrecognized_param_suggestions )
{
char const* argv[] = { "test.exe", "--parum_=1" };
BOOST_CHECK_EXCEPTION( testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ),
BOOST_CHECK_EXCEPTION( parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ),
rt::unrecognized_param,
([]( rt::unrecognized_param const& ex ) -> bool {
return ex.m_typo_candidates == std::vector<rt::cstring>{};
@@ -727,7 +727,7 @@ BOOST_AUTO_TEST_CASE( test_unrecognized_param_suggestions )
{
char const* argv[] = { "test.exe", "--param__one=1" };
BOOST_CHECK_EXCEPTION( testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ),
BOOST_CHECK_EXCEPTION( parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ),
rt::unrecognized_param,
([]( rt::unrecognized_param const& ex ) -> bool {
return ex.m_typo_candidates == std::vector<rt::cstring>{"param_one"};
@@ -736,7 +736,7 @@ BOOST_AUTO_TEST_CASE( test_unrecognized_param_suggestions )
{
char const* argv[] = { "test.exe", "--param_twoo=1" };
BOOST_CHECK_EXCEPTION( testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ),
BOOST_CHECK_EXCEPTION( parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ),
rt::unrecognized_param,
([]( rt::unrecognized_param const& ex ) -> bool {
return ex.m_typo_candidates == std::vector<rt::cstring>{"param_two"};
@@ -759,14 +759,14 @@ BOOST_AUTO_TEST_CASE( test_end_of_params )
p2.add_cla_id( "--", "param_two", "=" );
params_store.add( p2 );
BOOST_CHECK_THROW( rt::cla::parser testparser( params_store, rt::end_of_params = "==" ), rt::invalid_cla_id );
BOOST_CHECK_THROW( rt::cla::parser parser( params_store, rt::end_of_params = "==" ), rt::invalid_cla_id );
rt::cla::parser testparser( params_store, rt::end_of_params = "--" );
rt::cla::parser parser( params_store, rt::end_of_params = "--" );
{
rt::arguments_store args_store;
char const* argv[] = { "test.exe", "--param_one=1", "--", "/abc" };
int new_argc = testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store );
int new_argc = parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store );
BOOST_TEST( args_store.size() == 1U );
BOOST_TEST( args_store.has( "P1" ) );
@@ -777,7 +777,7 @@ BOOST_AUTO_TEST_CASE( test_end_of_params )
{
rt::arguments_store args_store;
char const* argv[] = { "test.exe", "-p1", "1", "--", "--param_two=2" };
int new_argc = testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store );
int new_argc = parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store );
BOOST_TEST( args_store.size() == 1U );
BOOST_TEST( args_store.has( "P1" ) );
@@ -804,14 +804,14 @@ BOOST_AUTO_TEST_CASE( test_negation_prefix )
p2.add_cla_id( "-", "p3", " " );
params_store.add( p2 );
BOOST_CHECK_THROW( rt::cla::parser testparser( params_store, rt::negation_prefix = "no:" ), rt::invalid_cla_id );
BOOST_CHECK_THROW( rt::cla::parser parser( params_store, rt::negation_prefix = "no:" ), rt::invalid_cla_id );
rt::cla::parser testparser( params_store, rt::negation_prefix = "no_" );
rt::cla::parser parser( params_store, rt::negation_prefix = "no_" );
{
rt::arguments_store args_store;
char const* argv[] = { "test.exe", "--no_param_two" };
testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store );
parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store );
BOOST_TEST( args_store.size() == 1U );
BOOST_TEST( args_store.has( "P2" ) );
@@ -821,7 +821,7 @@ BOOST_AUTO_TEST_CASE( test_negation_prefix )
{
rt::arguments_store args_store;
char const* argv[] = { "test.exe", "-no_p2" };
testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store );
parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store );
BOOST_TEST( args_store.size() == 1U );
BOOST_TEST( args_store.has( "P2" ) );
@@ -831,19 +831,19 @@ BOOST_AUTO_TEST_CASE( test_negation_prefix )
{
rt::arguments_store args_store;
char const* argv[] = { "test.exe", "--no_param_one" };
BOOST_CHECK_THROW( testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ), rt::format_error );
BOOST_CHECK_THROW( parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ), rt::format_error );
}
{
rt::arguments_store args_store;
char const* argv[] = { "test.exe", "--no_param_two=Y" };
BOOST_CHECK_THROW( testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ), rt::format_error );
BOOST_CHECK_THROW( parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ), rt::format_error );
}
{
rt::arguments_store args_store;
char const* argv[] = { "test.exe", "-no_p3" };
BOOST_CHECK_THROW( testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ), rt::format_error );
BOOST_CHECK_THROW( parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ), rt::format_error );
}
}
@@ -874,12 +874,12 @@ BOOST_AUTO_TEST_CASE( test_enum_parameter )
p2.add_cla_id( "--", "param_two", " " );
params_store.add( p2 );
rt::cla::parser testparser( params_store );
rt::cla::parser parser( params_store );
{
rt::arguments_store args_store;
char const* argv[] = { "test.exe", "--param_one=V1" };
testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store );
parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store );
BOOST_TEST( args_store.has( "P1" ) );
BOOST_TEST( args_store.get<EnumType>( "P1" ) == V1 );
}
@@ -887,7 +887,7 @@ BOOST_AUTO_TEST_CASE( test_enum_parameter )
{
rt::arguments_store args_store;
char const* argv[] = { "test.exe", "--param_one=V2" };
testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store );
parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store );
rt::finalize_arguments( params_store, args_store );
BOOST_TEST( args_store.has( "P1" ) );
BOOST_TEST( args_store.get<EnumType>( "P1" ) == V2 );
@@ -896,7 +896,7 @@ BOOST_AUTO_TEST_CASE( test_enum_parameter )
{
rt::arguments_store args_store;
char const* argv[] = { "test.exe" };
testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store );
parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store );
rt::finalize_arguments( params_store, args_store );
BOOST_TEST( args_store.has( "P1" ) );
BOOST_TEST( args_store.get<EnumType>( "P1" ) == V3 );
@@ -905,13 +905,13 @@ BOOST_AUTO_TEST_CASE( test_enum_parameter )
{
rt::arguments_store args_store;
char const* argv[] = { "test.exe", "--param_one=V3" };
BOOST_CHECK_THROW( testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ), rt::format_error );
BOOST_CHECK_THROW( parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store ), rt::format_error );
}
{
rt::arguments_store args_store;
char const* argv[] = { "test.exe", "--param_two", "V2alt", "--param_two", "V1", "--param_two", "V3" };
testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store );
parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store );
rt::finalize_arguments( params_store, args_store );
BOOST_TEST( args_store.has( "P2" ) );
BOOST_TEST( args_store.get<std::vector<EnumType>>( "P2" ) == (std::vector<EnumType>{V2, V1, V3}) );
@@ -920,7 +920,7 @@ BOOST_AUTO_TEST_CASE( test_enum_parameter )
{
rt::arguments_store args_store;
char const* argv[] = { "test.exe" };
testparser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store );
parser.parse( sizeof(argv)/sizeof(char const*), (char**)argv, args_store );
rt::finalize_arguments( params_store, args_store );
BOOST_TEST( args_store.has( "P2" ) );
BOOST_TEST( args_store.get<std::vector<EnumType>>( "P2" ) == std::vector<EnumType>{} );

View File

@@ -135,41 +135,41 @@ BOOST_AUTO_TEST_CASE( test_basic_value_expression_construction )
using namespace boost::test_tools;
{
EXPR_TYPE( E_under_test, 1 );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, 1 );
predicate_result const& res = E.evaluate();
BOOST_TEST( res );
BOOST_TEST( res.message().is_empty() );
}
{
EXPR_TYPE( E_under_test, 0 );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, 0 );
predicate_result const& res = E.evaluate();
BOOST_TEST( !res );
BOOST_TEST( res.message() == " [(bool)0 is false]" );
}
{
EXPR_TYPE( E_under_test, true );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, true );
predicate_result const& res = E.evaluate();
BOOST_TEST( res );
BOOST_TEST( res.message().is_empty() );
}
{
EXPR_TYPE( E_under_test, 1.5 );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, 1.5 );
predicate_result const& res = E.evaluate();
BOOST_TEST( res );
}
{
EXPR_TYPE( E_under_test, "abc" );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, "abc" );
predicate_result const& res = E.evaluate();
BOOST_TEST( res );
}
{
EXPR_TYPE( E_under_test, 1>2 );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, 1>2 );
predicate_result const& res = E.evaluate();
BOOST_TEST( !res );
BOOST_TEST( res.message() == " [1 <= 2]" );
}
@@ -183,45 +183,45 @@ BOOST_AUTO_TEST_CASE( test_comparison_expression )
using namespace boost::test_tools;
{
EXPR_TYPE( E_under_test, 1>2 );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, 1>2 );
predicate_result const& res = E.evaluate();
BOOST_TEST( !res );
BOOST_TEST( res.message() == " [1 <= 2]" );
}
{
EXPR_TYPE( E_under_test, 100 < 50 );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, 100 < 50 );
predicate_result const& res = E.evaluate();
BOOST_TEST( !res );
BOOST_TEST( res.message() == " [100 >= 50]" );
}
{
EXPR_TYPE( E_under_test, 5 <= 4 );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, 5 <= 4 );
predicate_result const& res = E.evaluate();
BOOST_TEST( !res );
BOOST_TEST( res.message() == " [5 > 4]" );
}
{
EXPR_TYPE( E_under_test, 10>=20 );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, 10>=20 );
predicate_result const& res = E.evaluate();
BOOST_TEST( !res );
BOOST_TEST( res.message() == " [10 < 20]" );
}
{
int i = 10;
EXPR_TYPE( E_under_test, i != 10 );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, i != 10 );
predicate_result const& res = E.evaluate();
BOOST_TEST( !res );
BOOST_TEST( res.message() == " [10 == 10]" );
}
{
int i = 5;
EXPR_TYPE( E_under_test, i == 3 );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, i == 3 );
predicate_result const& res = E.evaluate();
BOOST_TEST( !res );
BOOST_TEST( res.message() == " [5 != 3]" );
}
@@ -236,8 +236,8 @@ BOOST_AUTO_TEST_CASE( test_arithmetic_ops )
{
int i = 3;
int j = 5;
EXPR_TYPE( E_under_test, i+j !=8 );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, i+j !=8 );
predicate_result const& res = E.evaluate();
BOOST_TEST( !res );
BOOST_TEST( res.message() == " [3 + 5 == 8]" );
}
@@ -245,16 +245,16 @@ BOOST_AUTO_TEST_CASE( test_arithmetic_ops )
{
int i = 3;
int j = 5;
EXPR_TYPE( E_under_test, 2*i-j > 1 );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, 2*i-j > 1 );
predicate_result const& res = E.evaluate();
BOOST_TEST( !res );
BOOST_TEST( res.message() == " [2 * 3 - 5 <= 1]" );
}
{
int j = 5;
EXPR_TYPE( E_under_test, 2<<j < 30 );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, 2<<j < 30 );
predicate_result const& res = E.evaluate();
BOOST_TEST( !res );
BOOST_TEST( res.message() == " [2 << 5 >= 30]" );
}
@@ -262,8 +262,8 @@ BOOST_AUTO_TEST_CASE( test_arithmetic_ops )
{
int i = 2;
int j = 5;
EXPR_TYPE( E_under_test, i&j );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, i&j );
predicate_result const& res = E.evaluate();
BOOST_TEST( !res );
BOOST_TEST( res.message() == " [2 & 5]" );
}
@@ -271,16 +271,16 @@ BOOST_AUTO_TEST_CASE( test_arithmetic_ops )
{
int i = 3;
int j = 5;
EXPR_TYPE( E_under_test, i^j^6 );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, i^j^6 );
predicate_result const& res = E.evaluate();
BOOST_TEST( !res );
BOOST_TEST( res.message() == " [3 ^ 5 ^ 6]" );
}
// do not support
// EXPR_TYPE( E_under_test, 99/2 == 48 || 101/2 > 50 );
// EXPR_TYPE( E_under_test, a ? 100 < 50 : 25*2 == 50 );
// EXPR_TYPE( E_under_test, true,false );
// EXPR_TYPE( E, 99/2 == 48 || 101/2 > 50 );
// EXPR_TYPE( E, a ? 100 < 50 : 25*2 == 50 );
// EXPR_TYPE( E, true,false );
}
//____________________________________________________________________________//
@@ -327,8 +327,8 @@ BOOST_AUTO_TEST_CASE( test_objects )
Testee obj;
Testee::s_copy_counter = 0;
EXPR_TYPE( E_under_test, obj );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, obj );
predicate_result const& res = E.evaluate();
BOOST_TEST( !res );
BOOST_TEST( res.message() == " [(bool)Testee is false]" );
BOOST_TEST( Testee::s_copy_counter == expected_copy_count );
@@ -338,8 +338,8 @@ BOOST_AUTO_TEST_CASE( test_objects )
Testee const obj;
Testee::s_copy_counter = 0;
EXPR_TYPE( E_under_test, obj );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, obj );
predicate_result const& res = E.evaluate();
BOOST_TEST( !res );
BOOST_TEST( res.message() == " [(bool)Testee is false]" );
BOOST_TEST( Testee::s_copy_counter == expected_copy_count );
@@ -348,8 +348,8 @@ BOOST_AUTO_TEST_CASE( test_objects )
{
Testee::s_copy_counter = 0;
EXPR_TYPE( E_under_test, get_obj() );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, get_obj() );
predicate_result const& res = E.evaluate();
BOOST_TEST( !res );
BOOST_TEST( res.message() == " [(bool)Testee is false]" );
BOOST_TEST( Testee::s_copy_counter == expected_copy_count );
@@ -358,8 +358,8 @@ BOOST_AUTO_TEST_CASE( test_objects )
{
Testee::s_copy_counter = 0;
EXPR_TYPE( E_under_test, get_const_obj() );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, get_const_obj() );
predicate_result const& res = E.evaluate();
BOOST_TEST( !res );
BOOST_TEST( res.message() == " [(bool)Testee is false]" );
BOOST_TEST( Testee::s_copy_counter == expected_copy_count );
@@ -371,8 +371,8 @@ BOOST_AUTO_TEST_CASE( test_objects )
Testee t1;
Testee t2;
EXPR_TYPE( E_under_test, t1 != t2 );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, t1 != t2 );
predicate_result const& res = E.evaluate();
BOOST_TEST( !res );
BOOST_TEST( res.message() == " [Testee == Testee]" );
BOOST_TEST( Testee::s_copy_counter == 0 );
@@ -382,8 +382,8 @@ BOOST_AUTO_TEST_CASE( test_objects )
NC nc1;
NC nc2;
EXPR_TYPE( E_under_test, nc1 == nc2 );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, nc1 == nc2 );
predicate_result const& res = E.evaluate();
BOOST_TEST( !res );
BOOST_TEST( res.message() == " [NC != NC]" );
}
@@ -398,8 +398,8 @@ BOOST_AUTO_TEST_CASE( test_pointers )
{
Testee* ptr = 0;
EXPR_TYPE( E_under_test, ptr );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, ptr );
predicate_result const& res = E.evaluate();
BOOST_TEST( !res );
}
@@ -407,8 +407,8 @@ BOOST_AUTO_TEST_CASE( test_pointers )
Testee obj1;
Testee obj2;
EXPR_TYPE( E_under_test, &obj1 == &obj2 );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, &obj1 == &obj2 );
predicate_result const& res = E.evaluate();
BOOST_TEST( !res );
}
@@ -416,8 +416,8 @@ BOOST_AUTO_TEST_CASE( test_pointers )
Testee obj;
Testee* ptr =&obj;
EXPR_TYPE( E_under_test, *ptr );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, *ptr );
predicate_result const& res = E.evaluate();
BOOST_TEST( !res );
BOOST_TEST( res.message() == " [(bool)Testee is false]" );
}
@@ -427,15 +427,15 @@ BOOST_AUTO_TEST_CASE( test_pointers )
Testee* ptr =&obj;
bool Testee::* mem_ptr =&Testee::m_value;
EXPR_TYPE( E_under_test, ptr->*mem_ptr );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, ptr->*mem_ptr );
predicate_result const& res = E.evaluate();
BOOST_TEST( !res );
}
// do not support
// Testee obj;
// bool Testee::* mem_ptr =&Testee::m_value;
// EXPR_TYPE( E_under_test, obj.*mem_ptr );
// EXPR_TYPE( E, obj.*mem_ptr );
}
//____________________________________________________________________________//
@@ -447,8 +447,8 @@ BOOST_AUTO_TEST_CASE( test_mutating_ops )
{
int j = 5;
EXPR_TYPE( E_under_test, j = 0 );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, j = 0 );
predicate_result const& res = E.evaluate();
BOOST_TEST( !res );
BOOST_TEST( res.message() == " [(bool)0 is false]" );
BOOST_TEST( j == 0 );
@@ -457,8 +457,8 @@ BOOST_AUTO_TEST_CASE( test_mutating_ops )
{
int j = 5;
EXPR_TYPE( E_under_test, j -= 5 );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, j -= 5 );
predicate_result const& res = E.evaluate();
BOOST_TEST( !res );
BOOST_TEST( res.message() == " [(bool)0 is false]" );
BOOST_TEST( j == 0 );
@@ -467,8 +467,8 @@ BOOST_AUTO_TEST_CASE( test_mutating_ops )
{
int j = 5;
EXPR_TYPE( E_under_test, j *= 0 );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, j *= 0 );
predicate_result const& res = E.evaluate();
BOOST_TEST( !res );
BOOST_TEST( res.message() == " [(bool)0 is false]" );
BOOST_TEST( j == 0 );
@@ -477,8 +477,8 @@ BOOST_AUTO_TEST_CASE( test_mutating_ops )
{
int j = 5;
EXPR_TYPE( E_under_test, j /= 10 );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, j /= 10 );
predicate_result const& res = E.evaluate();
BOOST_TEST( !res );
BOOST_TEST( res.message() == " [(bool)0 is false]" );
BOOST_TEST( j == 0 );
@@ -487,8 +487,8 @@ BOOST_AUTO_TEST_CASE( test_mutating_ops )
{
int j = 4;
EXPR_TYPE( E_under_test, j %= 2 );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, j %= 2 );
predicate_result const& res = E.evaluate();
BOOST_TEST( !res );
BOOST_TEST( res.message() == " [(bool)0 is false]" );
BOOST_TEST( j == 0 );
@@ -497,13 +497,15 @@ BOOST_AUTO_TEST_CASE( test_mutating_ops )
{
int j = 5;
EXPR_TYPE( E_under_test, j ^= j );
predicate_result const& res = E_under_test.evaluate();
EXPR_TYPE( E, j ^= j );
predicate_result const& res = E.evaluate();
BOOST_TEST( !res );
BOOST_TEST( res.message() == " [(bool)0 is false]" );
BOOST_TEST( j == 0 );
}
}
//____________________________________________________________________________//
// EOF

View File

@@ -67,4 +67,6 @@ BOOST_AUTO_TEST_CASE( check_string_compare )
BOOST_TEST(buf_str == buf_str);
}
//____________________________________________________________________________//
// EOF

View File

@@ -21,8 +21,8 @@ BOOST_TEST_SPECIALIZED_COLLECTION_COMPARE(std::vector<int>)
{ \
BOOST_TEST_INFO( "validating operator " #op ); \
bool expected = (c1 op c2); \
auto const& E_under_test = tt::assertion::seed()->* c1 op c2 ; \
auto const& res = E_under_test.evaluate(); \
BOOST_TEST_BUILD_ASSERTION( c1 op c2 ); \
auto const& res = E.evaluate(); \
BOOST_TEST( expected == !!res ); \
} \
/**/
@@ -134,4 +134,6 @@ BOOST_AUTO_TEST_CASE( test_lexicographic_ge )
BOOST_TEST( b >= a, tt::lexicographic() );
}
//____________________________________________________________________________//
// EOF

View File

@@ -52,4 +52,6 @@ BOOST_DATA_TEST_CASE( test_data_case, boost::unit_test::data::make(generate_vect
BOOST_TEST(sample);
}
//____________________________________________________________________________//
// EOF

View File

@@ -275,4 +275,6 @@ BOOST_AUTO_TEST_CASE( test_close_at_tolerance )
BOOST_TEST( !::fpc::close_at_tolerance<double>( ::fpc::percent_tolerance( epsilon ) )(fp1, fp2) );
}
//____________________________________________________________________________//
// EOF

View File

@@ -185,4 +185,6 @@ BOOST_AUTO_TEST_CASE( test_match_pattern )
}
}
//____________________________________________________________________________//
// EOF

View File

@@ -14,8 +14,6 @@
#define BOOST_TEST_MODULE tools under debugger test
#include <boost/test/unit_test.hpp>
//____________________________________________________________________________//
static int
foo( int arg )
{
@@ -25,8 +23,6 @@ foo( int arg )
return arg * arg;
}
//____________________________________________________________________________//
BOOST_AUTO_TEST_CASE( test )
{
int i = 2;
@@ -37,4 +33,6 @@ BOOST_AUTO_TEST_CASE( test )
BOOST_CHECK_THROW( foo(0), std::runtime_error );
}
//____________________________________________________________________________//
// EOF

View File

@@ -14,11 +14,8 @@
#define BOOST_TEST_MODULE tools under debugger test
#include <boost/test/unit_test.hpp>
// STL
#include <exception>
//____________________________________________________________________________//
static int
foo( int arg )
{
@@ -28,8 +25,6 @@ foo( int arg )
return arg * arg;
}
//____________________________________________________________________________//
BOOST_AUTO_TEST_CASE( test )
{
int i = 2;
@@ -40,4 +35,6 @@ BOOST_AUTO_TEST_CASE( test )
BOOST_CHECK_THROW( foo(0), std::runtime_error );
}
//____________________________________________________________________________//
// EOF