1*6777b538SAndroid Build Coastguard Worker // Copyright 2010 The Chromium Authors 2*6777b538SAndroid Build Coastguard Worker // Use of this source code is governed by a BSD-style license that can be 3*6777b538SAndroid Build Coastguard Worker // found in the LICENSE file. 4*6777b538SAndroid Build Coastguard Worker 5*6777b538SAndroid Build Coastguard Worker #ifndef TESTING_GTEST_MAC_H_ 6*6777b538SAndroid Build Coastguard Worker #define TESTING_GTEST_MAC_H_ 7*6777b538SAndroid Build Coastguard Worker 8*6777b538SAndroid Build Coastguard Worker #include "testing/gtest/include/gtest/gtest.h" 9*6777b538SAndroid Build Coastguard Worker #include "third_party/googletest/src/googletest/include/gtest/internal/gtest-port.h" 10*6777b538SAndroid Build Coastguard Worker 11*6777b538SAndroid Build Coastguard Worker #ifdef GTEST_OS_MAC 12*6777b538SAndroid Build Coastguard Worker 13*6777b538SAndroid Build Coastguard Worker #import <Foundation/Foundation.h> 14*6777b538SAndroid Build Coastguard Worker 15*6777b538SAndroid Build Coastguard Worker namespace testing { 16*6777b538SAndroid Build Coastguard Worker namespace internal { 17*6777b538SAndroid Build Coastguard Worker 18*6777b538SAndroid Build Coastguard Worker // This overloaded version allows comparison between ObjC objects that conform 19*6777b538SAndroid Build Coastguard Worker // to the NSObject protocol. Used to implement {ASSERT|EXPECT}_NSEQ(). 20*6777b538SAndroid Build Coastguard Worker GTEST_API_ AssertionResult CmpHelperNSEQ(const char* expected_expression, 21*6777b538SAndroid Build Coastguard Worker const char* actual_expression, 22*6777b538SAndroid Build Coastguard Worker id<NSObject> expected, 23*6777b538SAndroid Build Coastguard Worker id<NSObject> actual); 24*6777b538SAndroid Build Coastguard Worker 25*6777b538SAndroid Build Coastguard Worker // This overloaded version allows comparison between ObjC objects that conform 26*6777b538SAndroid Build Coastguard Worker // to the NSObject protocol. Used to implement {ASSERT|EXPECT}_NSNE(). 27*6777b538SAndroid Build Coastguard Worker GTEST_API_ AssertionResult CmpHelperNSNE(const char* expected_expression, 28*6777b538SAndroid Build Coastguard Worker const char* actual_expression, 29*6777b538SAndroid Build Coastguard Worker id<NSObject> expected, 30*6777b538SAndroid Build Coastguard Worker id<NSObject> actual); 31*6777b538SAndroid Build Coastguard Worker 32*6777b538SAndroid Build Coastguard Worker #if !defined(GTEST_OS_IOS) 33*6777b538SAndroid Build Coastguard Worker 34*6777b538SAndroid Build Coastguard Worker // This overloaded version allows comparison between NSRect objects using 35*6777b538SAndroid Build Coastguard Worker // NSEqualRects. Used to implement {ASSERT|EXPECT}_NSEQ(). 36*6777b538SAndroid Build Coastguard Worker GTEST_API_ AssertionResult CmpHelperNSEQ(const char* expected_expression, 37*6777b538SAndroid Build Coastguard Worker const char* actual_expression, 38*6777b538SAndroid Build Coastguard Worker const NSRect& expected, 39*6777b538SAndroid Build Coastguard Worker const NSRect& actual); 40*6777b538SAndroid Build Coastguard Worker 41*6777b538SAndroid Build Coastguard Worker // This overloaded version allows comparison between NSRect objects using 42*6777b538SAndroid Build Coastguard Worker // NSEqualRects. Used to implement {ASSERT|EXPECT}_NSNE(). 43*6777b538SAndroid Build Coastguard Worker GTEST_API_ AssertionResult CmpHelperNSNE(const char* expected_expression, 44*6777b538SAndroid Build Coastguard Worker const char* actual_expression, 45*6777b538SAndroid Build Coastguard Worker const NSRect& expected, 46*6777b538SAndroid Build Coastguard Worker const NSRect& actual); 47*6777b538SAndroid Build Coastguard Worker 48*6777b538SAndroid Build Coastguard Worker // This overloaded version allows comparison between NSPoint objects using 49*6777b538SAndroid Build Coastguard Worker // NSEqualPoints. Used to implement {ASSERT|EXPECT}_NSEQ(). 50*6777b538SAndroid Build Coastguard Worker GTEST_API_ AssertionResult CmpHelperNSEQ(const char* expected_expression, 51*6777b538SAndroid Build Coastguard Worker const char* actual_expression, 52*6777b538SAndroid Build Coastguard Worker const NSPoint& expected, 53*6777b538SAndroid Build Coastguard Worker const NSPoint& actual); 54*6777b538SAndroid Build Coastguard Worker 55*6777b538SAndroid Build Coastguard Worker // This overloaded version allows comparison between NSPoint objects using 56*6777b538SAndroid Build Coastguard Worker // NSEqualPoints. Used to implement {ASSERT|EXPECT}_NSNE(). 57*6777b538SAndroid Build Coastguard Worker GTEST_API_ AssertionResult CmpHelperNSNE(const char* expected_expression, 58*6777b538SAndroid Build Coastguard Worker const char* actual_expression, 59*6777b538SAndroid Build Coastguard Worker const NSPoint& expected, 60*6777b538SAndroid Build Coastguard Worker const NSPoint& actual); 61*6777b538SAndroid Build Coastguard Worker 62*6777b538SAndroid Build Coastguard Worker // This overloaded version allows comparison between NSRange objects using 63*6777b538SAndroid Build Coastguard Worker // NSEqualRanges. Used to implement {ASSERT|EXPECT}_NSEQ(). 64*6777b538SAndroid Build Coastguard Worker GTEST_API_ AssertionResult CmpHelperNSEQ(const char* expected_expression, 65*6777b538SAndroid Build Coastguard Worker const char* actual_expression, 66*6777b538SAndroid Build Coastguard Worker const NSRange& expected, 67*6777b538SAndroid Build Coastguard Worker const NSRange& actual); 68*6777b538SAndroid Build Coastguard Worker 69*6777b538SAndroid Build Coastguard Worker // This overloaded version allows comparison between NSRange objects using 70*6777b538SAndroid Build Coastguard Worker // NSEqualRanges. Used to implement {ASSERT|EXPECT}_NSNE(). 71*6777b538SAndroid Build Coastguard Worker GTEST_API_ AssertionResult CmpHelperNSNE(const char* expected_expression, 72*6777b538SAndroid Build Coastguard Worker const char* actual_expression, 73*6777b538SAndroid Build Coastguard Worker const NSRange& expected, 74*6777b538SAndroid Build Coastguard Worker const NSRange& actual); 75*6777b538SAndroid Build Coastguard Worker 76*6777b538SAndroid Build Coastguard Worker #endif // !GTEST_OS_IOS 77*6777b538SAndroid Build Coastguard Worker 78*6777b538SAndroid Build Coastguard Worker } // namespace internal 79*6777b538SAndroid Build Coastguard Worker } // namespace testing 80*6777b538SAndroid Build Coastguard Worker 81*6777b538SAndroid Build Coastguard Worker // Tests that [expected isEqual:actual]. 82*6777b538SAndroid Build Coastguard Worker #define EXPECT_NSEQ(expected, actual) \ 83*6777b538SAndroid Build Coastguard Worker EXPECT_PRED_FORMAT2(::testing::internal::CmpHelperNSEQ, expected, actual) 84*6777b538SAndroid Build Coastguard Worker #define EXPECT_NSNE(val1, val2) \ 85*6777b538SAndroid Build Coastguard Worker EXPECT_PRED_FORMAT2(::testing::internal::CmpHelperNSNE, val1, val2) 86*6777b538SAndroid Build Coastguard Worker 87*6777b538SAndroid Build Coastguard Worker #define ASSERT_NSEQ(expected, actual) \ 88*6777b538SAndroid Build Coastguard Worker ASSERT_PRED_FORMAT2(::testing::internal::CmpHelperNSEQ, expected, actual) 89*6777b538SAndroid Build Coastguard Worker #define ASSERT_NSNE(val1, val2) \ 90*6777b538SAndroid Build Coastguard Worker ASSERT_PRED_FORMAT2(::testing::internal::CmpHelperNSNE, val1, val2) 91*6777b538SAndroid Build Coastguard Worker 92*6777b538SAndroid Build Coastguard Worker #endif // GTEST_OS_MAC 93*6777b538SAndroid Build Coastguard Worker 94*6777b538SAndroid Build Coastguard Worker #endif // TESTING_GTEST_MAC_H_ 95