OLD | NEW |
---|---|
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 <Cronet/Cronet.h> | 5 #import <Cronet/Cronet.h> |
6 #import <Foundation/Foundation.h> | 6 #import <Foundation/Foundation.h> |
7 | 7 |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include "base/logging.h" | 10 #include "base/logging.h" |
(...skipping 240 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
251 [Cronet setRequestFilterBlock:nil]; | 251 [Cronet setRequestFilterBlock:nil]; |
252 NSURLSessionDataTask* task = [session_ dataTaskWithURL:url]; | 252 NSURLSessionDataTask* task = [session_ dataTaskWithURL:url]; |
253 StartDataTaskAndWaitForCompletion(task); | 253 StartDataTaskAndWaitForCompletion(task); |
254 EXPECT_EQ(nil, [delegate_ error]); | 254 EXPECT_EQ(nil, [delegate_ error]); |
255 EXPECT_STREQ(kUserAgent, [[delegate_ responseBody] UTF8String]); | 255 EXPECT_STREQ(kUserAgent, [[delegate_ responseBody] UTF8String]); |
256 } | 256 } |
257 | 257 |
258 TEST_F(HttpTest, SetCookie) { | 258 TEST_F(HttpTest, SetCookie) { |
259 const char kCookieHeader[] = "Cookie"; | 259 const char kCookieHeader[] = "Cookie"; |
260 const char kCookieLine[] = "aaaa=bbb"; | 260 const char kCookieLine[] = "aaaa=bbb"; |
261 NSHTTPCookieStorage* systemCookieStorage = | |
262 [NSHTTPCookieStorage sharedHTTPCookieStorage]; | |
263 NSURL* cookieUrl = | |
264 [NSURL URLWithString:base::SysUTF8ToNSString( | |
265 TestServer::GetEchoHeaderURL(kCookieHeader))]; | |
266 // Verify that cookie is not set in system storage. | |
267 for (NSHTTPCookie* cookie in [systemCookieStorage cookiesForURL:cookieUrl]) { | |
268 EXPECT_FALSE([[cookie name] containsString:@"aaaa"]); | |
kapishnikov
2017/01/06 15:24:45
Since 'isEqual' (or better 'isEqualToString') is u
mef
2017/01/06 15:52:55
Done.
| |
269 } | |
270 | |
261 NSURL* echoCookieUrl = | 271 NSURL* echoCookieUrl = |
262 net::NSURLWithGURL(GURL(TestServer::GetEchoHeaderURL(kCookieHeader))); | 272 net::NSURLWithGURL(GURL(TestServer::GetEchoHeaderURL(kCookieHeader))); |
263 StartDataTaskAndWaitForCompletion([session_ dataTaskWithURL:echoCookieUrl]); | 273 StartDataTaskAndWaitForCompletion([session_ dataTaskWithURL:echoCookieUrl]); |
264 EXPECT_EQ(nil, [delegate_ error]); | 274 EXPECT_EQ(nil, [delegate_ error]); |
265 EXPECT_EQ(nil, [delegate_ responseBody]); | 275 EXPECT_EQ(nil, [delegate_ responseBody]); |
266 | 276 |
267 NSURL* setCookieUrl = | 277 NSURL* setCookieUrl = |
268 net::NSURLWithGURL(GURL(TestServer::GetSetCookieURL(kCookieLine))); | 278 net::NSURLWithGURL(GURL(TestServer::GetSetCookieURL(kCookieLine))); |
269 StartDataTaskAndWaitForCompletion([session_ dataTaskWithURL:setCookieUrl]); | 279 StartDataTaskAndWaitForCompletion([session_ dataTaskWithURL:setCookieUrl]); |
270 EXPECT_EQ(nil, [delegate_ error]); | 280 EXPECT_EQ(nil, [delegate_ error]); |
271 EXPECT_TRUE([[delegate_ responseBody] | 281 EXPECT_TRUE([[delegate_ responseBody] |
272 containsString:base::SysUTF8ToNSString(kCookieLine)]); | 282 containsString:base::SysUTF8ToNSString(kCookieLine)]); |
273 | 283 |
274 StartDataTaskAndWaitForCompletion([session_ dataTaskWithURL:echoCookieUrl]); | 284 StartDataTaskAndWaitForCompletion([session_ dataTaskWithURL:echoCookieUrl]); |
275 EXPECT_EQ(nil, [delegate_ error]); | 285 EXPECT_EQ(nil, [delegate_ error]); |
276 EXPECT_TRUE([[delegate_ responseBody] | 286 EXPECT_TRUE([[delegate_ responseBody] |
277 containsString:base::SysUTF8ToNSString(kCookieLine)]); | 287 containsString:base::SysUTF8ToNSString(kCookieLine)]); |
288 | |
289 // Verify that cookie is set in system storage. | |
290 NSHTTPCookie* systemCookie = nil; | |
291 for (NSHTTPCookie* cookie in [systemCookieStorage cookiesForURL:cookieUrl]) { | |
292 if ([cookie.name isEqual:@"aaaa"]) { | |
kapishnikov
2017/01/06 15:24:45
isEqualToString should be a little faster.
mef
2017/01/06 15:52:55
Done.
| |
293 systemCookie = cookie; | |
294 break; | |
295 } | |
296 } | |
297 EXPECT_TRUE([[systemCookie value] containsString:@"bbb"]); | |
kapishnikov
2017/01/06 15:24:45
Why don't use isEqualToString instead of containsS
mef
2017/01/06 15:52:55
Done.
| |
298 [systemCookieStorage deleteCookie:systemCookie]; | |
278 } | 299 } |
279 | 300 |
280 TEST_F(HttpTest, FilterOutRequest) { | 301 TEST_F(HttpTest, FilterOutRequest) { |
281 NSURL* url = | 302 NSURL* url = |
282 net::NSURLWithGURL(GURL(TestServer::GetEchoHeaderURL("User-Agent"))); | 303 net::NSURLWithGURL(GURL(TestServer::GetEchoHeaderURL("User-Agent"))); |
283 __block BOOL block_used = NO; | 304 __block BOOL block_used = NO; |
284 NSURLSessionDataTask* task = [session_ dataTaskWithURL:url]; | 305 NSURLSessionDataTask* task = [session_ dataTaskWithURL:url]; |
285 [Cronet setRequestFilterBlock:^(NSURLRequest* request) { | 306 [Cronet setRequestFilterBlock:^(NSURLRequest* request) { |
286 block_used = YES; | 307 block_used = YES; |
287 EXPECT_EQ([request URL], url); | 308 EXPECT_EQ([request URL], url); |
288 return NO; | 309 return NO; |
289 }]; | 310 }]; |
290 StartDataTaskAndWaitForCompletion(task); | 311 StartDataTaskAndWaitForCompletion(task); |
291 EXPECT_TRUE(block_used); | 312 EXPECT_TRUE(block_used); |
292 EXPECT_EQ(nil, [delegate_ error]); | 313 EXPECT_EQ(nil, [delegate_ error]); |
293 EXPECT_FALSE([[delegate_ responseBody] | 314 EXPECT_FALSE([[delegate_ responseBody] |
294 containsString:base::SysUTF8ToNSString(kUserAgent)]); | 315 containsString:base::SysUTF8ToNSString(kUserAgent)]); |
295 EXPECT_TRUE([[delegate_ responseBody] containsString:@"CFNetwork"]); | 316 EXPECT_TRUE([[delegate_ responseBody] containsString:@"CFNetwork"]); |
296 } | 317 } |
297 | 318 |
298 } // namespace cronet | 319 } // namespace cronet |
OLD | NEW |