15891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen// Copyright (c) 2010 The Chromium Authors. All rights reserved. 25891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen// Use of this source code is governed by a BSD-style license that can be 35891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen// found in the LICENSE file. 45891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen 55891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen#ifndef TESTING_GTEST_MAC_H_ 65891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen#define TESTING_GTEST_MAC_H_ 75891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen 85891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen#include <gtest/internal/gtest-port.h> 95891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen#include <gtest/gtest.h> 105891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen 115891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen#ifdef GTEST_OS_MAC 125891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen 135891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen#import <Foundation/Foundation.h> 145891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen 155891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsennamespace testing { 165891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsennamespace internal { 175891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen 185891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen// This overloaded version allows comparison between ObjC objects that conform 195891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen// to the NSObject protocol. Used to implement {ASSERT|EXPECT}_EQ(). 205891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian MonsenGTEST_API_ AssertionResult CmpHelperNSEQ(const char* expected_expression, 215891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen const char* actual_expression, 225891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen id<NSObject> expected, 235891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen id<NSObject> actual); 245891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen 255891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen// This overloaded version allows comparison between ObjC objects that conform 265891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen// to the NSObject protocol. Used to implement {ASSERT|EXPECT}_NE(). 275891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian MonsenGTEST_API_ AssertionResult CmpHelperNSNE(const char* expected_expression, 285891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen const char* actual_expression, 295891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen id<NSObject> expected, 305891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen id<NSObject> actual); 315891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen 325891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen} // namespace internal 335891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen} // namespace testing 345891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen 355891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen// Tests that [expected isEqual:actual]. 365891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen#define EXPECT_NSEQ(expected, actual) \ 375891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen EXPECT_PRED_FORMAT2(::testing::internal::CmpHelperNSEQ, expected, actual) 385891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen#define EXPECT_NSNE(val1, val2) \ 395891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen EXPECT_PRED_FORMAT2(::testing::internal::CmpHelperNSNE, val1, val2) 405891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen 415891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen#define ASSERT_NSEQ(expected, actual) \ 425891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen ASSERT_PRED_FORMAT2(::testing::internal::CmpHelperNSEQ, expected, actual) 435891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen#define ASSERT_NSNE(val1, val2) \ 445891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen ASSERT_PRED_FORMAT2(::testing::internal::CmpHelperNSNE, val1, val2) 455891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen 465891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen#endif // GTEST_OS_MAC 475891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen 485891636149dae2ecc0fadb3aec0cbc8ca0fa045dKristian Monsen#endif // TESTING_GTEST_MAC_H_ 49