2017-03-02 1 views
2

벡터가 gtest에서 비어 있지 않은지 확인하고 싶습니다만, 일반적으로 matcher의 부정을 검사하는 방법을 더 많이 이해하고 싶습니다.gtest에서 정규 표현식을 부정하거나 어떻게 예상합니까?

나는 보통 크기가 0보다 큰

EXPECT_THAT(vector.size(), Gt(0)); 

입니다 체크 인하와 나는 내 자신의 정규

MATCHER(IsNotEmpty, !negation ? "isn't empty" : "is empty") { 
if (!arg.empty()) { 
    return true; 
} 
*result_listener << "whose size is " << arg.size(); 
return false; 
} 

을 쓸 수 있습니다 알고 있지만, 어떤 정규 표현을 부정하는 단지 수 있는지 궁금하네요

답변

3

일부 matcher를 합성하고 비슷한 작업을 할 수 있습니다.

EXPECT_THAT(vector, Not(IsEmpty())); 

는 흥미로운 복합

AllOf(m1, m2, ..., mn) 
AnyOf(m1, m2, ..., mn) 
을 정합
관련 문제