Bug 60367

Summary: [Qt] Implement layoutTestController.layerTreeAsText()
Product: WebKit Reporter: Csaba Osztrogonác <ossy>
Component: Tools / TestsAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: abecsi, commit-queue, joybro201, laszlo.gombos, luiz, ossy, tonikitoo
Priority: P2 Keywords: Qt, QtTriaged
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Attachments:
Description Flags
Patch none

Description Csaba Osztrogonác 2011-05-06 06:14:53 PDT
compositing tests need layoutTestController.layerTreeAsText()
Comment 1 Young Han Lee 2011-05-07 23:38:24 PDT
Created attachment 92730 [details]
Patch
Comment 2 Andreas Kling 2011-05-08 03:38:32 PDT
Comment on attachment 92730 [details]
Patch

Assuming that this change makes new tests pass, those tests should be unskipped in LayoutTests/platform/qt/Skipped
Comment 3 Young Han Lee 2011-05-08 09:31:42 PDT
(In reply to comment #2)
> (From update of attachment 92730 [details])
> Assuming that this change makes new tests pass, those tests should be unskipped in LayoutTests/platform/qt/Skipped

This patch is for a compositing test, and currently all compositing tests are skipped in the qt port.
It might be because 3D_RENDERING and ACCELERATED_COMPOSITING are not supported in default.

In this case, the tests should be remained in the skipped list. right?
Comment 4 Csaba Osztrogonác 2011-05-09 03:46:59 PDT
Young, I tested your patch, but I always got empty string in 
actual result reported by layoutTestController.layerTreeAsText()
Comment 5 Young Han Lee 2011-05-09 05:01:22 PDT
(In reply to comment #4)
> Young, I tested your patch, but I always got empty string in 
> actual result reported by layoutTestController.layerTreeAsText()

You probably tested it with a binary not built with the texmap option.
Qt port built with default settings does not create GraphicsLayer, so layoutTestController.layerTreeAsText() always returns empty string.

You could see the right result if you try it again after enabling the texmap feature. :)
Comment 6 Csaba Osztrogonác 2011-05-09 06:14:40 PDT
(In reply to comment #5)
> You probably tested it with a binary not built with the texmap option.
> Qt port built with default settings does not create GraphicsLayer, so layoutTestController.layerTreeAsText() always returns empty string.
> 
> You could see the right result if you try it again after enabling the texmap feature. :)

You're right, I didn't know that I have to enable texmap in WebCore.pri too.
I did it and now 52 tests pass. But we can't remove compositing tests from
the Skipped list if texmap isn't default build option.

Additionally I got the following results:

failing tests:
---------------
compositing/geometry/ancestor-overflow-change.html
compositing/geometry/layer-due-to-layer-children-deep-switch.html
compositing/geometry/layer-due-to-layer-children-switch.html
compositing/geometry/limit-layer-bounds-clipping-ancestor.html
compositing/geometry/limit-layer-bounds-fixed-positioned.html
compositing/geometry/limit-layer-bounds-opacity-transition.html
compositing/geometry/limit-layer-bounds-overflow-root.html
compositing/geometry/limit-layer-bounds-transformed-overflow.html
compositing/geometry/preserve-3d-switching.html
compositing/geometry/tall-page-composited.html
compositing/iframes/become-overlapped-iframe.html
compositing/iframes/composited-iframe-scroll.html
compositing/iframes/composited-parent-iframe.html
compositing/iframes/connect-compositing-iframe2.html
compositing/iframes/connect-compositing-iframe3.html
compositing/iframes/connect-compositing-iframe-delayed.html
compositing/iframes/connect-compositing-iframe.html
compositing/iframes/enter-compositing-iframe.html
compositing/iframes/iframe-content-flipping.html
compositing/iframes/iframe-resize.html
compositing/iframes/overlapped-iframe.html
compositing/iframes/scrolling-iframe.html
compositing/layer-creation/overflow-scroll-overlap.html
compositing/overflow/clip-descendents.html
compositing/overflow/content-gains-scrollbars.html
compositing/overflow/overflow-scrollbar-layers.html
compositing/plugins/small-to-large-composited-plugin.html
compositing/tiling/crash-reparent-tiled-layer.html
compositing/tiling/huge-layer-add-remove-child.html
compositing/tiling/huge-layer-img.html
compositing/tiling/huge-layer-resize.html
compositing/tiling/huge-layer-with-layer-children-resize.html
compositing/tiling/huge-layer-with-layer-children.html
compositing/tiling/huge-layer.html

new tests without expected results:
------------------------------------
compositing/compositing-visible-descendant.html
compositing/direct-image-compositing.html
compositing/generated-content.html
compositing/layers-inside-overflow-scroll.html
compositing/self-painting-layers.html
compositing/sibling-positioning.html
compositing/text-on-large-layer.html
compositing/animation/state-at-end-event-transform-layer.html
compositing/color-matching/image-color-matching.html
compositing/color-matching/pdf-image-match.html
compositing/geometry/abs-position-inside-opacity.html
compositing/geometry/clipped-video-controller.html
compositing/geometry/clipping-foreground.html
compositing/geometry/composited-html-size.html
compositing/geometry/fixed-in-composited.html
compositing/geometry/fixed-position.html
compositing/geometry/horizontal-scroll-composited.html
compositing/geometry/layer-due-to-layer-children-deep.html
compositing/geometry/layer-due-to-layer-children.html
compositing/geometry/limit-layer-bounds-overflow-repaint.html
compositing/geometry/outline-change.html
compositing/geometry/partial-layout-update.html
compositing/geometry/root-layer-update.html
compositing/geometry/transfrom-origin-on-zero-size-layer.html
compositing/geometry/vertical-scroll-composited.html
compositing/geometry/video-fixed-scrolling.html
compositing/geometry/video-opacity-overlay.html
compositing/iframes/composited-iframe-alignment.html
compositing/iframes/iframe-copy-on-scroll.html
compositing/iframes/iframe-in-composited-layer.html
compositing/images/direct-image-background-color.html
compositing/masks/direct-image-mask.html
compositing/masks/masked-ancestor.html
compositing/masks/multiple-masks.html
compositing/masks/simple-composited-mask.html
compositing/overflow/ancestor-overflow.html
compositing/overflow/fixed-position-ancestor-clip.html
compositing/overflow/overflow-compositing-descendant.html
compositing/overflow/overflow-positioning.html
compositing/overflow/overflow-scroll.html
compositing/overflow/parent-overflow.html
compositing/overflow/scroll-ancestor-update.html
compositing/overflow/scrollbar-painting.html
compositing/plugins/composited-plugin.html
compositing/reflections/animation-inside-reflection.html
compositing/reflections/compositing-change-inside-reflection.html
compositing/reflections/deeply-nested-reflections.html
compositing/reflections/load-video-in-reflection.html
compositing/reflections/masked-reflection-on-composited.html
compositing/reflections/nested-reflection-anchor-point.html
compositing/reflections/nested-reflection-animated.html
compositing/reflections/nested-reflection-mask-change.html
compositing/reflections/nested-reflection-on-overflow.html
compositing/reflections/nested-reflection-opacity.html
compositing/reflections/nested-reflection-size-change.html
compositing/reflections/nested-reflection-transformed2.html
compositing/reflections/nested-reflection-transformed.html
compositing/reflections/nested-reflection-transition.html
compositing/reflections/nested-reflection.html
compositing/reflections/reflection-in-composited.html
compositing/reflections/reflection-on-composited.html
compositing/reflections/reflection-opacity.html
compositing/reflections/reflection-ordering.html
compositing/reflections/reflection-positioning2.html
compositing/reflections/reflection-positioning.html
compositing/reflections/simple-composited-reflections.html
compositing/reflections/transform-inside-reflection.html
compositing/repaint/become-overlay-composited-layer.html
compositing/repaint/composited-document-element.html
compositing/repaint/content-into-overflow.html
compositing/repaint/layer-repaint-rects.html
compositing/repaint/layer-repaint.html
compositing/repaint/opacity-between-absolute2.html
compositing/repaint/opacity-between-absolute.html
compositing/repaint/overflow-into-content.html
compositing/shadows/shadow-drawing.html
compositing/transitions/scale-transition-no-start.html
compositing/transitions/singular-scale-transition.html
compositing/video/video-background-color.html

It make the next test timeout
------------------------------
compositing/scroll-painted-composited-content.html

crashing tests
---------------
compositing/iframes/become-composited-nested-iframes.html
compositing/iframes/iframe-size-from-zero.html
compositing/iframes/invisible-nested-iframe-show.html
compositing/iframes/layout-on-compositing-change.html
compositing/iframes/overlapped-nested-iframes.html
Comment 7 Kenneth Rohde Christiansen 2011-05-12 01:42:43 PDT
Comment on attachment 92730 [details]
Patch

shouldn't you unskip some tests? I assume this is tested with all tests that were failing
Comment 8 Young Han Lee 2011-05-12 02:04:24 PDT
(In reply to comment #7)
> (From update of attachment 92730 [details])
> shouldn't you unskip some tests? I assume this is tested with all tests that were failing

As ossy said in the above comment, we can't unskip compositing tests before texmap becomes default build option.

Thanks for reviewing :)
Comment 9 Csaba Osztrogonác 2011-05-12 02:08:12 PDT
Comment on attachment 92730 [details]
Patch

Let's go ahead, cq+.
Comment 10 WebKit Commit Bot 2011-05-12 04:15:52 PDT
Comment on attachment 92730 [details]
Patch

Clearing flags on attachment: 92730

Committed r86329: <http://trac.webkit.org/changeset/86329>
Comment 11 WebKit Commit Bot 2011-05-12 04:15:57 PDT
All reviewed patches have been landed.  Closing bug.