Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(265)

Side by Side Diff: ios/web/web_state/error_translation_util_unittest.mm

Issue 2935933003: [ObjC ARC] Converts ios/web:ios_web_web_state_unittests to ARC. (Closed)
Patch Set: Review fixes. Created 3 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #import "ios/web/web_state/error_translation_util.h" 5 #import "ios/web/web_state/error_translation_util.h"
6 6
7 #import <Foundation/Foundation.h> 7 #import <Foundation/Foundation.h>
8 8
9 #import "base/mac/scoped_nsobject.h" 9 #include "base/mac/foundation_util.h"
10 #include "base/strings/sys_string_conversions.h" 10 #include "base/strings/sys_string_conversions.h"
11 #include "net/base/net_errors.h" 11 #include "net/base/net_errors.h"
12 #include "testing/gtest/include/gtest/gtest.h" 12 #include "testing/gtest/include/gtest/gtest.h"
13 #import "testing/gtest_mac.h" 13 #import "testing/gtest_mac.h"
14 #include "testing/platform_test.h" 14 #include "testing/platform_test.h"
15 15
16 #if !defined(__has_feature) || !__has_feature(objc_arc)
17 #error "This file requires ARC support."
18 #endif
19
16 // Test fixture for error translation testing. 20 // Test fixture for error translation testing.
17 typedef PlatformTest ErrorTranslationUtilTest; 21 typedef PlatformTest ErrorTranslationUtilTest;
18 22
19 namespace { 23 namespace {
20 // Returns net error domain. 24 // Returns net error domain.
21 NSString* GetNetErrorDomain() { 25 NSString* GetNetErrorDomain() {
22 return base::SysUTF8ToNSString(net::kErrorDomain); 26 return base::SysUTF8ToNSString(net::kErrorDomain);
23 } 27 }
24 } // namespcae 28 } // namespcae
25 29
26 // Tests translation of an error with empty domain and no underlying error. 30 // Tests translation of an error with empty domain and no underlying error.
27 TEST_F(ErrorTranslationUtilTest, MalformedError) { 31 TEST_F(ErrorTranslationUtilTest, MalformedError) {
28 base::scoped_nsobject<NSError> error( 32 NSError* error = [[NSError alloc] initWithDomain:@"" code:0 userInfo:nil];
29 [[NSError alloc] initWithDomain:@"" code:0 userInfo:nil]);
30 NSError* net_error = web::NetErrorFromError(error); 33 NSError* net_error = web::NetErrorFromError(error);
31 34
32 // Top level error should be the same as the original error. 35 // Top level error should be the same as the original error.
33 EXPECT_TRUE(net_error); 36 EXPECT_TRUE(net_error);
34 EXPECT_NSEQ([error domain], [net_error domain]); 37 EXPECT_NSEQ([error domain], [net_error domain]);
35 EXPECT_EQ([error code], [net_error code]); 38 EXPECT_EQ([error code], [net_error code]);
36 39
37 // Underlying error should have net error doamin and code. 40 // Underlying error should have net error doamin and code.
38 NSError* net_underlying_error = [net_error userInfo][NSUnderlyingErrorKey]; 41 NSError* net_underlying_error = [net_error userInfo][NSUnderlyingErrorKey];
39 EXPECT_TRUE(net_underlying_error); 42 EXPECT_TRUE(net_underlying_error);
40 EXPECT_NSEQ(GetNetErrorDomain(), [net_underlying_error domain]); 43 EXPECT_NSEQ(GetNetErrorDomain(), [net_underlying_error domain]);
41 EXPECT_EQ(net::ERR_FAILED, [net_underlying_error code]); 44 EXPECT_EQ(net::ERR_FAILED, [net_underlying_error code]);
42 } 45 }
43 46
44 // Tests translation of unknown CFNetwork error, which does not have an 47 // Tests translation of unknown CFNetwork error, which does not have an
45 // underlying error. 48 // underlying error.
46 TEST_F(ErrorTranslationUtilTest, UnknownCFNetworkError) { 49 TEST_F(ErrorTranslationUtilTest, UnknownCFNetworkError) {
47 base::scoped_nsobject<NSError> error([[NSError alloc] 50 NSError* error = [[NSError alloc]
48 initWithDomain:static_cast<NSString*>(kCFErrorDomainCFNetwork) 51 initWithDomain:base::mac::CFToNSCast(kCFErrorDomainCFNetwork)
49 code:kCFURLErrorUnknown 52 code:kCFURLErrorUnknown
50 userInfo:nil]); 53 userInfo:nil];
51 NSError* net_error = web::NetErrorFromError(error); 54 NSError* net_error = web::NetErrorFromError(error);
52 55
53 // Top level error should be the same as the original error. 56 // Top level error should be the same as the original error.
54 EXPECT_TRUE(net_error); 57 EXPECT_TRUE(net_error);
55 EXPECT_NSEQ([error domain], [net_error domain]); 58 EXPECT_NSEQ([error domain], [net_error domain]);
56 EXPECT_EQ([error code], [net_error code]); 59 EXPECT_EQ([error code], [net_error code]);
57 60
58 // Underlying error should have net error domain and code. 61 // Underlying error should have net error domain and code.
59 NSError* net_underlying_error = [net_error userInfo][NSUnderlyingErrorKey]; 62 NSError* net_underlying_error = [net_error userInfo][NSUnderlyingErrorKey];
60 EXPECT_TRUE(net_underlying_error); 63 EXPECT_TRUE(net_underlying_error);
61 EXPECT_NSEQ(GetNetErrorDomain(), [net_underlying_error domain]); 64 EXPECT_NSEQ(GetNetErrorDomain(), [net_underlying_error domain]);
62 EXPECT_EQ(net::ERR_FAILED, [net_underlying_error code]); 65 EXPECT_EQ(net::ERR_FAILED, [net_underlying_error code]);
63 } 66 }
64 67
65 // Tests translation of kCFURLErrorCannotFindHost CFNetwork error, which has an 68 // Tests translation of kCFURLErrorCannotFindHost CFNetwork error, which has an
66 // underlying error with NSURLError domain. 69 // underlying error with NSURLError domain.
67 TEST_F(ErrorTranslationUtilTest, CanNotFindHostError) { 70 TEST_F(ErrorTranslationUtilTest, CanNotFindHostError) {
68 base::scoped_nsobject<NSError> underlying_error([[NSError alloc] 71 NSError* underlying_error =
69 initWithDomain:NSURLErrorDomain 72 [[NSError alloc] initWithDomain:NSURLErrorDomain
70 code:kCFURLErrorCannotFindHost 73 code:kCFURLErrorCannotFindHost
71 userInfo:nil]); 74 userInfo:nil];
72 75
73 NSError* error = 76 NSError* error =
74 [[NSError alloc] initWithDomain:NSURLErrorDomain 77 [[NSError alloc] initWithDomain:NSURLErrorDomain
75 code:NSURLErrorCannotFindHost 78 code:NSURLErrorCannotFindHost
76 userInfo:@{ 79 userInfo:@{
77 NSUnderlyingErrorKey : underlying_error, 80 NSUnderlyingErrorKey : underlying_error,
78 }]; 81 }];
79 NSError* net_error = web::NetErrorFromError(error); 82 NSError* net_error = web::NetErrorFromError(error);
80 83
81 // Top level error should be the same as the original error. 84 // Top level error should be the same as the original error.
(...skipping 11 matching lines...) Expand all
93 NSError* final_net_underlying_error = 96 NSError* final_net_underlying_error =
94 [net_underlying_error userInfo][NSUnderlyingErrorKey]; 97 [net_underlying_error userInfo][NSUnderlyingErrorKey];
95 EXPECT_TRUE(final_net_underlying_error); 98 EXPECT_TRUE(final_net_underlying_error);
96 EXPECT_NSEQ(GetNetErrorDomain(), [final_net_underlying_error domain]); 99 EXPECT_NSEQ(GetNetErrorDomain(), [final_net_underlying_error domain]);
97 EXPECT_EQ(net::ERR_NAME_NOT_RESOLVED, [final_net_underlying_error code]); 100 EXPECT_EQ(net::ERR_NAME_NOT_RESOLVED, [final_net_underlying_error code]);
98 } 101 }
99 102
100 // Tests translation of kCFURLErrorSecureConnectionFailed CFNetwork error, by 103 // Tests translation of kCFURLErrorSecureConnectionFailed CFNetwork error, by
101 // specifying different net error code. 104 // specifying different net error code.
102 TEST_F(ErrorTranslationUtilTest, CertError) { 105 TEST_F(ErrorTranslationUtilTest, CertError) {
103 base::scoped_nsobject<NSError> underlying_error([[NSError alloc] 106 NSError* underlying_error =
104 initWithDomain:NSURLErrorDomain 107 [[NSError alloc] initWithDomain:NSURLErrorDomain
105 code:kCFURLErrorSecureConnectionFailed 108 code:kCFURLErrorSecureConnectionFailed
106 userInfo:nil]); 109 userInfo:nil];
107 110
108 NSError* error = 111 NSError* error =
109 [[NSError alloc] initWithDomain:NSURLErrorDomain 112 [[NSError alloc] initWithDomain:NSURLErrorDomain
110 code:kCFURLErrorSecureConnectionFailed 113 code:kCFURLErrorSecureConnectionFailed
111 userInfo:@{ 114 userInfo:@{
112 NSUnderlyingErrorKey : underlying_error, 115 NSUnderlyingErrorKey : underlying_error,
113 }]; 116 }];
114 NSError* net_error = web::NetErrorFromError(error, net::ERR_CONNECTION_RESET); 117 NSError* net_error = web::NetErrorFromError(error, net::ERR_CONNECTION_RESET);
115 118
116 // Top level error should be the same as the original error. 119 // Top level error should be the same as the original error.
117 EXPECT_TRUE(net_error); 120 EXPECT_TRUE(net_error);
118 EXPECT_NSEQ([error domain], [net_error domain]); 121 EXPECT_NSEQ([error domain], [net_error domain]);
119 EXPECT_EQ([error code], [net_error code]); 122 EXPECT_EQ([error code], [net_error code]);
120 123
121 // First underlying error should be the same as the original underlying error. 124 // First underlying error should be the same as the original underlying error.
122 NSError* net_underlying_error = [net_error userInfo][NSUnderlyingErrorKey]; 125 NSError* net_underlying_error = [net_error userInfo][NSUnderlyingErrorKey];
123 EXPECT_TRUE(underlying_error); 126 EXPECT_TRUE(underlying_error);
124 EXPECT_NSEQ([underlying_error domain], [net_underlying_error domain]); 127 EXPECT_NSEQ([underlying_error domain], [net_underlying_error domain]);
125 EXPECT_EQ([underlying_error code], [net_underlying_error code]); 128 EXPECT_EQ([underlying_error code], [net_underlying_error code]);
126 129
127 // Final underlying error should have net error domain and specified code. 130 // Final underlying error should have net error domain and specified code.
128 NSError* final_net_underlying_error = 131 NSError* final_net_underlying_error =
129 [net_underlying_error userInfo][NSUnderlyingErrorKey]; 132 [net_underlying_error userInfo][NSUnderlyingErrorKey];
130 EXPECT_TRUE(final_net_underlying_error); 133 EXPECT_TRUE(final_net_underlying_error);
131 EXPECT_NSEQ(GetNetErrorDomain(), [final_net_underlying_error domain]); 134 EXPECT_NSEQ(GetNetErrorDomain(), [final_net_underlying_error domain]);
132 EXPECT_EQ(net::ERR_CONNECTION_RESET, [final_net_underlying_error code]); 135 EXPECT_EQ(net::ERR_CONNECTION_RESET, [final_net_underlying_error code]);
133 } 136 }
OLDNEW
« no previous file with comments | « ios/web/web_state/crw_pass_kit_downloader_unittest.mm ('k') | ios/web/web_state/navigation_context_impl_unittest.mm » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698