OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2015, Google Inc. All rights reserved. | 2 * Copyright (c) 2015, Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 256 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
267 RefPtrWillBePersistent<DocumentLoader> documentLoader; | 267 RefPtrWillBePersistent<DocumentLoader> documentLoader; |
268 RefPtrWillBePersistent<Document> document; | 268 RefPtrWillBePersistent<Document> document; |
269 Persistent<FrameFetchContext> fetchContext; | 269 Persistent<FrameFetchContext> fetchContext; |
270 }; | 270 }; |
271 | 271 |
272 TEST_F(FrameFetchContextHintsTest, MonitorDPRHints) | 272 TEST_F(FrameFetchContextHintsTest, MonitorDPRHints) |
273 { | 273 { |
274 expectHeader("http://www.example.com/1.gif", "DPR", false, ""); | 274 expectHeader("http://www.example.com/1.gif", "DPR", false, ""); |
275 ClientHintsPreferences preferences; | 275 ClientHintsPreferences preferences; |
276 preferences.setShouldSendDPR(true); | 276 preferences.setShouldSendDPR(true); |
277 document->setClientHintsPreferences(preferences); | 277 document->clientHintsPreferences().updateFrom(preferences); |
278 expectHeader("http://www.example.com/1.gif", "DPR", true, "1"); | 278 expectHeader("http://www.example.com/1.gif", "DPR", true, "1"); |
279 dummyPageHolder->page().setDeviceScaleFactor(2.5); | 279 dummyPageHolder->page().setDeviceScaleFactor(2.5); |
280 expectHeader("http://www.example.com/1.gif", "DPR", true, "2.5"); | 280 expectHeader("http://www.example.com/1.gif", "DPR", true, "2.5"); |
281 expectHeader("http://www.example.com/1.gif", "Width", false, ""); | 281 expectHeader("http://www.example.com/1.gif", "Width", false, ""); |
282 expectHeader("http://www.example.com/1.gif", "Viewport-Width", false, ""); | 282 expectHeader("http://www.example.com/1.gif", "Viewport-Width", false, ""); |
283 } | 283 } |
284 | 284 |
285 TEST_F(FrameFetchContextHintsTest, MonitorResourceWidthHints) | 285 TEST_F(FrameFetchContextHintsTest, MonitorResourceWidthHints) |
286 { | 286 { |
287 expectHeader("http://www.example.com/1.gif", "Width", false, ""); | 287 expectHeader("http://www.example.com/1.gif", "Width", false, ""); |
288 ClientHintsPreferences preferences; | 288 ClientHintsPreferences preferences; |
289 preferences.setShouldSendResourceWidth(true); | 289 preferences.setShouldSendResourceWidth(true); |
290 document->setClientHintsPreferences(preferences); | 290 document->clientHintsPreferences().updateFrom(preferences); |
291 expectHeader("http://www.example.com/1.gif", "Width", true, "500", 500); | 291 expectHeader("http://www.example.com/1.gif", "Width", true, "500", 500); |
292 expectHeader("http://www.example.com/1.gif", "Width", true, "667", 666.6666)
; | 292 expectHeader("http://www.example.com/1.gif", "Width", true, "667", 666.6666)
; |
293 expectHeader("http://www.example.com/1.gif", "DPR", false, ""); | 293 expectHeader("http://www.example.com/1.gif", "DPR", false, ""); |
294 } | 294 } |
295 | 295 |
296 TEST_F(FrameFetchContextHintsTest, MonitorViewportWidthHints) | 296 TEST_F(FrameFetchContextHintsTest, MonitorViewportWidthHints) |
297 { | 297 { |
298 expectHeader("http://www.example.com/1.gif", "Viewport-Width", false, ""); | 298 expectHeader("http://www.example.com/1.gif", "Viewport-Width", false, ""); |
299 ClientHintsPreferences preferences; | 299 ClientHintsPreferences preferences; |
300 preferences.setShouldSendViewportWidth(true); | 300 preferences.setShouldSendViewportWidth(true); |
301 document->setClientHintsPreferences(preferences); | 301 document->clientHintsPreferences().updateFrom(preferences); |
302 expectHeader("http://www.example.com/1.gif", "Viewport-Width", true, "500"); | 302 expectHeader("http://www.example.com/1.gif", "Viewport-Width", true, "500"); |
303 dummyPageHolder->frameView().setLayoutSizeFixedToFrameSize(false); | 303 dummyPageHolder->frameView().setLayoutSizeFixedToFrameSize(false); |
304 dummyPageHolder->frameView().setLayoutSize(IntSize(800, 800)); | 304 dummyPageHolder->frameView().setLayoutSize(IntSize(800, 800)); |
305 expectHeader("http://www.example.com/1.gif", "Viewport-Width", true, "800"); | 305 expectHeader("http://www.example.com/1.gif", "Viewport-Width", true, "800"); |
306 expectHeader("http://www.example.com/1.gif", "Viewport-Width", true, "800",
666.6666); | 306 expectHeader("http://www.example.com/1.gif", "Viewport-Width", true, "800",
666.6666); |
307 expectHeader("http://www.example.com/1.gif", "DPR", false, ""); | 307 expectHeader("http://www.example.com/1.gif", "DPR", false, ""); |
308 } | 308 } |
309 | 309 |
310 TEST_F(FrameFetchContextHintsTest, MonitorAllHints) | 310 TEST_F(FrameFetchContextHintsTest, MonitorAllHints) |
311 { | 311 { |
312 expectHeader("http://www.example.com/1.gif", "DPR", false, ""); | 312 expectHeader("http://www.example.com/1.gif", "DPR", false, ""); |
313 expectHeader("http://www.example.com/1.gif", "Viewport-Width", false, ""); | 313 expectHeader("http://www.example.com/1.gif", "Viewport-Width", false, ""); |
314 expectHeader("http://www.example.com/1.gif", "Width", false, ""); | 314 expectHeader("http://www.example.com/1.gif", "Width", false, ""); |
315 | 315 |
316 ClientHintsPreferences preferences; | 316 ClientHintsPreferences preferences; |
317 preferences.setShouldSendDPR(true); | 317 preferences.setShouldSendDPR(true); |
318 preferences.setShouldSendResourceWidth(true); | 318 preferences.setShouldSendResourceWidth(true); |
319 preferences.setShouldSendViewportWidth(true); | 319 preferences.setShouldSendViewportWidth(true); |
320 document->setClientHintsPreferences(preferences); | 320 document->clientHintsPreferences().updateFrom(preferences); |
321 expectHeader("http://www.example.com/1.gif", "DPR", true, "1"); | 321 expectHeader("http://www.example.com/1.gif", "DPR", true, "1"); |
322 expectHeader("http://www.example.com/1.gif", "Width", true, "400", 400); | 322 expectHeader("http://www.example.com/1.gif", "Width", true, "400", 400); |
323 expectHeader("http://www.example.com/1.gif", "Viewport-Width", true, "500"); | 323 expectHeader("http://www.example.com/1.gif", "Viewport-Width", true, "500"); |
324 } | 324 } |
325 | 325 |
326 class StubFrameLoaderClientWithParent : public EmptyFrameLoaderClient { | 326 class StubFrameLoaderClientWithParent : public EmptyFrameLoaderClient { |
327 public: | 327 public: |
328 explicit StubFrameLoaderClientWithParent(Frame* parent) | 328 explicit StubFrameLoaderClientWithParent(Frame* parent) |
329 : m_parent(parent) | 329 : m_parent(parent) |
330 { | 330 { |
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
430 // Child frame as part of end to end reload | 430 // Child frame as part of end to end reload |
431 document->frame()->loader().setLoadType(FrameLoadTypeReloadFromOrigin); | 431 document->frame()->loader().setLoadType(FrameLoadTypeReloadFromOrigin); |
432 EXPECT_EQ(ReloadBypassingCache, childFetchContext->resourceRequestCachePolic
y(request, Resource::MainResource)); | 432 EXPECT_EQ(ReloadBypassingCache, childFetchContext->resourceRequestCachePolic
y(request, Resource::MainResource)); |
433 | 433 |
434 childDocumentLoader->detachFromFrame(); | 434 childDocumentLoader->detachFromFrame(); |
435 childDocumentLoader.clear(); | 435 childDocumentLoader.clear(); |
436 childFrame->detach(FrameDetachType::Remove); | 436 childFrame->detach(FrameDetachType::Remove); |
437 } | 437 } |
438 | 438 |
439 } // namespace | 439 } // namespace |
OLD | NEW |