OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 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 | 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/string16.h" | 5 #include "base/string16.h" |
6 #include "base/string_util.h" | 6 #include "base/string_util.h" |
7 #include "base/utf_string_conversions.h" | 7 #include "base/utf_string_conversions.h" |
8 #include "content/browser/site_instance.h" | 8 #include "content/browser/site_instance.h" |
9 #include "content/browser/tab_contents/navigation_entry.h" | 9 #include "content/browser/tab_contents/navigation_entry.h" |
10 #include "testing/gtest/include/gtest/gtest.h" | 10 #include "testing/gtest/include/gtest/gtest.h" |
11 | 11 |
12 class NavigationEntryTest : public testing::Test { | 12 class NavigationEntryTest : public testing::Test { |
13 public: | 13 public: |
14 NavigationEntryTest() : instance_(NULL) { | 14 NavigationEntryTest() : instance_(NULL) { |
15 } | 15 } |
16 | 16 |
17 virtual void SetUp() { | 17 virtual void SetUp() { |
18 entry1_.reset(new NavigationEntry); | 18 entry1_.reset(new NavigationEntry); |
19 | 19 |
20 instance_ = SiteInstance::CreateSiteInstance(NULL); | 20 instance_ = SiteInstance::CreateSiteInstance(NULL); |
21 entry2_.reset(new NavigationEntry(instance_, 3, | 21 entry2_.reset(new NavigationEntry( |
22 GURL("test:url"), | 22 instance_, 3, |
23 GURL("from"), | 23 GURL("test:url"), |
24 ASCIIToUTF16("title"), | 24 GURL("from"), |
25 PageTransition::TYPED)); | 25 base::i18n::String16WithDirection(ASCIIToUTF16("title"), |
| 26 base::i18n::LEFT_TO_RIGHT), |
| 27 PageTransition::TYPED)); |
26 } | 28 } |
27 | 29 |
28 virtual void TearDown() { | 30 virtual void TearDown() { |
29 } | 31 } |
30 | 32 |
31 protected: | 33 protected: |
32 scoped_ptr<NavigationEntry> entry1_; | 34 scoped_ptr<NavigationEntry> entry1_; |
33 scoped_ptr<NavigationEntry> entry2_; | 35 scoped_ptr<NavigationEntry> entry2_; |
34 // SiteInstances are deleted when their NavigationEntries are gone. | 36 // SiteInstances are deleted when their NavigationEntries are gone. |
35 SiteInstance* instance_; | 37 SiteInstance* instance_; |
(...skipping 10 matching lines...) Expand all Loading... |
46 } | 48 } |
47 | 49 |
48 // Test URL accessors | 50 // Test URL accessors |
49 TEST_F(NavigationEntryTest, NavigationEntryURLs) { | 51 TEST_F(NavigationEntryTest, NavigationEntryURLs) { |
50 // Start with no virtual_url (even if a url is set) | 52 // Start with no virtual_url (even if a url is set) |
51 EXPECT_FALSE(entry1_.get()->has_virtual_url()); | 53 EXPECT_FALSE(entry1_.get()->has_virtual_url()); |
52 EXPECT_FALSE(entry2_.get()->has_virtual_url()); | 54 EXPECT_FALSE(entry2_.get()->has_virtual_url()); |
53 | 55 |
54 EXPECT_EQ(GURL(), entry1_.get()->url()); | 56 EXPECT_EQ(GURL(), entry1_.get()->url()); |
55 EXPECT_EQ(GURL(), entry1_.get()->virtual_url()); | 57 EXPECT_EQ(GURL(), entry1_.get()->virtual_url()); |
56 EXPECT_TRUE(entry1_.get()->GetTitleForDisplay("").empty()); | 58 EXPECT_TRUE(entry1_.get()->GetTitleForDisplay("").is_empty()); |
57 | 59 |
58 // Setting URL affects virtual_url and GetTitleForDisplay | 60 // Setting URL affects virtual_url and GetTitleForDisplay |
59 entry1_.get()->set_url(GURL("http://www.google.com")); | 61 entry1_.get()->set_url(GURL("http://www.google.com")); |
60 EXPECT_EQ(GURL("http://www.google.com"), entry1_.get()->url()); | 62 EXPECT_EQ(GURL("http://www.google.com"), entry1_.get()->url()); |
61 EXPECT_EQ(GURL("http://www.google.com"), entry1_.get()->virtual_url()); | 63 EXPECT_EQ(GURL("http://www.google.com"), entry1_.get()->virtual_url()); |
62 EXPECT_EQ(ASCIIToUTF16("www.google.com"), | 64 EXPECT_EQ(ASCIIToUTF16("www.google.com"), |
63 entry1_.get()->GetTitleForDisplay("")); | 65 entry1_.get()->GetTitleForDisplay("").string()); |
64 | 66 |
65 // file:/// URLs should only show the filename. | 67 // file:/// URLs should only show the filename. |
66 entry1_.get()->set_url(GURL("file:///foo/bar baz.txt")); | 68 entry1_.get()->set_url(GURL("file:///foo/bar baz.txt")); |
67 EXPECT_EQ(ASCIIToUTF16("bar baz.txt"), | 69 EXPECT_EQ(ASCIIToUTF16("bar baz.txt"), |
68 entry1_.get()->GetTitleForDisplay("")); | 70 entry1_.get()->GetTitleForDisplay("").string()); |
69 | 71 |
70 // Title affects GetTitleForDisplay | 72 // Title affects GetTitleForDisplay |
71 entry1_.get()->set_title(ASCIIToUTF16("Google")); | 73 entry1_.get()->set_title( |
72 EXPECT_EQ(ASCIIToUTF16("Google"), entry1_.get()->GetTitleForDisplay("")); | 74 base::i18n::String16WithDirection(ASCIIToUTF16("Google"), |
| 75 base::i18n::LEFT_TO_RIGHT)); |
| 76 EXPECT_EQ(ASCIIToUTF16("Google"), |
| 77 entry1_.get()->GetTitleForDisplay("").string()); |
73 | 78 |
74 // Setting virtual_url doesn't affect URL | 79 // Setting virtual_url doesn't affect URL |
75 entry2_.get()->set_virtual_url(GURL("display:url")); | 80 entry2_.get()->set_virtual_url(GURL("display:url")); |
76 EXPECT_TRUE(entry2_.get()->has_virtual_url()); | 81 EXPECT_TRUE(entry2_.get()->has_virtual_url()); |
77 EXPECT_EQ(GURL("test:url"), entry2_.get()->url()); | 82 EXPECT_EQ(GURL("test:url"), entry2_.get()->url()); |
78 EXPECT_EQ(GURL("display:url"), entry2_.get()->virtual_url()); | 83 EXPECT_EQ(GURL("display:url"), entry2_.get()->virtual_url()); |
79 | 84 |
80 // Having a title set in constructor overrides virtual URL | 85 // Having a title set in constructor overrides virtual URL |
81 EXPECT_EQ(ASCIIToUTF16("title"), entry2_.get()->GetTitleForDisplay("")); | 86 EXPECT_EQ(ASCIIToUTF16("title"), |
| 87 entry2_.get()->GetTitleForDisplay("").string()); |
82 | 88 |
83 // User typed URL is independent of the others | 89 // User typed URL is independent of the others |
84 EXPECT_EQ(GURL(), entry1_.get()->user_typed_url()); | 90 EXPECT_EQ(GURL(), entry1_.get()->user_typed_url()); |
85 EXPECT_EQ(GURL(), entry2_.get()->user_typed_url()); | 91 EXPECT_EQ(GURL(), entry2_.get()->user_typed_url()); |
86 entry2_.get()->set_user_typed_url(GURL("typedurl")); | 92 entry2_.get()->set_user_typed_url(GURL("typedurl")); |
87 EXPECT_EQ(GURL("typedurl"), entry2_.get()->user_typed_url()); | 93 EXPECT_EQ(GURL("typedurl"), entry2_.get()->user_typed_url()); |
88 } | 94 } |
89 | 95 |
90 // Test Favicon inner class | 96 // Test Favicon inner class |
91 TEST_F(NavigationEntryTest, NavigationEntryFavicons) { | 97 TEST_F(NavigationEntryTest, NavigationEntryFavicons) { |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
144 entry2_.get()->set_page_type(INTERSTITIAL_PAGE); | 150 entry2_.get()->set_page_type(INTERSTITIAL_PAGE); |
145 EXPECT_EQ(INTERSTITIAL_PAGE, entry2_.get()->page_type()); | 151 EXPECT_EQ(INTERSTITIAL_PAGE, entry2_.get()->page_type()); |
146 | 152 |
147 // Referrer | 153 // Referrer |
148 EXPECT_EQ(GURL(), entry1_.get()->referrer()); | 154 EXPECT_EQ(GURL(), entry1_.get()->referrer()); |
149 EXPECT_EQ(GURL("from"), entry2_.get()->referrer()); | 155 EXPECT_EQ(GURL("from"), entry2_.get()->referrer()); |
150 entry2_.get()->set_referrer(GURL("from2")); | 156 entry2_.get()->set_referrer(GURL("from2")); |
151 EXPECT_EQ(GURL("from2"), entry2_.get()->referrer()); | 157 EXPECT_EQ(GURL("from2"), entry2_.get()->referrer()); |
152 | 158 |
153 // Title | 159 // Title |
154 EXPECT_EQ(string16(), entry1_.get()->title()); | 160 EXPECT_EQ(string16(), entry1_.get()->title().string()); |
155 EXPECT_EQ(ASCIIToUTF16("title"), entry2_.get()->title()); | 161 EXPECT_EQ(ASCIIToUTF16("title"), entry2_.get()->title().string()); |
156 entry2_.get()->set_title(ASCIIToUTF16("title2")); | 162 entry2_.get()->set_title( |
157 EXPECT_EQ(ASCIIToUTF16("title2"), entry2_.get()->title()); | 163 base::i18n::String16WithDirection(ASCIIToUTF16("title2"), |
| 164 base::i18n::LEFT_TO_RIGHT)); |
| 165 EXPECT_EQ(ASCIIToUTF16("title2"), entry2_.get()->title().string()); |
158 | 166 |
159 // State | 167 // State |
160 EXPECT_EQ(std::string(), entry1_.get()->content_state()); | 168 EXPECT_EQ(std::string(), entry1_.get()->content_state()); |
161 EXPECT_EQ(std::string(), entry2_.get()->content_state()); | 169 EXPECT_EQ(std::string(), entry2_.get()->content_state()); |
162 entry2_.get()->set_content_state("state"); | 170 entry2_.get()->set_content_state("state"); |
163 EXPECT_EQ("state", entry2_.get()->content_state()); | 171 EXPECT_EQ("state", entry2_.get()->content_state()); |
164 | 172 |
165 // Page ID | 173 // Page ID |
166 EXPECT_EQ(-1, entry1_.get()->page_id()); | 174 EXPECT_EQ(-1, entry1_.get()->page_id()); |
167 EXPECT_EQ(3, entry2_.get()->page_id()); | 175 EXPECT_EQ(3, entry2_.get()->page_id()); |
(...skipping 11 matching lines...) Expand all Loading... |
179 EXPECT_FALSE(entry2_.get()->has_post_data()); | 187 EXPECT_FALSE(entry2_.get()->has_post_data()); |
180 entry2_.get()->set_has_post_data(true); | 188 entry2_.get()->set_has_post_data(true); |
181 EXPECT_TRUE(entry2_.get()->has_post_data()); | 189 EXPECT_TRUE(entry2_.get()->has_post_data()); |
182 | 190 |
183 // Restored | 191 // Restored |
184 EXPECT_EQ(NavigationEntry::RESTORE_NONE, entry1_->restore_type()); | 192 EXPECT_EQ(NavigationEntry::RESTORE_NONE, entry1_->restore_type()); |
185 EXPECT_EQ(NavigationEntry::RESTORE_NONE, entry2_->restore_type()); | 193 EXPECT_EQ(NavigationEntry::RESTORE_NONE, entry2_->restore_type()); |
186 entry2_->set_restore_type(NavigationEntry::RESTORE_LAST_SESSION); | 194 entry2_->set_restore_type(NavigationEntry::RESTORE_LAST_SESSION); |
187 EXPECT_EQ(NavigationEntry::RESTORE_LAST_SESSION, entry2_->restore_type()); | 195 EXPECT_EQ(NavigationEntry::RESTORE_LAST_SESSION, entry2_->restore_type()); |
188 } | 196 } |
OLD | NEW |