Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(359)

Unified Diff: LayoutTests/compositing/overflow/resources/build-paint-order-lists.js

Issue 244193002: Enable universal accelerated overflow scroll (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Update test expectations for crashing test. Created 6 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: LayoutTests/compositing/overflow/resources/build-paint-order-lists.js
diff --git a/LayoutTests/compositing/overflow/resources/build-paint-order-lists.js b/LayoutTests/compositing/overflow/resources/build-paint-order-lists.js
deleted file mode 100644
index 2734a61af0af0fb95735f6f32f0d74ff800b968e..0000000000000000000000000000000000000000
--- a/LayoutTests/compositing/overflow/resources/build-paint-order-lists.js
+++ /dev/null
@@ -1,118 +0,0 @@
-function getPaintOrder(element)
-{
- var divElementsBeforePromote = [];
- var divElementsAfterPromote = [];
-
- var paintOrderListBeforePromote = window.internals.paintOrderListBeforePromote(element);
- var paintOrderListAfterPromote = window.internals.paintOrderListAfterPromote(element);
-
- for (var i = 0; i < paintOrderListBeforePromote.length; ++i)
- if (paintOrderListBeforePromote[i].nodeName === "DIV")
- divElementsBeforePromote.push(paintOrderListBeforePromote[i]);
-
- for (var i = 0; i < paintOrderListAfterPromote.length; ++i)
- if (paintOrderListAfterPromote[i].nodeName === "DIV")
- divElementsAfterPromote.push(paintOrderListAfterPromote[i]);
-
- return {"beforePromote": divElementsBeforePromote,
- "afterPromote": divElementsAfterPromote};
-}
-
-function comparePaintOrderLists(oldPaintOrder, newPaintOrder)
-{
- if (oldPaintOrder.length !== newPaintOrder.length)
- return false;
-
- for (var i = 0; i < oldPaintOrder.length; i++)
- if (oldPaintOrder[i] !== newPaintOrder[i])
- return false;
-
- return true;
-}
-
-function countOccurrencesOfElementInPaintOrderList(paintOrder, element) {
- var occurrenceCount = 0;
- for (var i = 0; i < paintOrder.length; i++)
- if (paintOrder[i] === element)
- occurrenceCount++;
-
- return occurrenceCount;
-}
-
-function compareStackingOrderWithPaintOrder(stackingOrder, paintOrder)
-{
- if (debugMode) {
- write("paint order:")
- for (var i = 0; i < paintOrder.length; i++)
- write(paintOrder[i].id + " " + paintOrder[i].className + " " + paintOrder[paintOrder.length - i - 1].tagName);
-
- write("stacking order:")
- for (var i = 0; i < stackingOrder.length; i++)
- write(stackingOrder[i].id + " " + stackingOrder[i].className + " " + stackingOrder[i].tagName);
- }
-
- if (stackingOrder.length < paintOrder.length)
- return false;
-
- // We expect the stacking order list to contain more than the paint order
- // list sometimes because after we promote, the container's children won't
- // appear in the stacking context's ancestor's lists anymore (which is
- // expected and correct). They'll still be in the stacking order list.
- // The important part is that the order of the things present in the paint
- // order list is preserved in the stacking order list.
- for (var i = 0, j = 0; i < stackingOrder.length && j < paintOrder.length; i++)
- if (stackingOrder[i] === paintOrder[paintOrder.length - j - 1])
- j++;
-
- if (debugMode)
- write(stackingOrder.length + " " + i + " " + paintOrder.length + " " + j);
-
- return j == paintOrder.length;
-}
-
-function testPaintOrderListPermutation(count) {
- if (!window.internals)
- return;
-
- var container = document.getElementById('container');
-
- window.internals.setNeedsCompositedScrolling(container,
- window.internals.COMPOSITED_SCROLLING_ALWAYS_OFF);
-
- var oldStackingOrder = getStackingOrder(container);
- var oldPaintOrder = getPaintOrder(container);
-
- window.internals.setNeedsCompositedScrolling(container,
- window.internals.COMPOSITED_SCROLLING_ALWAYS_ON);
-
- var newStackingOrder = getStackingOrder(container);
- var newPaintOrder = getPaintOrder(container);
-
- window.internals.setNeedsCompositedScrolling(container,
- window.internals.DO_NOT_FORCE_COMPOSITED_SCROLLING);
- // The getPaintOrder() function should return a pair of paint orders.
- // One before promotion and one after. This pair of lists should remain
- // identical whether the element is actually currently promoted or not,
- // its purpose is to generate hypothetical pre- and post-lists to
- // determine if the element is promotable.
- if (!comparePaintOrderLists(oldPaintOrder, newPaintOrder))
- write("iteration " + count + " FAIL - paint order lists not identical before/after promotion");
-
- if (!compareStackingOrderWithPaintOrder(oldStackingOrder, oldPaintOrder.beforePromote))
- write("iteration " + count + " FAIL - paint order list before promote doesn't match stacking order");
-
- if (!compareStackingOrderWithPaintOrder(newStackingOrder, oldPaintOrder.afterPromote))
- write("iteration " + count + " FAIL - paint order list after promote doesn't match stacking order");
-
- var containerOccurrences = countOccurrencesOfElementInPaintOrderList(oldPaintOrder.beforePromote, container);
- if (containerOccurrences !== 1)
- write("iteration " + count + " FAIL - paint order list before promote contains " + containerOccurrences + " occurrences of container. Should be exactly 1.");
-
- containerOccurrences = countOccurrencesOfElementInPaintOrderList(oldPaintOrder.afterPromote, container);
- if (containerOccurrences !== 1)
- write("iteration " + count + " FAIL - paint order list after promote contains " + containerOccurrences + " occurrences of container. Should be exactly 1.");
-}
-
-function runPaintOrderPermutationSet(permutationSet) {
- runPermutationSet(testPaintOrderListPermutation, permutationSet);
-}

Powered by Google App Engine
This is Rietveld 408576698