1// Copyright (c) 2012 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5// Note that while this file is in testing/ and tests GTest macros, it is built 6// as part of Chromium's unit_tests target because the project does not build 7// or run GTest's internal test suite. 8 9#import "testing/gtest_mac.h" 10 11#import <Foundation/Foundation.h> 12 13#include "base/mac/scoped_nsautorelease_pool.h" 14#include "testing/gtest/include/gtest/internal/gtest-port.h" 15#include "testing/gtest/include/gtest/gtest.h" 16 17TEST(GTestMac, ExpectNSEQ) { 18 base::mac::ScopedNSAutoreleasePool pool; 19 20 EXPECT_NSEQ(@"a", @"a"); 21 22 NSString* s1 = [NSString stringWithUTF8String:"a"]; 23 NSString* s2 = @"a"; 24 EXPECT_NE(s1, s2); 25 EXPECT_NSEQ(s1, s2); 26} 27 28TEST(GTestMac, AssertNSEQ) { 29 base::mac::ScopedNSAutoreleasePool pool; 30 31 NSString* s1 = [NSString stringWithUTF8String:"a"]; 32 NSString* s2 = @"a"; 33 EXPECT_NE(s1, s2); 34 ASSERT_NSEQ(s1, s2); 35} 36 37TEST(GTestMac, ExpectNSNE) { 38 base::mac::ScopedNSAutoreleasePool pool; 39 40 EXPECT_NSNE([NSNumber numberWithInt:2], [NSNumber numberWithInt:42]); 41} 42 43TEST(GTestMac, AssertNSNE) { 44 base::mac::ScopedNSAutoreleasePool pool; 45 46 ASSERT_NSNE(@"a", @"b"); 47} 48 49TEST(GTestMac, ExpectNSNil) { 50 base::mac::ScopedNSAutoreleasePool pool; 51 52 EXPECT_NSEQ(nil, nil); 53 EXPECT_NSNE(nil, @"a"); 54 EXPECT_NSNE(@"a", nil); 55 56 // TODO(shess): Test that EXPECT_NSNE(nil, nil) fails. 57} 58