Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(228)

Side by Side Diff: third_party/WebKit/Source/web/tests/WebDocumentTest.cpp

Issue 1661573002: Add 'OriginAccessEntry::matchDomain'. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@2564
Patch Set: Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "config.h" 5 #include "config.h"
6 #include "public/web/WebDocument.h" 6 #include "public/web/WebDocument.h"
7 7
8 #include "core/CSSPropertyNames.h" 8 #include "core/CSSPropertyNames.h"
9 #include "core/HTMLNames.h" 9 #include "core/HTMLNames.h"
10 #include "core/dom/NodeComputedStyle.h" 10 #include "core/dom/NodeComputedStyle.h"
(...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after
133 133
134 // Crossorigin set to 'use-credentials' should trigger using credentials. 134 // Crossorigin set to 'use-credentials' should trigger using credentials.
135 linkManifest->setAttribute(HTMLNames::crossoriginAttr, "use-credentials"); 135 linkManifest->setAttribute(HTMLNames::crossoriginAttr, "use-credentials");
136 ASSERT_TRUE(webDoc.manifestUseCredentials()); 136 ASSERT_TRUE(webDoc.manifestUseCredentials());
137 } 137 }
138 138
139 namespace { 139 namespace {
140 140
141 const char* baseURLOriginA = "http://example.test:0/"; 141 const char* baseURLOriginA = "http://example.test:0/";
142 const char* baseURLOriginSubA = "http://subdomain.example.test:0/"; 142 const char* baseURLOriginSubA = "http://subdomain.example.test:0/";
143 const char* baseURLOriginSecureA = "https://example.test:0/";
143 const char* baseURLOriginB = "http://not-example.test:0/"; 144 const char* baseURLOriginB = "http://not-example.test:0/";
144 const char* emptyFile = "first_party/empty.html"; 145 const char* emptyFile = "first_party/empty.html";
145 const char* nestedData = "first_party/nested-data.html"; 146 const char* nestedData = "first_party/nested-data.html";
146 const char* nestedOriginA = "first_party/nested-originA.html"; 147 const char* nestedOriginA = "first_party/nested-originA.html";
147 const char* nestedOriginSubA = "first_party/nested-originSubA.html"; 148 const char* nestedOriginSubA = "first_party/nested-originSubA.html";
149 const char* nestedOriginSecureA = "first_party/nested-originSecureA.html";
148 const char* nestedOriginAInOriginA = "first_party/nested-originA-in-originA.html "; 150 const char* nestedOriginAInOriginA = "first_party/nested-originA-in-originA.html ";
149 const char* nestedOriginAInOriginB = "first_party/nested-originA-in-originB.html "; 151 const char* nestedOriginAInOriginB = "first_party/nested-originA-in-originB.html ";
150 const char* nestedOriginB = "first_party/nested-originB.html"; 152 const char* nestedOriginB = "first_party/nested-originB.html";
151 const char* nestedOriginBInOriginA = "first_party/nested-originB-in-originA.html "; 153 const char* nestedOriginBInOriginA = "first_party/nested-originB-in-originA.html ";
152 const char* nestedOriginBInOriginB = "first_party/nested-originB-in-originB.html "; 154 const char* nestedOriginBInOriginB = "first_party/nested-originB-in-originB.html ";
153 const char* nestedSrcDoc = "first_party/nested-srcdoc.html"; 155 const char* nestedSrcDoc = "first_party/nested-srcdoc.html";
154 156
155 KURL toOriginA(const char* file) 157 KURL toOriginA(const char* file)
156 { 158 {
157 return toKURL(std::string(baseURLOriginA) + file); 159 return toKURL(std::string(baseURLOriginA) + file);
158 } 160 }
159 161
160 KURL toOriginSubA(const char* file) 162 KURL toOriginSubA(const char* file)
161 { 163 {
162 return toKURL(std::string(baseURLOriginSubA) + file); 164 return toKURL(std::string(baseURLOriginSubA) + file);
163 } 165 }
164 166
167 KURL toOriginSecureA(const char* file)
168 {
169 return toKURL(std::string(baseURLOriginSecureA) + file);
170 }
171
165 KURL toOriginB(const char* file) 172 KURL toOriginB(const char* file)
166 { 173 {
167 return toKURL(std::string(baseURLOriginB) + file); 174 return toKURL(std::string(baseURLOriginB) + file);
168 } 175 }
169 176
170 } // anonymous namespace 177 } // anonymous namespace
171 178
172 class WebDocumentFirstPartyTest : public WebDocumentTest { 179 class WebDocumentFirstPartyTest : public WebDocumentTest {
173 public: 180 public:
174 static void SetUpTestCase(); 181 static void SetUpTestCase();
175 182
176 protected: 183 protected:
177 void load(const char*); 184 void load(const char*);
178 Document* nestedDocument() const; 185 Document* nestedDocument() const;
179 Document* nestedNestedDocument() const; 186 Document* nestedNestedDocument() const;
180 }; 187 };
181 188
182 void WebDocumentFirstPartyTest::SetUpTestCase() 189 void WebDocumentFirstPartyTest::SetUpTestCase()
183 { 190 {
184 URLTestHelpers::registerMockedURLLoad(toOriginA(emptyFile), WebString::fromU TF8(emptyFile)); 191 URLTestHelpers::registerMockedURLLoad(toOriginA(emptyFile), WebString::fromU TF8(emptyFile));
185 URLTestHelpers::registerMockedURLLoad(toOriginA(nestedData), WebString::from UTF8(nestedData)); 192 URLTestHelpers::registerMockedURLLoad(toOriginA(nestedData), WebString::from UTF8(nestedData));
186 URLTestHelpers::registerMockedURLLoad(toOriginA(nestedOriginA), WebString::f romUTF8(nestedOriginA)); 193 URLTestHelpers::registerMockedURLLoad(toOriginA(nestedOriginA), WebString::f romUTF8(nestedOriginA));
187 URLTestHelpers::registerMockedURLLoad(toOriginA(nestedOriginSubA), WebString ::fromUTF8(nestedOriginSubA)); 194 URLTestHelpers::registerMockedURLLoad(toOriginA(nestedOriginSubA), WebString ::fromUTF8(nestedOriginSubA));
195 URLTestHelpers::registerMockedURLLoad(toOriginA(nestedOriginSecureA), WebStr ing::fromUTF8(nestedOriginSecureA));
188 URLTestHelpers::registerMockedURLLoad(toOriginA(nestedOriginAInOriginA), Web String::fromUTF8(nestedOriginAInOriginA)); 196 URLTestHelpers::registerMockedURLLoad(toOriginA(nestedOriginAInOriginA), Web String::fromUTF8(nestedOriginAInOriginA));
189 URLTestHelpers::registerMockedURLLoad(toOriginA(nestedOriginAInOriginB), Web String::fromUTF8(nestedOriginAInOriginB)); 197 URLTestHelpers::registerMockedURLLoad(toOriginA(nestedOriginAInOriginB), Web String::fromUTF8(nestedOriginAInOriginB));
190 URLTestHelpers::registerMockedURLLoad(toOriginA(nestedOriginB), WebString::f romUTF8(nestedOriginB)); 198 URLTestHelpers::registerMockedURLLoad(toOriginA(nestedOriginB), WebString::f romUTF8(nestedOriginB));
191 URLTestHelpers::registerMockedURLLoad(toOriginA(nestedOriginBInOriginA), Web String::fromUTF8(nestedOriginBInOriginA)); 199 URLTestHelpers::registerMockedURLLoad(toOriginA(nestedOriginBInOriginA), Web String::fromUTF8(nestedOriginBInOriginA));
192 URLTestHelpers::registerMockedURLLoad(toOriginA(nestedOriginBInOriginB), Web String::fromUTF8(nestedOriginBInOriginB)); 200 URLTestHelpers::registerMockedURLLoad(toOriginA(nestedOriginBInOriginB), Web String::fromUTF8(nestedOriginBInOriginB));
193 URLTestHelpers::registerMockedURLLoad(toOriginA(nestedSrcDoc), WebString::fr omUTF8(nestedSrcDoc)); 201 URLTestHelpers::registerMockedURLLoad(toOriginA(nestedSrcDoc), WebString::fr omUTF8(nestedSrcDoc));
194 202
195 URLTestHelpers::registerMockedURLLoad(toOriginSubA(emptyFile), WebString::fr omUTF8(emptyFile)); 203 URLTestHelpers::registerMockedURLLoad(toOriginSubA(emptyFile), WebString::fr omUTF8(emptyFile));
204 URLTestHelpers::registerMockedURLLoad(toOriginSecureA(emptyFile), WebString: :fromUTF8(emptyFile));
196 205
197 URLTestHelpers::registerMockedURLLoad(toOriginB(emptyFile), WebString::fromU TF8(emptyFile)); 206 URLTestHelpers::registerMockedURLLoad(toOriginB(emptyFile), WebString::fromU TF8(emptyFile));
198 URLTestHelpers::registerMockedURLLoad(toOriginB(nestedOriginA), WebString::f romUTF8(nestedOriginA)); 207 URLTestHelpers::registerMockedURLLoad(toOriginB(nestedOriginA), WebString::f romUTF8(nestedOriginA));
199 URLTestHelpers::registerMockedURLLoad(toOriginB(nestedOriginB), WebString::f romUTF8(nestedOriginB)); 208 URLTestHelpers::registerMockedURLLoad(toOriginB(nestedOriginB), WebString::f romUTF8(nestedOriginB));
200 } 209 }
201 210
202 void WebDocumentFirstPartyTest::load(const char* file) 211 void WebDocumentFirstPartyTest::load(const char* file)
203 { 212 {
204 m_webViewHelper.initializeAndLoad(std::string(baseURLOriginA) + file); 213 m_webViewHelper.initializeAndLoad(std::string(baseURLOriginA) + file);
205 } 214 }
(...skipping 24 matching lines...) Expand all
230 } 239 }
231 240
232 TEST_F(WebDocumentFirstPartyTest, NestedOriginSubA) 241 TEST_F(WebDocumentFirstPartyTest, NestedOriginSubA)
233 { 242 {
234 load(nestedOriginSubA); 243 load(nestedOriginSubA);
235 244
236 ASSERT_EQ(toOriginA(nestedOriginSubA), topDocument()->firstPartyForCookies() ); 245 ASSERT_EQ(toOriginA(nestedOriginSubA), topDocument()->firstPartyForCookies() );
237 ASSERT_EQ(toOriginA(nestedOriginSubA), nestedDocument()->firstPartyForCookie s()); 246 ASSERT_EQ(toOriginA(nestedOriginSubA), nestedDocument()->firstPartyForCookie s());
238 } 247 }
239 248
249 TEST_F(WebDocumentFirstPartyTest, NestedOriginSecureA)
250 {
251 load(nestedOriginSecureA);
252
253 ASSERT_EQ(toOriginA(nestedOriginSecureA), topDocument()->firstPartyForCookie s());
254 ASSERT_EQ(toOriginA(nestedOriginSecureA), nestedDocument()->firstPartyForCoo kies());
255 }
256
240 TEST_F(WebDocumentFirstPartyTest, NestedOriginAInOriginA) 257 TEST_F(WebDocumentFirstPartyTest, NestedOriginAInOriginA)
241 { 258 {
242 load(nestedOriginAInOriginA); 259 load(nestedOriginAInOriginA);
243 260
244 ASSERT_EQ(toOriginA(nestedOriginAInOriginA), topDocument()->firstPartyForCoo kies()); 261 ASSERT_EQ(toOriginA(nestedOriginAInOriginA), topDocument()->firstPartyForCoo kies());
245 ASSERT_EQ(toOriginA(nestedOriginAInOriginA), nestedDocument()->firstPartyFor Cookies()); 262 ASSERT_EQ(toOriginA(nestedOriginAInOriginA), nestedDocument()->firstPartyFor Cookies());
246 ASSERT_EQ(toOriginA(nestedOriginAInOriginA), nestedNestedDocument()->firstPa rtyForCookies()); 263 ASSERT_EQ(toOriginA(nestedOriginAInOriginA), nestedNestedDocument()->firstPa rtyForCookies());
247 } 264 }
248 265
249 TEST_F(WebDocumentFirstPartyTest, NestedOriginAInOriginB) 266 TEST_F(WebDocumentFirstPartyTest, NestedOriginAInOriginB)
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
302 load(nestedOriginAInOriginB); 319 load(nestedOriginAInOriginB);
303 320
304 SchemeRegistry::registerURLSchemeAsFirstPartyWhenTopLevel("http"); 321 SchemeRegistry::registerURLSchemeAsFirstPartyWhenTopLevel("http");
305 322
306 ASSERT_EQ(toOriginA(nestedOriginAInOriginB), topDocument()->firstPartyForCoo kies()); 323 ASSERT_EQ(toOriginA(nestedOriginAInOriginB), topDocument()->firstPartyForCoo kies());
307 ASSERT_EQ(toOriginA(nestedOriginAInOriginB), nestedDocument()->firstPartyFor Cookies()); 324 ASSERT_EQ(toOriginA(nestedOriginAInOriginB), nestedDocument()->firstPartyFor Cookies());
308 ASSERT_EQ(toOriginA(nestedOriginAInOriginB), nestedNestedDocument()->firstPa rtyForCookies()); 325 ASSERT_EQ(toOriginA(nestedOriginAInOriginB), nestedNestedDocument()->firstPa rtyForCookies());
309 } 326 }
310 327
311 } // namespace blink 328 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698