mirror of
https://github.com/catchorg/Catch2.git
synced 2024-11-22 13:26:10 +01:00
parent
69f35a5ac8
commit
0a0ebf5003
@ -85,11 +85,10 @@ namespace Matchers {
|
|||||||
// - a more general approach would be via a compare template that defaults
|
// - a more general approach would be via a compare template that defaults
|
||||||
// to using !=. but could be specialised for, e.g. std::vector<T> etc
|
// to using !=. but could be specialised for, e.g. std::vector<T> etc
|
||||||
// - then just call that directly
|
// - then just call that directly
|
||||||
if (m_comparator.size() != v.size())
|
if ( m_comparator.size() != v.size() ) { return false; }
|
||||||
return false;
|
for ( std::size_t i = 0; i < v.size(); ++i ) {
|
||||||
for (std::size_t i = 0; i < v.size(); ++i)
|
if ( !( m_comparator[i] == v[i] ) ) { return false; }
|
||||||
if (m_comparator[i] != v[i])
|
}
|
||||||
return false;
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
std::string describe() const override {
|
std::string describe() const override {
|
||||||
|
@ -406,6 +406,25 @@ TEST_CASE( "Vector matchers that fail", "[matchers][vector][.][failing]" ) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
namespace {
|
||||||
|
struct SomeType {
|
||||||
|
int i;
|
||||||
|
friend bool operator==( SomeType lhs, SomeType rhs ) {
|
||||||
|
return lhs.i == rhs.i;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
} // end anonymous namespace
|
||||||
|
|
||||||
|
TEST_CASE( "Vector matcher with elements without !=", "[matchers][vector][approvals]" ) {
|
||||||
|
std::vector<SomeType> lhs, rhs;
|
||||||
|
lhs.push_back( { 1 } );
|
||||||
|
lhs.push_back( { 2 } );
|
||||||
|
rhs.push_back( { 1 } );
|
||||||
|
rhs.push_back( { 1 } );
|
||||||
|
|
||||||
|
REQUIRE_THAT( lhs, !Equals(rhs) );
|
||||||
|
}
|
||||||
|
|
||||||
TEST_CASE( "Exception matchers that succeed",
|
TEST_CASE( "Exception matchers that succeed",
|
||||||
"[matchers][exceptions][!throws]" ) {
|
"[matchers][exceptions][!throws]" ) {
|
||||||
CHECK_THROWS_MATCHES(
|
CHECK_THROWS_MATCHES(
|
||||||
|
Loading…
Reference in New Issue
Block a user