| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 #include "base/strings/string16.h" | 5 #include "base/strings/string16.h" |
| 6 #include "base/strings/string_util.h" | 6 #include "base/strings/string_util.h" |
| 7 #include "base/strings/utf_string_conversions.h" | 7 #include "base/strings/utf_string_conversions.h" |
| 8 #include "base/time/time.h" | 8 #include "base/time/time.h" |
| 9 #include "build/build_config.h" | 9 #include "build/build_config.h" |
| 10 #include "content/browser/frame_host/navigation_entry_impl.h" | 10 #include "content/browser/frame_host/navigation_entry_impl.h" |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 54 } | 54 } |
| 55 | 55 |
| 56 // Test URL accessors | 56 // Test URL accessors |
| 57 TEST_F(NavigationEntryTest, NavigationEntryURLs) { | 57 TEST_F(NavigationEntryTest, NavigationEntryURLs) { |
| 58 // Start with no virtual_url (even if a url is set) | 58 // Start with no virtual_url (even if a url is set) |
| 59 EXPECT_FALSE(entry1_->has_virtual_url()); | 59 EXPECT_FALSE(entry1_->has_virtual_url()); |
| 60 EXPECT_FALSE(entry2_->has_virtual_url()); | 60 EXPECT_FALSE(entry2_->has_virtual_url()); |
| 61 | 61 |
| 62 EXPECT_EQ(GURL(), entry1_->GetURL()); | 62 EXPECT_EQ(GURL(), entry1_->GetURL()); |
| 63 EXPECT_EQ(GURL(), entry1_->GetVirtualURL()); | 63 EXPECT_EQ(GURL(), entry1_->GetVirtualURL()); |
| 64 EXPECT_TRUE(entry1_->GetTitleForDisplay(std::string()).empty()); | 64 EXPECT_TRUE(entry1_->GetTitleForDisplay().empty()); |
| 65 | 65 |
| 66 // Setting URL affects virtual_url and GetTitleForDisplay | 66 // Setting URL affects virtual_url and GetTitleForDisplay |
| 67 entry1_->SetURL(GURL("http://www.google.com")); | 67 entry1_->SetURL(GURL("http://www.google.com")); |
| 68 EXPECT_EQ(GURL("http://www.google.com"), entry1_->GetURL()); | 68 EXPECT_EQ(GURL("http://www.google.com"), entry1_->GetURL()); |
| 69 EXPECT_EQ(GURL("http://www.google.com"), entry1_->GetVirtualURL()); | 69 EXPECT_EQ(GURL("http://www.google.com"), entry1_->GetVirtualURL()); |
| 70 EXPECT_EQ(ASCIIToUTF16("www.google.com"), | 70 EXPECT_EQ(ASCIIToUTF16("www.google.com"), |
| 71 entry1_->GetTitleForDisplay(std::string())); | 71 entry1_->GetTitleForDisplay()); |
| 72 | 72 |
| 73 // file:/// URLs should only show the filename. | 73 // file:/// URLs should only show the filename. |
| 74 entry1_->SetURL(GURL("file:///foo/bar baz.txt")); | 74 entry1_->SetURL(GURL("file:///foo/bar baz.txt")); |
| 75 EXPECT_EQ(ASCIIToUTF16("bar baz.txt"), | 75 EXPECT_EQ(ASCIIToUTF16("bar baz.txt"), entry1_->GetTitleForDisplay()); |
| 76 entry1_->GetTitleForDisplay(std::string())); | |
| 77 | 76 |
| 78 // For file:/// URLs, make sure that slashes after the filename are ignored. | 77 // For file:/// URLs, make sure that slashes after the filename are ignored. |
| 79 // Regression test for https://crbug.com/503003. | 78 // Regression test for https://crbug.com/503003. |
| 80 entry1_->SetURL(GURL("file:///foo/bar baz.txt#foo/bar")); | 79 entry1_->SetURL(GURL("file:///foo/bar baz.txt#foo/bar")); |
| 81 EXPECT_EQ(ASCIIToUTF16("bar baz.txt#foo/bar"), | 80 EXPECT_EQ(ASCIIToUTF16("bar baz.txt#foo/bar"), entry1_->GetTitleForDisplay()); |
| 82 entry1_->GetTitleForDisplay(std::string())); | |
| 83 entry1_->SetURL(GURL("file:///foo/bar baz.txt?x=foo/bar")); | 81 entry1_->SetURL(GURL("file:///foo/bar baz.txt?x=foo/bar")); |
| 84 EXPECT_EQ(ASCIIToUTF16("bar baz.txt?x=foo/bar"), | 82 EXPECT_EQ(ASCIIToUTF16("bar baz.txt?x=foo/bar"), |
| 85 entry1_->GetTitleForDisplay(std::string())); | 83 entry1_->GetTitleForDisplay()); |
| 86 entry1_->SetURL(GURL("file:///foo/bar baz.txt#baz/boo?x=foo/bar")); | 84 entry1_->SetURL(GURL("file:///foo/bar baz.txt#baz/boo?x=foo/bar")); |
| 87 EXPECT_EQ(ASCIIToUTF16("bar baz.txt#baz/boo?x=foo/bar"), | 85 EXPECT_EQ(ASCIIToUTF16("bar baz.txt#baz/boo?x=foo/bar"), |
| 88 entry1_->GetTitleForDisplay(std::string())); | 86 entry1_->GetTitleForDisplay()); |
| 89 entry1_->SetURL(GURL("file:///foo/bar baz.txt?x=foo/bar#baz/boo")); | 87 entry1_->SetURL(GURL("file:///foo/bar baz.txt?x=foo/bar#baz/boo")); |
| 90 EXPECT_EQ(ASCIIToUTF16("bar baz.txt?x=foo/bar#baz/boo"), | 88 EXPECT_EQ(ASCIIToUTF16("bar baz.txt?x=foo/bar#baz/boo"), |
| 91 entry1_->GetTitleForDisplay(std::string())); | 89 entry1_->GetTitleForDisplay()); |
| 92 entry1_->SetURL(GURL("file:///foo/bar baz.txt#foo/bar#baz/boo")); | 90 entry1_->SetURL(GURL("file:///foo/bar baz.txt#foo/bar#baz/boo")); |
| 93 EXPECT_EQ(ASCIIToUTF16("bar baz.txt#foo/bar#baz/boo"), | 91 EXPECT_EQ(ASCIIToUTF16("bar baz.txt#foo/bar#baz/boo"), |
| 94 entry1_->GetTitleForDisplay(std::string())); | 92 entry1_->GetTitleForDisplay()); |
| 95 entry1_->SetURL(GURL("file:///foo/bar baz.txt?x=foo/bar?y=baz/boo")); | 93 entry1_->SetURL(GURL("file:///foo/bar baz.txt?x=foo/bar?y=baz/boo")); |
| 96 EXPECT_EQ(ASCIIToUTF16("bar baz.txt?x=foo/bar?y=baz/boo"), | 94 EXPECT_EQ(ASCIIToUTF16("bar baz.txt?x=foo/bar?y=baz/boo"), |
| 97 entry1_->GetTitleForDisplay(std::string())); | 95 entry1_->GetTitleForDisplay()); |
| 98 | 96 |
| 99 // Title affects GetTitleForDisplay | 97 // Title affects GetTitleForDisplay |
| 100 entry1_->SetTitle(ASCIIToUTF16("Google")); | 98 entry1_->SetTitle(ASCIIToUTF16("Google")); |
| 101 EXPECT_EQ(ASCIIToUTF16("Google"), entry1_->GetTitleForDisplay(std::string())); | 99 EXPECT_EQ(ASCIIToUTF16("Google"), entry1_->GetTitleForDisplay()); |
| 102 | 100 |
| 103 // Setting virtual_url doesn't affect URL | 101 // Setting virtual_url doesn't affect URL |
| 104 entry2_->SetVirtualURL(GURL("display:url")); | 102 entry2_->SetVirtualURL(GURL("display:url")); |
| 105 EXPECT_TRUE(entry2_->has_virtual_url()); | 103 EXPECT_TRUE(entry2_->has_virtual_url()); |
| 106 EXPECT_EQ(GURL("test:url"), entry2_->GetURL()); | 104 EXPECT_EQ(GURL("test:url"), entry2_->GetURL()); |
| 107 EXPECT_EQ(GURL("display:url"), entry2_->GetVirtualURL()); | 105 EXPECT_EQ(GURL("display:url"), entry2_->GetVirtualURL()); |
| 108 | 106 |
| 109 // Having a title set in constructor overrides virtual URL | 107 // Having a title set in constructor overrides virtual URL |
| 110 EXPECT_EQ(ASCIIToUTF16("title"), entry2_->GetTitleForDisplay(std::string())); | 108 EXPECT_EQ(ASCIIToUTF16("title"), entry2_->GetTitleForDisplay()); |
| 111 | 109 |
| 112 // User typed URL is independent of the others | 110 // User typed URL is independent of the others |
| 113 EXPECT_EQ(GURL(), entry1_->GetUserTypedURL()); | 111 EXPECT_EQ(GURL(), entry1_->GetUserTypedURL()); |
| 114 EXPECT_EQ(GURL(), entry2_->GetUserTypedURL()); | 112 EXPECT_EQ(GURL(), entry2_->GetUserTypedURL()); |
| 115 entry2_->set_user_typed_url(GURL("typedurl")); | 113 entry2_->set_user_typed_url(GURL("typedurl")); |
| 116 EXPECT_EQ(GURL("typedurl"), entry2_->GetUserTypedURL()); | 114 EXPECT_EQ(GURL("typedurl"), entry2_->GetUserTypedURL()); |
| 117 } | 115 } |
| 118 | 116 |
| 119 // Test Favicon inner class construction. | 117 // Test Favicon inner class construction. |
| 120 TEST_F(NavigationEntryTest, NavigationEntryFavicons) { | 118 TEST_F(NavigationEntryTest, NavigationEntryFavicons) { |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 273 // Content in |output| is not modified if data is not present at the key. | 271 // Content in |output| is not modified if data is not present at the key. |
| 274 EXPECT_FALSE(entry1_->GetExtraData("search_terms", &output)); | 272 EXPECT_FALSE(entry1_->GetExtraData("search_terms", &output)); |
| 275 EXPECT_EQ(test_data, output); | 273 EXPECT_EQ(test_data, output); |
| 276 // Using an empty string shows that the data is not present in the map. | 274 // Using an empty string shows that the data is not present in the map. |
| 277 base::string16 output2; | 275 base::string16 output2; |
| 278 EXPECT_FALSE(entry1_->GetExtraData("search_terms", &output2)); | 276 EXPECT_FALSE(entry1_->GetExtraData("search_terms", &output2)); |
| 279 EXPECT_EQ(ASCIIToUTF16(""), output2); | 277 EXPECT_EQ(ASCIIToUTF16(""), output2); |
| 280 } | 278 } |
| 281 | 279 |
| 282 } // namespace content | 280 } // namespace content |
| OLD | NEW |