| // Copyright 2014 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #include "ios/net/nsurlrequest_util.h" |
| |
| #include "base/mac/scoped_nsobject.h" |
| #include "testing/gtest/include/gtest/gtest.h" |
| |
| namespace { |
| |
| // Tests that FormatUrlRequestForLogging outputs the string in the form: |
| // request:<url> request.mainDocURL:<mainDocumentURL>. |
| TEST(NSURLRequestUtilTest, FormatUrlRequestForLogging) { |
| base::scoped_nsobject<NSMutableURLRequest> request( |
| [[NSMutableURLRequest alloc] init]); |
| request.get().URL = [NSURL URLWithString:@"http://www.google.com"]; |
| request.get().mainDocumentURL = |
| [NSURL URLWithString:@"http://www.google1.com"]; |
| std::string actualString, expectedString; |
| |
| actualString = net::FormatUrlRequestForLogging(request); |
| expectedString = "request: http://www.google.com" |
| " request.mainDocURL: http://www.google1.com"; |
| EXPECT_EQ(expectedString, actualString); |
| |
| request.get().URL = nil; |
| request.get().mainDocumentURL = |
| [NSURL URLWithString:@"http://www.google1.com"]; |
| actualString = net::FormatUrlRequestForLogging(request); |
| expectedString = "request: [nil] request.mainDocURL: http://www.google1.com"; |
| EXPECT_EQ(expectedString, actualString); |
| |
| request.get().URL = [NSURL URLWithString:@"http://www.google.com"]; |
| request.get().mainDocumentURL = nil; |
| actualString = net::FormatUrlRequestForLogging(request); |
| expectedString = "request: http://www.google.com request.mainDocURL: [nil]"; |
| EXPECT_EQ(expectedString, actualString); |
| |
| request.get().URL = nil; |
| request.get().mainDocumentURL = nil; |
| actualString = net::FormatUrlRequestForLogging(request); |
| expectedString = "request: [nil] request.mainDocURL: [nil]"; |
| EXPECT_EQ(expectedString, actualString); |
| } |
| |
| } // namespace |