Title: [104505] trunk/Source/WebKit/chromium
Revision
104505
Author
[email protected]
Date
2012-01-09 16:12:18 -0800 (Mon, 09 Jan 2012)

Log Message

[Chromium] REGRESSION(r104368): Broke CCLayerTreeHostImplTest.blendingOffWhenDrawingOpaqueLayers
https://bugs.webkit.org/show_bug.cgi?id=75783

Updated unit test to reflect desired behaviour now that tile/quad culling
is implemented.

Reviewed by James Robinson.

* tests/CCLayerTreeHostImplTest.cpp:
(WebKit::TEST_F):

Modified Paths

Diff

Modified: trunk/Source/WebKit/chromium/ChangeLog (104504 => 104505)


--- trunk/Source/WebKit/chromium/ChangeLog	2012-01-10 00:03:12 UTC (rev 104504)
+++ trunk/Source/WebKit/chromium/ChangeLog	2012-01-10 00:12:18 UTC (rev 104505)
@@ -1,3 +1,16 @@
+2012-01-09  W. James MacLean  <[email protected]>
+
+        [Chromium] REGRESSION(r104368): Broke CCLayerTreeHostImplTest.blendingOffWhenDrawingOpaqueLayers
+        https://bugs.webkit.org/show_bug.cgi?id=75783
+
+        Updated unit test to reflect desired behaviour now that tile/quad culling
+        is implemented.
+
+        Reviewed by James Robinson.
+
+        * tests/CCLayerTreeHostImplTest.cpp:
+        (WebKit::TEST_F):
+
 2012-01-09  Chris Rogers  <[email protected]>
 
         Fix potential issue in WebMediaPlayerClientImpl

Modified: trunk/Source/WebKit/chromium/tests/CCLayerTreeHostImplTest.cpp (104504 => 104505)


--- trunk/Source/WebKit/chromium/tests/CCLayerTreeHostImplTest.cpp	2012-01-10 00:03:12 UTC (rev 104504)
+++ trunk/Source/WebKit/chromium/tests/CCLayerTreeHostImplTest.cpp	2012-01-10 00:12:18 UTC (rev 104505)
@@ -218,7 +218,7 @@
 };
 
 // https://bugs.webkit.org/show_bug.cgi?id=75783
-TEST_F(CCLayerTreeHostImplTest, FAILS_blendingOffWhenDrawingOpaqueLayers)
+TEST_F(CCLayerTreeHostImplTest, blendingOffWhenDrawingOpaqueLayers)
 {
     GraphicsContext3D::Attributes attrs;
     RefPtr<GraphicsContext3D> context = GraphicsContext3DPrivate::createGraphicsContextFromWebContext(adoptPtr(new BlendStateTrackerContext()), attrs, 0, GraphicsContext3D::RenderDirectlyToHostWindow, GraphicsContext3DPrivate::ForUseOnThisThread);
@@ -264,7 +264,7 @@
     layer2->setOpacity(1);
     layer2->setExpectation(false, false);
     m_hostImpl->drawLayers();
-    EXPECT_TRUE(layer1->drawn());
+    EXPECT_FALSE(layer1->drawn());
     EXPECT_TRUE(layer2->drawn());
 
     // Parent layer with translucent content, drawn with blending.
@@ -273,7 +273,7 @@
     layer1->setExpectation(true, false);
     layer2->setExpectation(false, false);
     m_hostImpl->drawLayers();
-    EXPECT_TRUE(layer1->drawn());
+    EXPECT_FALSE(layer1->drawn());
     EXPECT_TRUE(layer2->drawn());
 
     // Parent layer with translucent opacity and opaque content. Since it has a
@@ -286,8 +286,31 @@
     layer1->setExpectation(false, true);
     layer2->setExpectation(false, false);
     m_hostImpl->drawLayers();
+    EXPECT_FALSE(layer1->drawn());
+    EXPECT_TRUE(layer2->drawn());
+
+    // Draw again, but with child non-opaque, to make sure
+    // layer1 not culled.
+    layer1->setOpaque(true);
+    layer1->setOpacity(1);
+    layer1->setExpectation(false, false);
+    layer2->setOpaque(true);
+    layer2->setOpacity(0.5);
+    layer2->setExpectation(true, false);
+    m_hostImpl->drawLayers();
     EXPECT_TRUE(layer1->drawn());
     EXPECT_TRUE(layer2->drawn());
+
+    // A second way of making the child non-opaque.
+    layer1->setOpaque(true);
+    layer1->setOpacity(1);
+    layer1->setExpectation(false, false);
+    layer2->setOpaque(false);
+    layer2->setOpacity(1);
+    layer2->setExpectation(true, false);
+    m_hostImpl->drawLayers();
+    EXPECT_TRUE(layer1->drawn());
+    EXPECT_TRUE(layer2->drawn());
 }
 
 class ReshapeTrackerContext: public FakeWebGraphicsContext3D {
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to