OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 "core/html/parser/HTMLResourcePreloader.h" | 6 #include "core/html/parser/HTMLResourcePreloader.h" |
7 | 7 |
8 #include "core/html/parser/PreloadRequest.h" | 8 #include "core/html/parser/PreloadRequest.h" |
9 #include "core/testing/DummyPageHolder.h" | 9 #include "core/testing/DummyPageHolder.h" |
10 #include "testing/gtest/include/gtest/gtest.h" | 10 #include "testing/gtest/include/gtest/gtest.h" |
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
57 OwnPtr<PreloadRequest> preloadRequest = PreloadRequest::create(String(), | 57 OwnPtr<PreloadRequest> preloadRequest = PreloadRequest::create(String(), |
58 TextPosition(), | 58 TextPosition(), |
59 testCase.url, | 59 testCase.url, |
60 KURL(ParsedURLStringTag(), testCase.baseURL), | 60 KURL(ParsedURLStringTag(), testCase.baseURL), |
61 Resource::Image, | 61 Resource::Image, |
62 ReferrerPolicy(), | 62 ReferrerPolicy(), |
63 FetchRequest::ResourceWidth(), | 63 FetchRequest::ResourceWidth(), |
64 ClientHintsPreferences(), | 64 ClientHintsPreferences(), |
65 PreloadRequest::RequestTypePreconnect); | 65 PreloadRequest::RequestTypePreconnect); |
66 if (testCase.isCORS) | 66 if (testCase.isCORS) |
67 preloadRequest->setCrossOriginEnabled(DoNotAllowStoredCredentials); | 67 preloadRequest->setCrossOrigin(CrossOriginAttributeAnonymous); |
68 OwnPtrWillBeRawPtr<HTMLResourcePreloader> preloader = HTMLResourcePreloa
der::create(m_dummyPageHolder->document()); | 68 OwnPtrWillBeRawPtr<HTMLResourcePreloader> preloader = HTMLResourcePreloa
der::create(m_dummyPageHolder->document()); |
69 preloader->preload(preloadRequest.release(), networkHints); | 69 preloader->preload(preloadRequest.release(), networkHints); |
70 ASSERT_TRUE(networkHints.didPreconnect()); | 70 ASSERT_TRUE(networkHints.didPreconnect()); |
71 ASSERT_EQ(testCase.isCORS, networkHints.isCrossOrigin()); | 71 ASSERT_EQ(testCase.isCORS, networkHints.isCrossOrigin()); |
72 ASSERT_EQ(testCase.isHTTPS, networkHints.isHTTPS()); | 72 ASSERT_EQ(testCase.isHTTPS, networkHints.isHTTPS()); |
73 } | 73 } |
74 | 74 |
75 private: | 75 private: |
76 OwnPtr<DummyPageHolder> m_dummyPageHolder; | 76 OwnPtr<DummyPageHolder> m_dummyPageHolder; |
77 }; | 77 }; |
78 | 78 |
79 TEST_F(HTMLResourcePreloaderTest, testPreconnect) | 79 TEST_F(HTMLResourcePreloaderTest, testPreconnect) |
80 { | 80 { |
81 PreconnectTestCase testCases[] = { | 81 PreconnectTestCase testCases[] = { |
82 { "http://example.test", "http://example.com", false, false }, | 82 { "http://example.test", "http://example.com", false, false }, |
83 { "http://example.test", "http://example.com", true, false }, | 83 { "http://example.test", "http://example.com", true, false }, |
84 { "http://example.test", "https://example.com", true, true }, | 84 { "http://example.test", "https://example.com", true, true }, |
85 { "http://example.test", "https://example.com", false, true }, | 85 { "http://example.test", "https://example.com", false, true }, |
86 { "http://example.test", "//example.com", false, false }, | 86 { "http://example.test", "//example.com", false, false }, |
87 { "http://example.test", "//example.com", true, false }, | 87 { "http://example.test", "//example.com", true, false }, |
88 { "https://example.test", "//example.com", false, true }, | 88 { "https://example.test", "//example.com", false, true }, |
89 { "https://example.test", "//example.com", true, true }, | 89 { "https://example.test", "//example.com", true, true }, |
90 }; | 90 }; |
91 | 91 |
92 for (const auto& testCase : testCases) | 92 for (const auto& testCase : testCases) |
93 test(testCase); | 93 test(testCase); |
94 } | 94 } |
95 | 95 |
96 } // namespace blink | 96 } // namespace blink |
OLD | NEW |