mirror of
https://github.com/catchorg/Catch2.git
synced 2024-11-22 21:36:11 +01:00
Removed use of std::copy_if (as it's limited to c++11)
This commit is contained in:
parent
e73583d556
commit
8a05f46a37
@ -53,15 +53,6 @@ namespace Catch {
|
|||||||
bool matchTest( TestCase const& testCase, TestSpec const& testSpec, IConfig const& config ) {
|
bool matchTest( TestCase const& testCase, TestSpec const& testSpec, IConfig const& config ) {
|
||||||
return testSpec.matches( testCase ) && ( config.allowThrows() || !testCase.throws() );
|
return testSpec.matches( testCase ) && ( config.allowThrows() || !testCase.throws() );
|
||||||
}
|
}
|
||||||
struct TestMatcher {
|
|
||||||
TestMatcher( TestSpec const& testSpec, bool allowThrows ) : m_testSpec( testSpec ), m_allowThrows( allowThrows ) {}
|
|
||||||
|
|
||||||
bool operator()( TestCase const& testCase ) const {
|
|
||||||
return m_testSpec.matches( testCase ) && ( m_allowThrows || !testCase.throws() );
|
|
||||||
}
|
|
||||||
TestSpec m_testSpec;
|
|
||||||
bool m_allowThrows;
|
|
||||||
};
|
|
||||||
|
|
||||||
void enforceNoDuplicateTestCases( std::vector<TestCase> const& functions ) {
|
void enforceNoDuplicateTestCases( std::vector<TestCase> const& functions ) {
|
||||||
std::set<TestCase> seenFunctions;
|
std::set<TestCase> seenFunctions;
|
||||||
@ -82,7 +73,12 @@ namespace Catch {
|
|||||||
|
|
||||||
std::vector<TestCase> filterTests( std::vector<TestCase> const& testCases, TestSpec const& testSpec, IConfig const& config ) {
|
std::vector<TestCase> filterTests( std::vector<TestCase> const& testCases, TestSpec const& testSpec, IConfig const& config ) {
|
||||||
std::vector<TestCase> filtered;
|
std::vector<TestCase> filtered;
|
||||||
std::copy_if( testCases.begin(), testCases.end(), std::back_inserter( filtered ), TestMatcher( testSpec, config.allowThrows() ) );
|
filtered.reserve( testCases.size() );
|
||||||
|
for( std::vector<TestCase>::const_iterator it = testCases.begin(), itEnd = testCases.end();
|
||||||
|
it != itEnd;
|
||||||
|
++it )
|
||||||
|
if( matchTest( *it, testSpec, config ) )
|
||||||
|
filtered.push_back( *it );
|
||||||
return filtered;
|
return filtered;
|
||||||
}
|
}
|
||||||
std::vector<TestCase> const& getAllTestCasesSorted( IConfig const& config ) {
|
std::vector<TestCase> const& getAllTestCasesSorted( IConfig const& config ) {
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/*
|
/*
|
||||||
* Catch v1.2.1-develop.12
|
* Catch v1.2.1-develop.12
|
||||||
* Generated: 2015-08-07 17:29:52.878958
|
* Generated: 2015-08-07 17:51:37.651202
|
||||||
* ----------------------------------------------------------
|
* ----------------------------------------------------------
|
||||||
* This file has been merged from multiple headers. Please don't edit it directly
|
* This file has been merged from multiple headers. Please don't edit it directly
|
||||||
* Copyright (c) 2012 Two Blue Cubes Ltd. All rights reserved.
|
* Copyright (c) 2012 Two Blue Cubes Ltd. All rights reserved.
|
||||||
@ -5920,15 +5920,6 @@ namespace Catch {
|
|||||||
bool matchTest( TestCase const& testCase, TestSpec const& testSpec, IConfig const& config ) {
|
bool matchTest( TestCase const& testCase, TestSpec const& testSpec, IConfig const& config ) {
|
||||||
return testSpec.matches( testCase ) && ( config.allowThrows() || !testCase.throws() );
|
return testSpec.matches( testCase ) && ( config.allowThrows() || !testCase.throws() );
|
||||||
}
|
}
|
||||||
struct TestMatcher {
|
|
||||||
TestMatcher( TestSpec const& testSpec, bool allowThrows ) : m_testSpec( testSpec ), m_allowThrows( allowThrows ) {}
|
|
||||||
|
|
||||||
bool operator()( TestCase const& testCase ) const {
|
|
||||||
return m_testSpec.matches( testCase ) && ( m_allowThrows || !testCase.throws() );
|
|
||||||
}
|
|
||||||
TestSpec m_testSpec;
|
|
||||||
bool m_allowThrows;
|
|
||||||
};
|
|
||||||
|
|
||||||
void enforceNoDuplicateTestCases( std::vector<TestCase> const& functions ) {
|
void enforceNoDuplicateTestCases( std::vector<TestCase> const& functions ) {
|
||||||
std::set<TestCase> seenFunctions;
|
std::set<TestCase> seenFunctions;
|
||||||
@ -5949,7 +5940,12 @@ namespace Catch {
|
|||||||
|
|
||||||
std::vector<TestCase> filterTests( std::vector<TestCase> const& testCases, TestSpec const& testSpec, IConfig const& config ) {
|
std::vector<TestCase> filterTests( std::vector<TestCase> const& testCases, TestSpec const& testSpec, IConfig const& config ) {
|
||||||
std::vector<TestCase> filtered;
|
std::vector<TestCase> filtered;
|
||||||
std::copy_if( testCases.begin(), testCases.end(), std::back_inserter( filtered ), TestMatcher( testSpec, config.allowThrows() ) );
|
filtered.reserve( testCases.size() );
|
||||||
|
for( std::vector<TestCase>::const_iterator it = testCases.begin(), itEnd = testCases.end();
|
||||||
|
it != itEnd;
|
||||||
|
++it )
|
||||||
|
if( matchTest( *it, testSpec, config ) )
|
||||||
|
filtered.push_back( *it );
|
||||||
return filtered;
|
return filtered;
|
||||||
}
|
}
|
||||||
std::vector<TestCase> const& getAllTestCasesSorted( IConfig const& config ) {
|
std::vector<TestCase> const& getAllTestCasesSorted( IConfig const& config ) {
|
||||||
|
Loading…
Reference in New Issue
Block a user