| Index: Source/web/tests/WebFrameTest.cpp
|
| diff --git a/Source/web/tests/WebFrameTest.cpp b/Source/web/tests/WebFrameTest.cpp
|
| index d39bc920fd639a006c07ef4aee8d6e911ac4ea86..cfc5ff32446fd87aec4be11cb682b4e30b829fba 100644
|
| --- a/Source/web/tests/WebFrameTest.cpp
|
| +++ b/Source/web/tests/WebFrameTest.cpp
|
| @@ -5243,4 +5243,33 @@ TEST_F(WebFrameTest, FrameViewSetFrameRect)
|
| EXPECT_EQ_RECT(WebCore::IntRect(100, 100, 200, 200), frameView->frameRect());
|
| }
|
|
|
| +TEST_F(WebFrameTest, RenderBlockPercentHeightDescendants)
|
| +{
|
| + registerMockedHttpURLLoad("percent-height-descendants.html");
|
| + FrameTestHelpers::WebViewHelper webViewHelper;
|
| + webViewHelper.initializeAndLoad(m_baseURL + "percent-height-descendants.html");
|
| +
|
| + WebView* webView = webViewHelper.webView();
|
| + webView->resize(WebSize(800, 800));
|
| + webView->layout();
|
| +
|
| + Document* document = toWebFrameImpl(webView->mainFrame())->frame()->document();
|
| + WebCore::RenderBlock* container = WebCore::toRenderBlock(document->getElementById("container")->renderer());
|
| + WebCore::RenderBox* percentHeightInAnonymous = WebCore::toRenderBox(document->getElementById("percent-height-in-anonymous")->renderer());
|
| + WebCore::RenderBox* percentHeightDirectChild = WebCore::toRenderBox(document->getElementById("percent-height-direct-child")->renderer());
|
| +
|
| + EXPECT_TRUE(WebCore::RenderBlock::hasPercentHeightDescendant(percentHeightInAnonymous));
|
| + EXPECT_TRUE(WebCore::RenderBlock::hasPercentHeightDescendant(percentHeightDirectChild));
|
| +
|
| + ASSERT_TRUE(container->percentHeightDescendants());
|
| + ASSERT_TRUE(container->hasPercentHeightDescendants());
|
| + EXPECT_EQ(2U, container->percentHeightDescendants()->size());
|
| + EXPECT_TRUE(container->percentHeightDescendants()->contains(percentHeightInAnonymous));
|
| + EXPECT_TRUE(container->percentHeightDescendants()->contains(percentHeightDirectChild));
|
| +
|
| + WebCore::RenderBlock* anonymousBlock = percentHeightInAnonymous->containingBlock();
|
| + EXPECT_TRUE(anonymousBlock->isAnonymous());
|
| + EXPECT_FALSE(anonymousBlock->hasPercentHeightDescendants());
|
| +}
|
| +
|
| } // namespace
|
|
|