| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (c) 2014, Google Inc. All rights reserved. | 2 * Copyright (c) 2014, 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 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 62 void DocumentTest::SetUp() { | 62 void DocumentTest::SetUp() { |
| 63 m_dummyPageHolder = DummyPageHolder::create(IntSize(800, 600)); | 63 m_dummyPageHolder = DummyPageHolder::create(IntSize(800, 600)); |
| 64 } | 64 } |
| 65 | 65 |
| 66 void DocumentTest::setHtmlInnerHTML(const char* htmlContent) { | 66 void DocumentTest::setHtmlInnerHTML(const char* htmlContent) { |
| 67 document().documentElement()->setInnerHTML(String::fromUTF8(htmlContent), | 67 document().documentElement()->setInnerHTML(String::fromUTF8(htmlContent), |
| 68 ASSERT_NO_EXCEPTION); | 68 ASSERT_NO_EXCEPTION); |
| 69 document().view()->updateAllLifecyclePhases(); | 69 document().view()->updateAllLifecyclePhases(); |
| 70 } | 70 } |
| 71 | 71 |
| 72 // This tests that we properly resize and re-layout pages for printing in the pr
esence of | 72 // This tests that we properly resize and re-layout pages for printing in the |
| 73 // media queries effecting elements in a subtree layout boundary | 73 // presence of media queries effecting elements in a subtree layout boundary |
| 74 TEST_F(DocumentTest, PrintRelayout) { | 74 TEST_F(DocumentTest, PrintRelayout) { |
| 75 setHtmlInnerHTML( | 75 setHtmlInnerHTML( |
| 76 "<style>" | 76 "<style>" |
| 77 " div {" | 77 " div {" |
| 78 " width: 100px;" | 78 " width: 100px;" |
| 79 " height: 100px;" | 79 " height: 100px;" |
| 80 " overflow: hidden;" | 80 " overflow: hidden;" |
| 81 " }" | 81 " }" |
| 82 " span {" | 82 " span {" |
| 83 " width: 50px;" | 83 " width: 50px;" |
| 84 " height: 50px;" | 84 " height: 50px;" |
| 85 " }" | 85 " }" |
| 86 " @media screen {" | 86 " @media screen {" |
| 87 " span {" | 87 " span {" |
| 88 " width: 20px;" | 88 " width: 20px;" |
| 89 " }" | 89 " }" |
| 90 " }" | 90 " }" |
| 91 "</style>" | 91 "</style>" |
| 92 "<p><div><span></span></div></p>"); | 92 "<p><div><span></span></div></p>"); |
| 93 FloatSize pageSize(400, 400); | 93 FloatSize pageSize(400, 400); |
| 94 float maximumShrinkRatio = 1.6; | 94 float maximumShrinkRatio = 1.6; |
| 95 | 95 |
| 96 document().frame()->setPrinting(true, pageSize, pageSize, maximumShrinkRatio); | 96 document().frame()->setPrinting(true, pageSize, pageSize, maximumShrinkRatio); |
| 97 EXPECT_EQ(document().documentElement()->offsetWidth(), 400); | 97 EXPECT_EQ(document().documentElement()->offsetWidth(), 400); |
| 98 document().frame()->setPrinting(false, FloatSize(), FloatSize(), 0); | 98 document().frame()->setPrinting(false, FloatSize(), FloatSize(), 0); |
| 99 EXPECT_EQ(document().documentElement()->offsetWidth(), 800); | 99 EXPECT_EQ(document().documentElement()->offsetWidth(), 800); |
| 100 } | 100 } |
| 101 | 101 |
| 102 // This test checks that Documunt::linkManifest() returns a value conform to the
specification. | 102 // This test checks that Documunt::linkManifest() returns a value conform to the |
| 103 // specification. |
| 103 TEST_F(DocumentTest, LinkManifest) { | 104 TEST_F(DocumentTest, LinkManifest) { |
| 104 // Test the default result. | 105 // Test the default result. |
| 105 EXPECT_EQ(0, document().linkManifest()); | 106 EXPECT_EQ(0, document().linkManifest()); |
| 106 | 107 |
| 107 // Check that we use the first manifest with <link rel=manifest> | 108 // Check that we use the first manifest with <link rel=manifest> |
| 108 HTMLLinkElement* link = HTMLLinkElement::create(document(), false); | 109 HTMLLinkElement* link = HTMLLinkElement::create(document(), false); |
| 109 link->setAttribute(blink::HTMLNames::relAttr, "manifest"); | 110 link->setAttribute(blink::HTMLNames::relAttr, "manifest"); |
| 110 link->setAttribute(blink::HTMLNames::hrefAttr, "foo.json"); | 111 link->setAttribute(blink::HTMLNames::hrefAttr, "foo.json"); |
| 111 document().head()->appendChild(link); | 112 document().head()->appendChild(link); |
| 112 EXPECT_EQ(link, document().linkManifest()); | 113 EXPECT_EQ(link, document().linkManifest()); |
| (...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 198 false}, | 199 false}, |
| 199 {"origin", ReferrerPolicyOrigin, false}, | 200 {"origin", ReferrerPolicyOrigin, false}, |
| 200 {"origin-when-crossorigin", ReferrerPolicyOriginWhenCrossOrigin, true}, | 201 {"origin-when-crossorigin", ReferrerPolicyOriginWhenCrossOrigin, true}, |
| 201 {"origin-when-cross-origin", ReferrerPolicyOriginWhenCrossOrigin, false}, | 202 {"origin-when-cross-origin", ReferrerPolicyOriginWhenCrossOrigin, false}, |
| 202 {"unsafe-url", ReferrerPolicyAlways}, | 203 {"unsafe-url", ReferrerPolicyAlways}, |
| 203 }; | 204 }; |
| 204 | 205 |
| 205 for (auto test : tests) { | 206 for (auto test : tests) { |
| 206 document().setReferrerPolicy(ReferrerPolicyDefault); | 207 document().setReferrerPolicy(ReferrerPolicyDefault); |
| 207 if (test.isLegacy) { | 208 if (test.isLegacy) { |
| 208 // Legacy keyword support must be explicitly enabled for the policy to par
se successfully. | 209 // Legacy keyword support must be explicitly enabled for the policy to |
| 210 // parse successfully. |
| 209 document().parseAndSetReferrerPolicy(test.policy); | 211 document().parseAndSetReferrerPolicy(test.policy); |
| 210 EXPECT_EQ(ReferrerPolicyDefault, document().getReferrerPolicy()); | 212 EXPECT_EQ(ReferrerPolicyDefault, document().getReferrerPolicy()); |
| 211 document().parseAndSetReferrerPolicy(test.policy, true); | 213 document().parseAndSetReferrerPolicy(test.policy, true); |
| 212 } else { | 214 } else { |
| 213 document().parseAndSetReferrerPolicy(test.policy); | 215 document().parseAndSetReferrerPolicy(test.policy); |
| 214 } | 216 } |
| 215 EXPECT_EQ(test.expected, document().getReferrerPolicy()) << test.policy; | 217 EXPECT_EQ(test.expected, document().getReferrerPolicy()) << test.policy; |
| 216 } | 218 } |
| 217 } | 219 } |
| 218 | 220 |
| (...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 289 EXPECT_TRUE(document().getSecurityOrigin()->isPotentiallyTrustworthy()); | 291 EXPECT_TRUE(document().getSecurityOrigin()->isPotentiallyTrustworthy()); |
| 290 | 292 |
| 291 origin = SecurityOrigin::createFromString("https://example.test"); | 293 origin = SecurityOrigin::createFromString("https://example.test"); |
| 292 document().setSecurityOrigin(origin); | 294 document().setSecurityOrigin(origin); |
| 293 document().enforceSandboxFlags(mask); | 295 document().enforceSandboxFlags(mask); |
| 294 EXPECT_TRUE(document().getSecurityOrigin()->isUnique()); | 296 EXPECT_TRUE(document().getSecurityOrigin()->isUnique()); |
| 295 EXPECT_TRUE(document().getSecurityOrigin()->isPotentiallyTrustworthy()); | 297 EXPECT_TRUE(document().getSecurityOrigin()->isPotentiallyTrustworthy()); |
| 296 } | 298 } |
| 297 | 299 |
| 298 } // namespace blink | 300 } // namespace blink |
| OLD | NEW |