|
1 // Copyright (c) 2010 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 |
|
17 TEST(GTestMac, ExpectNSEQ) { |
|
18 base::mac::ScopedNSAutoreleasePool pool; |
|
19 |
|
20 EXPECT_NSEQ(@"a", @"a"); |
|
21 |
|
22 NSString* s1 = [NSString stringWithUTF8String:"a"]; |
|
23 NSString* s2 = [NSString stringWithString:@"a"]; |
|
24 EXPECT_NE(s1, s2); |
|
25 EXPECT_NSEQ(s1, s2); |
|
26 } |
|
27 |
|
28 TEST(GTestMac, AssertNSEQ) { |
|
29 base::mac::ScopedNSAutoreleasePool pool; |
|
30 |
|
31 NSNumber* n1 = [NSNumber numberWithInt:42]; |
|
32 NSNumber* n2 = [NSNumber numberWithInt:42]; |
|
33 EXPECT_NE(n1, n2); |
|
34 ASSERT_NSEQ(n1, n2); |
|
35 } |
|
36 |
|
37 TEST(GTestMac, ExpectNSNE) { |
|
38 base::mac::ScopedNSAutoreleasePool pool; |
|
39 |
|
40 EXPECT_NSNE([NSNumber numberWithInt:2], [NSNumber numberWithInt:42]); |
|
41 } |
|
42 |
|
43 TEST(GTestMac, AssertNSNE) { |
|
44 base::mac::ScopedNSAutoreleasePool pool; |
|
45 |
|
46 ASSERT_NSNE(@"a", @"b"); |
|
47 } |
|
48 |
|
49 TEST(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 } |