OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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_impl.h" |
10 #include "content/public/browser/ssl_status.h" | 10 #include "content/public/browser/ssl_status.h" |
11 #include "testing/gtest/include/gtest/gtest.h" | 11 #include "testing/gtest/include/gtest/gtest.h" |
12 | 12 |
13 using content::SSLStatus; | 13 namespace content { |
14 | 14 |
15 class NavigationEntryTest : public testing::Test { | 15 class NavigationEntryTest : public testing::Test { |
16 public: | 16 public: |
17 NavigationEntryTest() : instance_(NULL) { | 17 NavigationEntryTest() : instance_(NULL) { |
18 } | 18 } |
19 | 19 |
20 virtual void SetUp() { | 20 virtual void SetUp() { |
21 entry1_.reset(new NavigationEntry); | 21 entry1_.reset(new NavigationEntryImpl); |
22 | 22 |
23 instance_ = SiteInstance::CreateSiteInstance(NULL); | 23 instance_ = SiteInstance::CreateSiteInstance(NULL); |
24 entry2_.reset(new NavigationEntry( | 24 entry2_.reset(new NavigationEntryImpl( |
25 instance_, 3, | 25 instance_, 3, |
26 GURL("test:url"), | 26 GURL("test:url"), |
27 content::Referrer(GURL("from"), WebKit::WebReferrerPolicyDefault), | 27 Referrer(GURL("from"), WebKit::WebReferrerPolicyDefault), |
28 ASCIIToUTF16("title"), | 28 ASCIIToUTF16("title"), |
29 content::PAGE_TRANSITION_TYPED, | 29 PAGE_TRANSITION_TYPED, |
30 false)); | 30 false)); |
31 } | 31 } |
32 | 32 |
33 virtual void TearDown() { | 33 virtual void TearDown() { |
34 } | 34 } |
35 | 35 |
36 protected: | 36 protected: |
37 scoped_ptr<NavigationEntry> entry1_; | 37 scoped_ptr<NavigationEntryImpl> entry1_; |
38 scoped_ptr<NavigationEntry> entry2_; | 38 scoped_ptr<NavigationEntryImpl> entry2_; |
39 // SiteInstances are deleted when their NavigationEntries are gone. | 39 // SiteInstances are deleted when their NavigationEntries are gone. |
40 SiteInstance* instance_; | 40 SiteInstance* instance_; |
41 }; | 41 }; |
42 | 42 |
43 // Test unique ID accessors | 43 // Test unique ID accessors |
44 TEST_F(NavigationEntryTest, NavigationEntryUniqueIDs) { | 44 TEST_F(NavigationEntryTest, NavigationEntryUniqueIDs) { |
45 // Two entries should have different IDs by default | 45 // Two entries should have different IDs by default |
46 EXPECT_NE(entry1_.get()->GetUniqueID(), entry2_.get()->GetUniqueID()); | 46 EXPECT_NE(entry1_.get()->GetUniqueID(), entry2_.get()->GetUniqueID()); |
47 | 47 |
48 // Can set an entry to have the same ID as another | 48 // Can set an entry to have the same ID as another |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
94 | 94 |
95 // Test Favicon inner class construction. | 95 // Test Favicon inner class construction. |
96 TEST_F(NavigationEntryTest, NavigationEntryFavicons) { | 96 TEST_F(NavigationEntryTest, NavigationEntryFavicons) { |
97 EXPECT_EQ(GURL(), entry1_.get()->GetFavicon().url); | 97 EXPECT_EQ(GURL(), entry1_.get()->GetFavicon().url); |
98 EXPECT_FALSE(entry1_.get()->GetFavicon().valid); | 98 EXPECT_FALSE(entry1_.get()->GetFavicon().valid); |
99 } | 99 } |
100 | 100 |
101 // Test SSLStatus inner class | 101 // Test SSLStatus inner class |
102 TEST_F(NavigationEntryTest, NavigationEntrySSLStatus) { | 102 TEST_F(NavigationEntryTest, NavigationEntrySSLStatus) { |
103 // Default (unknown) | 103 // Default (unknown) |
104 EXPECT_EQ(content::SECURITY_STYLE_UNKNOWN, | 104 EXPECT_EQ(SECURITY_STYLE_UNKNOWN, entry1_.get()->GetSSL().security_style); |
105 entry1_.get()->GetSSL().security_style); | 105 EXPECT_EQ(SECURITY_STYLE_UNKNOWN, entry2_.get()->GetSSL().security_style); |
106 EXPECT_EQ(content::SECURITY_STYLE_UNKNOWN, | |
107 entry2_.get()->GetSSL().security_style); | |
108 EXPECT_EQ(0, entry1_.get()->GetSSL().cert_id); | 106 EXPECT_EQ(0, entry1_.get()->GetSSL().cert_id); |
109 EXPECT_EQ(0U, entry1_.get()->GetSSL().cert_status); | 107 EXPECT_EQ(0U, entry1_.get()->GetSSL().cert_status); |
110 EXPECT_EQ(-1, entry1_.get()->GetSSL().security_bits); | 108 EXPECT_EQ(-1, entry1_.get()->GetSSL().security_bits); |
111 int content_status = entry1_.get()->GetSSL().content_status; | 109 int content_status = entry1_.get()->GetSSL().content_status; |
112 EXPECT_FALSE(!!(content_status & SSLStatus::DISPLAYED_INSECURE_CONTENT)); | 110 EXPECT_FALSE(!!(content_status & SSLStatus::DISPLAYED_INSECURE_CONTENT)); |
113 EXPECT_FALSE(!!(content_status & SSLStatus::RAN_INSECURE_CONTENT)); | 111 EXPECT_FALSE(!!(content_status & SSLStatus::RAN_INSECURE_CONTENT)); |
114 } | 112 } |
115 | 113 |
116 // Test other basic accessors | 114 // Test other basic accessors |
117 TEST_F(NavigationEntryTest, NavigationEntryAccessors) { | 115 TEST_F(NavigationEntryTest, NavigationEntryAccessors) { |
118 // SiteInstance | 116 // SiteInstance |
119 EXPECT_TRUE(entry1_.get()->site_instance() == NULL); | 117 EXPECT_TRUE(entry1_.get()->site_instance() == NULL); |
120 EXPECT_EQ(instance_, entry2_.get()->site_instance()); | 118 EXPECT_EQ(instance_, entry2_.get()->site_instance()); |
121 entry1_.get()->set_site_instance(instance_); | 119 entry1_.get()->set_site_instance(instance_); |
122 EXPECT_EQ(instance_, entry1_.get()->site_instance()); | 120 EXPECT_EQ(instance_, entry1_.get()->site_instance()); |
123 | 121 |
124 // Page type | 122 // Page type |
125 EXPECT_EQ(content::PAGE_TYPE_NORMAL, entry1_.get()->GetPageType()); | 123 EXPECT_EQ(PAGE_TYPE_NORMAL, entry1_.get()->GetPageType()); |
126 EXPECT_EQ(content::PAGE_TYPE_NORMAL, entry2_.get()->GetPageType()); | 124 EXPECT_EQ(PAGE_TYPE_NORMAL, entry2_.get()->GetPageType()); |
127 entry2_.get()->set_page_type(content::PAGE_TYPE_INTERSTITIAL); | 125 entry2_.get()->set_page_type(PAGE_TYPE_INTERSTITIAL); |
128 EXPECT_EQ(content::PAGE_TYPE_INTERSTITIAL, entry2_.get()->GetPageType()); | 126 EXPECT_EQ(PAGE_TYPE_INTERSTITIAL, entry2_.get()->GetPageType()); |
129 | 127 |
130 // Referrer | 128 // Referrer |
131 EXPECT_EQ(GURL(), entry1_.get()->GetReferrer().url); | 129 EXPECT_EQ(GURL(), entry1_.get()->GetReferrer().url); |
132 EXPECT_EQ(GURL("from"), entry2_.get()->GetReferrer().url); | 130 EXPECT_EQ(GURL("from"), entry2_.get()->GetReferrer().url); |
133 entry2_.get()->SetReferrer( | 131 entry2_.get()->SetReferrer( |
134 content::Referrer(GURL("from2"), WebKit::WebReferrerPolicyDefault)); | 132 Referrer(GURL("from2"), WebKit::WebReferrerPolicyDefault)); |
135 EXPECT_EQ(GURL("from2"), entry2_.get()->GetReferrer().url); | 133 EXPECT_EQ(GURL("from2"), entry2_.get()->GetReferrer().url); |
136 | 134 |
137 // Title | 135 // Title |
138 EXPECT_EQ(string16(), entry1_.get()->GetTitle()); | 136 EXPECT_EQ(string16(), entry1_.get()->GetTitle()); |
139 EXPECT_EQ(ASCIIToUTF16("title"), entry2_.get()->GetTitle()); | 137 EXPECT_EQ(ASCIIToUTF16("title"), entry2_.get()->GetTitle()); |
140 entry2_.get()->SetTitle(ASCIIToUTF16("title2")); | 138 entry2_.get()->SetTitle(ASCIIToUTF16("title2")); |
141 EXPECT_EQ(ASCIIToUTF16("title2"), entry2_.get()->GetTitle()); | 139 EXPECT_EQ(ASCIIToUTF16("title2"), entry2_.get()->GetTitle()); |
142 | 140 |
143 // State | 141 // State |
144 EXPECT_EQ(std::string(), entry1_.get()->GetContentState()); | 142 EXPECT_EQ(std::string(), entry1_.get()->GetContentState()); |
145 EXPECT_EQ(std::string(), entry2_.get()->GetContentState()); | 143 EXPECT_EQ(std::string(), entry2_.get()->GetContentState()); |
146 entry2_.get()->SetContentState("state"); | 144 entry2_.get()->SetContentState("state"); |
147 EXPECT_EQ("state", entry2_.get()->GetContentState()); | 145 EXPECT_EQ("state", entry2_.get()->GetContentState()); |
148 | 146 |
149 // Page ID | 147 // Page ID |
150 EXPECT_EQ(-1, entry1_.get()->GetPageID()); | 148 EXPECT_EQ(-1, entry1_.get()->GetPageID()); |
151 EXPECT_EQ(3, entry2_.get()->GetPageID()); | 149 EXPECT_EQ(3, entry2_.get()->GetPageID()); |
152 entry2_.get()->SetPageID(2); | 150 entry2_.get()->SetPageID(2); |
153 EXPECT_EQ(2, entry2_.get()->GetPageID()); | 151 EXPECT_EQ(2, entry2_.get()->GetPageID()); |
154 | 152 |
155 // Transition type | 153 // Transition type |
156 EXPECT_EQ(content::PAGE_TRANSITION_LINK, entry1_.get()->GetTransitionType()); | 154 EXPECT_EQ(PAGE_TRANSITION_LINK, entry1_.get()->GetTransitionType()); |
157 EXPECT_EQ(content::PAGE_TRANSITION_TYPED, entry2_.get()->GetTransitionType()); | 155 EXPECT_EQ(PAGE_TRANSITION_TYPED, entry2_.get()->GetTransitionType()); |
158 entry2_.get()->SetTransitionType(content::PAGE_TRANSITION_RELOAD); | 156 entry2_.get()->SetTransitionType(PAGE_TRANSITION_RELOAD); |
159 EXPECT_EQ(content::PAGE_TRANSITION_RELOAD, | 157 EXPECT_EQ(PAGE_TRANSITION_RELOAD, entry2_.get()->GetTransitionType()); |
160 entry2_.get()->GetTransitionType()); | |
161 | 158 |
162 // Is renderer initiated | 159 // Is renderer initiated |
163 EXPECT_FALSE(entry1_.get()->is_renderer_initiated()); | 160 EXPECT_FALSE(entry1_.get()->is_renderer_initiated()); |
164 EXPECT_FALSE(entry2_.get()->is_renderer_initiated()); | 161 EXPECT_FALSE(entry2_.get()->is_renderer_initiated()); |
165 entry2_.get()->set_is_renderer_initiated(true); | 162 entry2_.get()->set_is_renderer_initiated(true); |
166 EXPECT_TRUE(entry2_.get()->is_renderer_initiated()); | 163 EXPECT_TRUE(entry2_.get()->is_renderer_initiated()); |
167 | 164 |
168 // Post Data | 165 // Post Data |
169 EXPECT_FALSE(entry1_.get()->GetHasPostData()); | 166 EXPECT_FALSE(entry1_.get()->GetHasPostData()); |
170 EXPECT_FALSE(entry2_.get()->GetHasPostData()); | 167 EXPECT_FALSE(entry2_.get()->GetHasPostData()); |
171 entry2_.get()->SetHasPostData(true); | 168 entry2_.get()->SetHasPostData(true); |
172 EXPECT_TRUE(entry2_.get()->GetHasPostData()); | 169 EXPECT_TRUE(entry2_.get()->GetHasPostData()); |
173 | 170 |
174 // Restored | 171 // Restored |
175 EXPECT_EQ(NavigationEntry::RESTORE_NONE, entry1_->restore_type()); | 172 EXPECT_EQ(NavigationEntryImpl::RESTORE_NONE, entry1_->restore_type()); |
176 EXPECT_EQ(NavigationEntry::RESTORE_NONE, entry2_->restore_type()); | 173 EXPECT_EQ(NavigationEntryImpl::RESTORE_NONE, entry2_->restore_type()); |
177 entry2_->set_restore_type(NavigationEntry::RESTORE_LAST_SESSION); | 174 entry2_->set_restore_type(NavigationEntryImpl::RESTORE_LAST_SESSION); |
178 EXPECT_EQ(NavigationEntry::RESTORE_LAST_SESSION, entry2_->restore_type()); | 175 EXPECT_EQ(NavigationEntryImpl::RESTORE_LAST_SESSION, entry2_->restore_type()); |
179 } | 176 } |
| 177 |
| 178 } // namespace content |
OLD | NEW |