diff options
Diffstat (limited to 'testing/web-platform/meta/css/selectors/invalidation')
48 files changed, 2286 insertions, 0 deletions
diff --git a/testing/web-platform/meta/css/selectors/invalidation/attribute-or-elemental-selectors-in-has.html.ini b/testing/web-platform/meta/css/selectors/invalidation/attribute-or-elemental-selectors-in-has.html.ini new file mode 100644 index 0000000000..a192998bc8 --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/attribute-or-elemental-selectors-in-has.html.ini @@ -0,0 +1,39 @@ +[attribute-or-elemental-selectors-in-has.html] + [add .child to #div_child: div#div_subject.color] + expected: FAIL + + [add .descendant to #div_child: div#div_subject.color] + expected: FAIL + + [add .descendant to #div_grandchild: div#div_subject.color] + expected: FAIL + + [set descendant to #div_grandchild[attrname\]: div#div_subject.color] + expected: FAIL + + [change #div_grandchild to #div_descendant: div#div_subject.color] + expected: FAIL + + [add descendant to #div_subject: div#div_subject.color] + expected: FAIL + + [add "div > descendant" to #div_subject: div#div_subject.color] + expected: FAIL + + [add div.child to #div_subject: div#div_subject.color] + expected: FAIL + + [add "div > div.descendant" to #div_subject: div#div_subject.color] + expected: FAIL + + [add div#div_descendant to #div_subject: div#div_subject.color] + expected: FAIL + + [add "div#div_descendant" to #div_subject: div#div_subject.color] + expected: FAIL + + [add div[attrname\] to #div_subject: div#div_subject.color] + expected: FAIL + + [add "div > div[attrname\]" to #div_subject: div#div_subject.color] + expected: FAIL diff --git a/testing/web-platform/meta/css/selectors/invalidation/child-indexed-pseudo-classes-in-has.html.ini b/testing/web-platform/meta/css/selectors/invalidation/child-indexed-pseudo-classes-in-has.html.ini new file mode 100644 index 0000000000..4ff336cd40 --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/child-indexed-pseudo-classes-in-has.html.ini @@ -0,0 +1,81 @@ +[child-indexed-pseudo-classes-in-has.html] + [Prepend #div1.green: #only_child] + expected: FAIL + + [Prepend #div1.green: #first_child] + expected: FAIL + + [Prepend #div1.green: #last_child] + expected: FAIL + + [Prepend #div1.green: #nth_child_3n_1] + expected: FAIL + + [Prepend #div2.yellow: #first_child] + expected: FAIL + + [Prepend #div2.yellow: #last_child] + expected: FAIL + + [Prepend #div2.yellow: #nth_child_3n_1] + expected: FAIL + + [Prepend #div2.yellow: #nth_child_3n_2] + expected: FAIL + + [Prepend #div3.orange: #first_child] + expected: FAIL + + [Prepend #div3.orange: #last_child] + expected: FAIL + + [Prepend #div3.orange: #nth_child_3n_1] + expected: FAIL + + [Prepend #div3.orange: #nth_child_3n_2] + expected: FAIL + + [Prepend #div3.orange: #nth_child_3n] + expected: FAIL + + [Prepend #div4: #last_child] + expected: FAIL + + [Prepend #div4: #nth_child_3n_1] + expected: FAIL + + [Prepend #div4: #nth_child_3n_2] + expected: FAIL + + [Prepend #div4: #nth_child_3n] + expected: FAIL + + [Prepend #div5: #last_child] + expected: FAIL + + [Prepend #div5: #nth_child_3n_1] + expected: FAIL + + [Prepend #div5: #nth_child_3n_2] + expected: FAIL + + [Prepend #div5: #nth_child_3n] + expected: FAIL + + [Remove #div1: #last_child] + expected: FAIL + + [Remove #div1: #nth_child_3n_1] + expected: FAIL + + [Remove #div1: #nth_child_3n] + expected: FAIL + + [Remove #div2: #last_child] + expected: FAIL + + [Remove #div2: #nth_child_3n] + expected: FAIL + + [Remove #div4: #only_child] + expected: FAIL diff --git a/testing/web-platform/meta/css/selectors/invalidation/defined.html.ini b/testing/web-platform/meta/css/selectors/invalidation/defined.html.ini new file mode 100644 index 0000000000..710b7702b5 --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/defined.html.ini @@ -0,0 +1,3 @@ +[defined.html] + expected: + if (os == "android") and fission: [OK, TIMEOUT] diff --git a/testing/web-platform/meta/css/selectors/invalidation/dir-pseudo-class-in-has.html.ini b/testing/web-platform/meta/css/selectors/invalidation/dir-pseudo-class-in-has.html.ini new file mode 100644 index 0000000000..94a862a94e --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/dir-pseudo-class-in-has.html.ini @@ -0,0 +1,2 @@ +[dir-pseudo-class-in-has.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/selectors/invalidation/empty-pseudo-in-has.html.ini b/testing/web-platform/meta/css/selectors/invalidation/empty-pseudo-in-has.html.ini new file mode 100644 index 0000000000..dd67b0e45f --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/empty-pseudo-in-has.html.ini @@ -0,0 +1,8 @@ +[empty-pseudo-in-has.html] + expected: + if (os == "android") and fission: [OK, TIMEOUT] + [Insert div#child to #subject] + expected: FAIL + + [Insert div to div.#child] + expected: FAIL diff --git a/testing/web-platform/meta/css/selectors/invalidation/enabled-disabled.html.ini b/testing/web-platform/meta/css/selectors/invalidation/enabled-disabled.html.ini new file mode 100644 index 0000000000..b0d268d36f --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/enabled-disabled.html.ini @@ -0,0 +1,3 @@ +[enabled-disabled.html] + expected: + if (os == "android") and fission: [OK, TIMEOUT] diff --git a/testing/web-platform/meta/css/selectors/invalidation/first-child-last-child.html.ini b/testing/web-platform/meta/css/selectors/invalidation/first-child-last-child.html.ini new file mode 100644 index 0000000000..761439c092 --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/first-child-last-child.html.ini @@ -0,0 +1,3 @@ +[first-child-last-child.html] + expected: + if (os == "android") and fission: [OK, TIMEOUT] diff --git a/testing/web-platform/meta/css/selectors/invalidation/fullscreen-pseudo-class-in-has.html.ini b/testing/web-platform/meta/css/selectors/invalidation/fullscreen-pseudo-class-in-has.html.ini new file mode 100644 index 0000000000..94d29a6f79 --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/fullscreen-pseudo-class-in-has.html.ini @@ -0,0 +1,7 @@ +[fullscreen-pseudo-class-in-has.html] + expected: ERROR + [:fullscreen pseudo-class invalidation with requestFullscreen + exitFullscreen] + expected: FAIL + + [:fullscreen pseudo-class invalidation with requestFullscreen + remove] + expected: TIMEOUT diff --git a/testing/web-platform/meta/css/selectors/invalidation/has-complexity.html.ini b/testing/web-platform/meta/css/selectors/invalidation/has-complexity.html.ini new file mode 100644 index 0000000000..1683123c1f --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/has-complexity.html.ini @@ -0,0 +1,20 @@ +[has-complexity.html] + expected: + if (os == "linux") and not debug and fission and (processor == "x86_64"): [OK, TIMEOUT] + [After appending 25000 elements. This should not time out.] + expected: FAIL + + [After appending another 25000 elements. This should not time out.] + expected: FAIL + + [After appending div with 25000 elements. This should not time out.] + expected: FAIL + + [After removing div with 25000 elements. This should not time out.] + expected: FAIL + + [After removing 25000 elements one-by-one. This should not time out.] + expected: FAIL + + [After removing the remaining elements. This should not time out.] + expected: FAIL diff --git a/testing/web-platform/meta/css/selectors/invalidation/has-in-adjacent-position.html.ini b/testing/web-platform/meta/css/selectors/invalidation/has-in-adjacent-position.html.ini new file mode 100644 index 0000000000..c9741d4a5d --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/has-in-adjacent-position.html.ini @@ -0,0 +1,294 @@ +[has-in-adjacent-position.html] + [add .test to previous_sibling_child] + expected: FAIL + + [add .test to previous_sibling_descendant] + expected: FAIL + + [add .test to subject] + expected: FAIL + + [add .test to next_sibling] + expected: FAIL + + [add .test to next_sibling_child] + expected: FAIL + + [add .test to next_sibling_descendant] + expected: FAIL + + [insert element div.test before previous_sibling_child] + expected: FAIL + + [insert element div.test before previous_sibling_descendant] + expected: FAIL + + [insert element div.test before next_sibling] + expected: FAIL + + [insert element div.test before next_sibling_child] + expected: FAIL + + [insert element div.test before next_sibling_descendant] + expected: FAIL + + [insert element div.test after previous_sibling_child] + expected: FAIL + + [insert element div.test after previous_sibling_descendant] + expected: FAIL + + [insert element div.test after subject] + expected: FAIL + + [insert element div.test after next_sibling] + expected: FAIL + + [insert element div.test after next_sibling_child] + expected: FAIL + + [insert element div.test after next_sibling_descendant] + expected: FAIL + + [insert tree div>div.test before previous_sibling_child] + expected: FAIL + + [insert tree div>div.test before previous_sibling_descendant] + expected: FAIL + + [insert tree div>div.test before next_sibling] + expected: FAIL + + [insert tree div>div.test before next_sibling_child] + expected: FAIL + + [insert tree div>div.test before next_sibling_descendant] + expected: FAIL + + [insert tree div>div.test after previous_sibling_child] + expected: FAIL + + [insert tree div>div.test after previous_sibling_descendant] + expected: FAIL + + [insert tree div>div.test after subject] + expected: FAIL + + [insert tree div>div.test after next_sibling] + expected: FAIL + + [insert tree div>div.test after next_sibling_child] + expected: FAIL + + [insert tree div>div.test after next_sibling_descendant] + expected: FAIL + + [add the class 'test' again to the element inserted before previous_sibling_child] + expected: FAIL + + [add the class 'test' to the element inserted again before previous_sibling_child] + expected: FAIL + + [insert element div[test_attr\] before previous_sibling_child] + expected: FAIL + + [add the class 'test' again to the element inserted before previous_sibling_descendant] + expected: FAIL + + [add the class 'test' to the element inserted again before previous_sibling_descendant] + expected: FAIL + + [insert element div[test_attr\] before previous_sibling_descendant] + expected: FAIL + + [add the class 'test' again to the element inserted before next_sibling] + expected: FAIL + + [add the class 'test' to the element inserted again before next_sibling] + expected: FAIL + + [insert element div[test_attr\] before next_sibling] + expected: FAIL + + [add the class 'test' again to the element inserted before next_sibling_child] + expected: FAIL + + [add the class 'test' to the element inserted again before next_sibling_child] + expected: FAIL + + [insert element div[test_attr\] before next_sibling_child] + expected: FAIL + + [add the class 'test' again to the element inserted before next_sibling_descendant] + expected: FAIL + + [add the class 'test' to the element inserted again before next_sibling_descendant] + expected: FAIL + + [insert element div[test_attr\] before next_sibling_descendant] + expected: FAIL + + [add the class 'test' again to the element inserted after previous_sibling_child] + expected: FAIL + + [add the class 'test' to the element inserted again after previous_sibling_child] + expected: FAIL + + [insert element div[test_attr\] after previous_sibling_child] + expected: FAIL + + [add the class 'test' again to the element inserted after previous_sibling_descendant] + expected: FAIL + + [add the class 'test' to the element inserted again after previous_sibling_descendant] + expected: FAIL + + [insert element div[test_attr\] after previous_sibling_descendant] + expected: FAIL + + [add the class 'test' again to the element inserted after subject] + expected: FAIL + + [add the class 'test' to the element inserted again after subject] + expected: FAIL + + [insert element div[test_attr\] after subject] + expected: FAIL + + [add the class 'test' again to the element inserted after next_sibling] + expected: FAIL + + [add the class 'test' to the element inserted again after next_sibling] + expected: FAIL + + [insert element div[test_attr\] after next_sibling] + expected: FAIL + + [add the class 'test' again to the element inserted after next_sibling_child] + expected: FAIL + + [add the class 'test' to the element inserted again after next_sibling_child] + expected: FAIL + + [insert element div[test_attr\] after next_sibling_child] + expected: FAIL + + [add the class 'test' again to the element inserted after next_sibling_descendant] + expected: FAIL + + [add the class 'test' to the element inserted again after next_sibling_descendant] + expected: FAIL + + [insert element div[test_attr\] after next_sibling_descendant] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted before previous_sibling_child] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again before previous_sibling_child] + expected: FAIL + + [insert element div>div[test_attr\] before previous_sibling_child] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted before previous_sibling_descendant] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again before previous_sibling_descendant] + expected: FAIL + + [insert element div>div[test_attr\] before previous_sibling_descendant] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again before subject] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted before next_sibling] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again before next_sibling] + expected: FAIL + + [insert element div>div[test_attr\] before next_sibling] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted before next_sibling_child] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again before next_sibling_child] + expected: FAIL + + [insert element div>div[test_attr\] before next_sibling_child] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted before next_sibling_descendant] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again before next_sibling_descendant] + expected: FAIL + + [insert element div>div[test_attr\] before next_sibling_descendant] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again after previous_sibling] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted after previous_sibling_child] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again after previous_sibling_child] + expected: FAIL + + [insert element div>div[test_attr\] after previous_sibling_child] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted after previous_sibling_descendant] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again after previous_sibling_descendant] + expected: FAIL + + [insert element div>div[test_attr\] after previous_sibling_descendant] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted after subject] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again after subject] + expected: FAIL + + [insert element div>div[test_attr\] after subject] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted after next_sibling] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again after next_sibling] + expected: FAIL + + [insert element div>div[test_attr\] after next_sibling] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted after next_sibling_child] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again after next_sibling_child] + expected: FAIL + + [insert element div>div[test_attr\] after next_sibling_child] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted after next_sibling_descendant] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again after next_sibling_descendant] + expected: FAIL + + [insert element div>div[test_attr\] after next_sibling_descendant] + expected: FAIL + + [remove the class 'test' from the element in the tree inserted before subject] + expected: FAIL + + [remove the class 'test' from the element in the tree inserted after previous_sibling] + expected: FAIL diff --git a/testing/web-platform/meta/css/selectors/invalidation/has-in-ancestor-position.html.ini b/testing/web-platform/meta/css/selectors/invalidation/has-in-ancestor-position.html.ini new file mode 100644 index 0000000000..4b5179f883 --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/has-in-ancestor-position.html.ini @@ -0,0 +1,383 @@ +[has-in-ancestor-position.html] + expected: + if (os == "android") and fission: [OK, TIMEOUT] + [add .test to subject_parent] + expected: FAIL + + [add .test to subject] + expected: FAIL + + [add .test to subject_child] + expected: FAIL + + [add .test to subject_descendant] + expected: FAIL + + [add .test to next_sibling] + expected: FAIL + + [add .test to next_sibling_child] + expected: FAIL + + [add .test to next_sibling_descendant] + expected: FAIL + + [insert element div.test before subject_parent] + expected: FAIL + + [insert element div.test before subject] + expected: FAIL + + [insert element div.test before subject_child] + expected: FAIL + + [insert element div.test before subject_descendant] + expected: FAIL + + [insert element div.test before next_sibling] + expected: FAIL + + [insert element div.test before next_sibling_child] + expected: FAIL + + [insert element div.test before next_sibling_descendant] + expected: FAIL + + [insert element div.test after subject_ancestor] + expected: FAIL + + [insert element div.test after subject_parent] + expected: FAIL + + [insert element div.test after subject] + expected: FAIL + + [insert element div.test after subject_child] + expected: FAIL + + [insert element div.test after subject_descendant] + expected: FAIL + + [insert element div.test after next_sibling] + expected: FAIL + + [insert element div.test after next_sibling_child] + expected: FAIL + + [insert element div.test after next_sibling_descendant] + expected: FAIL + + [insert tree div>div.test before subject_parent] + expected: FAIL + + [insert tree div>div.test before subject] + expected: FAIL + + [insert tree div>div.test before subject_child] + expected: FAIL + + [insert tree div>div.test before subject_descendant] + expected: FAIL + + [insert tree div>div.test before next_sibling] + expected: FAIL + + [insert tree div>div.test before next_sibling_child] + expected: FAIL + + [insert tree div>div.test before next_sibling_descendant] + expected: FAIL + + [insert tree div>div.test after subject_ancestor] + expected: FAIL + + [insert tree div>div.test after subject_parent] + expected: FAIL + + [insert tree div>div.test after subject] + expected: FAIL + + [insert tree div>div.test after subject_child] + expected: FAIL + + [insert tree div>div.test after subject_descendant] + expected: FAIL + + [insert tree div>div.test after next_sibling] + expected: FAIL + + [insert tree div>div.test after next_sibling_child] + expected: FAIL + + [insert tree div>div.test after next_sibling_descendant] + expected: FAIL + + [add the class 'test' again to the element inserted before subject_parent] + expected: FAIL + + [add the class 'test' to the element inserted again before subject_parent] + expected: FAIL + + [insert element div[test_attr\] before subject_parent] + expected: FAIL + + [add the class 'test' again to the element inserted before subject] + expected: FAIL + + [add the class 'test' to the element inserted again before subject] + expected: FAIL + + [insert element div[test_attr\] before subject] + expected: FAIL + + [add the class 'test' again to the element inserted before subject_child] + expected: FAIL + + [add the class 'test' to the element inserted again before subject_child] + expected: FAIL + + [insert element div[test_attr\] before subject_child] + expected: FAIL + + [add the class 'test' again to the element inserted before subject_descendant] + expected: FAIL + + [add the class 'test' to the element inserted again before subject_descendant] + expected: FAIL + + [insert element div[test_attr\] before subject_descendant] + expected: FAIL + + [add the class 'test' again to the element inserted before next_sibling] + expected: FAIL + + [add the class 'test' to the element inserted again before next_sibling] + expected: FAIL + + [insert element div[test_attr\] before next_sibling] + expected: FAIL + + [add the class 'test' again to the element inserted before next_sibling_child] + expected: FAIL + + [add the class 'test' to the element inserted again before next_sibling_child] + expected: FAIL + + [insert element div[test_attr\] before next_sibling_child] + expected: FAIL + + [add the class 'test' again to the element inserted before next_sibling_descendant] + expected: FAIL + + [add the class 'test' to the element inserted again before next_sibling_descendant] + expected: FAIL + + [insert element div[test_attr\] before next_sibling_descendant] + expected: FAIL + + [add the class 'test' again to the element inserted after subject_ancestor] + expected: FAIL + + [add the class 'test' to the element inserted again after subject_ancestor] + expected: FAIL + + [insert element div[test_attr\] after subject_ancestor] + expected: FAIL + + [add the class 'test' again to the element inserted after subject_parent] + expected: FAIL + + [add the class 'test' to the element inserted again after subject_parent] + expected: FAIL + + [insert element div[test_attr\] after subject_parent] + expected: FAIL + + [add the class 'test' again to the element inserted after subject] + expected: FAIL + + [add the class 'test' to the element inserted again after subject] + expected: FAIL + + [insert element div[test_attr\] after subject] + expected: FAIL + + [add the class 'test' again to the element inserted after subject_child] + expected: FAIL + + [add the class 'test' to the element inserted again after subject_child] + expected: FAIL + + [insert element div[test_attr\] after subject_child] + expected: FAIL + + [add the class 'test' again to the element inserted after subject_descendant] + expected: FAIL + + [add the class 'test' to the element inserted again after subject_descendant] + expected: FAIL + + [insert element div[test_attr\] after subject_descendant] + expected: FAIL + + [add the class 'test' again to the element inserted after next_sibling] + expected: FAIL + + [add the class 'test' to the element inserted again after next_sibling] + expected: FAIL + + [insert element div[test_attr\] after next_sibling] + expected: FAIL + + [add the class 'test' again to the element inserted after next_sibling_child] + expected: FAIL + + [add the class 'test' to the element inserted again after next_sibling_child] + expected: FAIL + + [insert element div[test_attr\] after next_sibling_child] + expected: FAIL + + [add the class 'test' again to the element inserted after next_sibling_descendant] + expected: FAIL + + [add the class 'test' to the element inserted again after next_sibling_descendant] + expected: FAIL + + [insert element div[test_attr\] after next_sibling_descendant] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted before subject_parent] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again before subject_parent] + expected: FAIL + + [insert element div>div[test_attr\] before subject_parent] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted before subject] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again before subject] + expected: FAIL + + [insert element div>div[test_attr\] before subject] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted before subject_child] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again before subject_child] + expected: FAIL + + [insert element div>div[test_attr\] before subject_child] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted before subject_descendant] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again before subject_descendant] + expected: FAIL + + [insert element div>div[test_attr\] before subject_descendant] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted before next_sibling] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again before next_sibling] + expected: FAIL + + [insert element div>div[test_attr\] before next_sibling] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted before next_sibling_child] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again before next_sibling_child] + expected: FAIL + + [insert element div>div[test_attr\] before next_sibling_child] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted before next_sibling_descendant] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again before next_sibling_descendant] + expected: FAIL + + [insert element div>div[test_attr\] before next_sibling_descendant] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted after subject_ancestor] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again after subject_ancestor] + expected: FAIL + + [insert element div>div[test_attr\] after subject_ancestor] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted after subject_parent] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again after subject_parent] + expected: FAIL + + [insert element div>div[test_attr\] after subject_parent] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted after subject] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again after subject] + expected: FAIL + + [insert element div>div[test_attr\] after subject] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted after subject_child] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again after subject_child] + expected: FAIL + + [insert element div>div[test_attr\] after subject_child] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted after subject_descendant] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again after subject_descendant] + expected: FAIL + + [insert element div>div[test_attr\] after subject_descendant] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted after next_sibling] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again after next_sibling] + expected: FAIL + + [insert element div>div[test_attr\] after next_sibling] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted after next_sibling_child] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again after next_sibling_child] + expected: FAIL + + [insert element div>div[test_attr\] after next_sibling_child] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted after next_sibling_descendant] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again after next_sibling_descendant] + expected: FAIL + + [insert element div>div[test_attr\] after next_sibling_descendant] + expected: FAIL diff --git a/testing/web-platform/meta/css/selectors/invalidation/has-in-parent-position.html.ini b/testing/web-platform/meta/css/selectors/invalidation/has-in-parent-position.html.ini new file mode 100644 index 0000000000..964a5aff89 --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/has-in-parent-position.html.ini @@ -0,0 +1,179 @@ +[has-in-parent-position.html] + expected: + if (os == "android") and fission: [OK, TIMEOUT] + [add .test to subject] + expected: FAIL + + [add .test to subject_child] + expected: FAIL + + [add .test to subject_descendant] + expected: FAIL + + [insert element div.test before subject] + expected: FAIL + + [insert element div.test before subject_child] + expected: FAIL + + [insert element div.test before subject_descendant] + expected: FAIL + + [insert element div.test after subject_parent] + expected: FAIL + + [insert element div.test after subject] + expected: FAIL + + [insert element div.test after subject_child] + expected: FAIL + + [insert element div.test after subject_descendant] + expected: FAIL + + [insert tree div>div.test before subject] + expected: FAIL + + [insert tree div>div.test before subject_child] + expected: FAIL + + [insert tree div>div.test before subject_descendant] + expected: FAIL + + [insert tree div>div.test after subject_parent] + expected: FAIL + + [insert tree div>div.test after subject] + expected: FAIL + + [insert tree div>div.test after subject_child] + expected: FAIL + + [insert tree div>div.test after subject_descendant] + expected: FAIL + + [add the class 'test' again to the element inserted before subject] + expected: FAIL + + [add the class 'test' to the element inserted again before subject] + expected: FAIL + + [insert element div[test_attr\] before subject] + expected: FAIL + + [add the class 'test' again to the element inserted before subject_child] + expected: FAIL + + [add the class 'test' to the element inserted again before subject_child] + expected: FAIL + + [insert element div[test_attr\] before subject_child] + expected: FAIL + + [add the class 'test' again to the element inserted before subject_descendant] + expected: FAIL + + [add the class 'test' to the element inserted again before subject_descendant] + expected: FAIL + + [insert element div[test_attr\] before subject_descendant] + expected: FAIL + + [add the class 'test' again to the element inserted after subject_parent] + expected: FAIL + + [add the class 'test' to the element inserted again after subject_parent] + expected: FAIL + + [insert element div[test_attr\] after subject_parent] + expected: FAIL + + [add the class 'test' again to the element inserted after subject] + expected: FAIL + + [add the class 'test' to the element inserted again after subject] + expected: FAIL + + [insert element div[test_attr\] after subject] + expected: FAIL + + [add the class 'test' again to the element inserted after subject_child] + expected: FAIL + + [add the class 'test' to the element inserted again after subject_child] + expected: FAIL + + [insert element div[test_attr\] after subject_child] + expected: FAIL + + [add the class 'test' again to the element inserted after subject_descendant] + expected: FAIL + + [add the class 'test' to the element inserted again after subject_descendant] + expected: FAIL + + [insert element div[test_attr\] after subject_descendant] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted before subject] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again before subject] + expected: FAIL + + [insert element div>div[test_attr\] before subject] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted before subject_child] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again before subject_child] + expected: FAIL + + [insert element div>div[test_attr\] before subject_child] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted before subject_descendant] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again before subject_descendant] + expected: FAIL + + [insert element div>div[test_attr\] before subject_descendant] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted after subject_parent] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again after subject_parent] + expected: FAIL + + [insert element div>div[test_attr\] after subject_parent] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted after subject] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again after subject] + expected: FAIL + + [insert element div>div[test_attr\] after subject] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted after subject_child] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again after subject_child] + expected: FAIL + + [insert element div>div[test_attr\] after subject_child] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted after subject_descendant] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again after subject_descendant] + expected: FAIL + + [insert element div>div[test_attr\] after subject_descendant] + expected: FAIL diff --git a/testing/web-platform/meta/css/selectors/invalidation/has-in-sibling-position.html.ini b/testing/web-platform/meta/css/selectors/invalidation/has-in-sibling-position.html.ini new file mode 100644 index 0000000000..eafdf664f0 --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/has-in-sibling-position.html.ini @@ -0,0 +1,312 @@ +[has-in-sibling-position.html] + [add .test to previous_sibling_child] + expected: FAIL + + [add .test to previous_sibling_descendant] + expected: FAIL + + [add .test to subject] + expected: FAIL + + [add .test to next_sibling] + expected: FAIL + + [add .test to next_sibling_child] + expected: FAIL + + [add .test to next_sibling_descendant] + expected: FAIL + + [insert element div.test before previous_sibling_child] + expected: FAIL + + [insert element div.test before previous_sibling_descendant] + expected: FAIL + + [insert element div.test before next_sibling] + expected: FAIL + + [insert element div.test before next_sibling_child] + expected: FAIL + + [insert element div.test before next_sibling_descendant] + expected: FAIL + + [insert element div.test after previous_sibling_child] + expected: FAIL + + [insert element div.test after previous_sibling_descendant] + expected: FAIL + + [insert element div.test after subject] + expected: FAIL + + [insert element div.test after next_sibling] + expected: FAIL + + [insert element div.test after next_sibling_child] + expected: FAIL + + [insert element div.test after next_sibling_descendant] + expected: FAIL + + [insert tree div>div.test before previous_sibling_child] + expected: FAIL + + [insert tree div>div.test before previous_sibling_descendant] + expected: FAIL + + [insert tree div>div.test before next_sibling] + expected: FAIL + + [insert tree div>div.test before next_sibling_child] + expected: FAIL + + [insert tree div>div.test before next_sibling_descendant] + expected: FAIL + + [insert tree div>div.test after previous_sibling_child] + expected: FAIL + + [insert tree div>div.test after previous_sibling_descendant] + expected: FAIL + + [insert tree div>div.test after subject] + expected: FAIL + + [insert tree div>div.test after next_sibling] + expected: FAIL + + [insert tree div>div.test after next_sibling_child] + expected: FAIL + + [insert tree div>div.test after next_sibling_descendant] + expected: FAIL + + [add the class 'test' again to the element inserted before previous_sibling_child] + expected: FAIL + + [add the class 'test' to the element inserted again before previous_sibling_child] + expected: FAIL + + [insert element div[test_attr\] before previous_sibling_child] + expected: FAIL + + [add the class 'test' again to the element inserted before previous_sibling_descendant] + expected: FAIL + + [add the class 'test' to the element inserted again before previous_sibling_descendant] + expected: FAIL + + [insert element div[test_attr\] before previous_sibling_descendant] + expected: FAIL + + [remove the class 'test' from the element inserted before subject] + expected: FAIL + + [add the class 'test' to the element inserted again before subject] + expected: FAIL + + [add the class 'test' again to the element inserted before next_sibling] + expected: FAIL + + [add the class 'test' to the element inserted again before next_sibling] + expected: FAIL + + [insert element div[test_attr\] before next_sibling] + expected: FAIL + + [add the class 'test' again to the element inserted before next_sibling_child] + expected: FAIL + + [add the class 'test' to the element inserted again before next_sibling_child] + expected: FAIL + + [insert element div[test_attr\] before next_sibling_child] + expected: FAIL + + [add the class 'test' again to the element inserted before next_sibling_descendant] + expected: FAIL + + [add the class 'test' to the element inserted again before next_sibling_descendant] + expected: FAIL + + [insert element div[test_attr\] before next_sibling_descendant] + expected: FAIL + + [add the class 'test' to the element inserted again after previous_sibling] + expected: FAIL + + [add the class 'test' again to the element inserted after previous_sibling_child] + expected: FAIL + + [add the class 'test' to the element inserted again after previous_sibling_child] + expected: FAIL + + [insert element div[test_attr\] after previous_sibling_child] + expected: FAIL + + [add the class 'test' again to the element inserted after previous_sibling_descendant] + expected: FAIL + + [add the class 'test' to the element inserted again after previous_sibling_descendant] + expected: FAIL + + [insert element div[test_attr\] after previous_sibling_descendant] + expected: FAIL + + [add the class 'test' again to the element inserted after subject] + expected: FAIL + + [add the class 'test' to the element inserted again after subject] + expected: FAIL + + [insert element div[test_attr\] after subject] + expected: FAIL + + [add the class 'test' again to the element inserted after next_sibling] + expected: FAIL + + [add the class 'test' to the element inserted again after next_sibling] + expected: FAIL + + [insert element div[test_attr\] after next_sibling] + expected: FAIL + + [add the class 'test' again to the element inserted after next_sibling_child] + expected: FAIL + + [add the class 'test' to the element inserted again after next_sibling_child] + expected: FAIL + + [insert element div[test_attr\] after next_sibling_child] + expected: FAIL + + [add the class 'test' again to the element inserted after next_sibling_descendant] + expected: FAIL + + [add the class 'test' to the element inserted again after next_sibling_descendant] + expected: FAIL + + [insert element div[test_attr\] after next_sibling_descendant] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again before previous_sibling] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted before previous_sibling_child] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again before previous_sibling_child] + expected: FAIL + + [insert element div>div[test_attr\] before previous_sibling_child] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted before previous_sibling_descendant] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again before previous_sibling_descendant] + expected: FAIL + + [insert element div>div[test_attr\] before previous_sibling_descendant] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again before subject] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted before next_sibling] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again before next_sibling] + expected: FAIL + + [insert element div>div[test_attr\] before next_sibling] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted before next_sibling_child] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again before next_sibling_child] + expected: FAIL + + [insert element div>div[test_attr\] before next_sibling_child] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted before next_sibling_descendant] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again before next_sibling_descendant] + expected: FAIL + + [insert element div>div[test_attr\] before next_sibling_descendant] + expected: FAIL + + [remove the class 'test' from the element inserted after previous_sibling] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again after previous_sibling] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted after previous_sibling_child] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again after previous_sibling_child] + expected: FAIL + + [insert element div>div[test_attr\] after previous_sibling_child] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted after previous_sibling_descendant] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again after previous_sibling_descendant] + expected: FAIL + + [insert element div>div[test_attr\] after previous_sibling_descendant] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted after subject] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again after subject] + expected: FAIL + + [insert element div>div[test_attr\] after subject] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted after next_sibling] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again after next_sibling] + expected: FAIL + + [insert element div>div[test_attr\] after next_sibling] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted after next_sibling_child] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again after next_sibling_child] + expected: FAIL + + [insert element div>div[test_attr\] after next_sibling_child] + expected: FAIL + + [add the class 'test' again to the element in the tree inserted after next_sibling_descendant] + expected: FAIL + + [add the class 'test' to the element in the tree inserted again after next_sibling_descendant] + expected: FAIL + + [insert element div>div[test_attr\] after next_sibling_descendant] + expected: FAIL + + [remove the class 'test' from the element in the tree inserted before previous_sibling] + expected: FAIL + + [remove the class 'test' from the element in the tree inserted before subject] + expected: FAIL + + [remove the class 'test' from the element in the tree inserted after previous_sibling] + expected: FAIL diff --git a/testing/web-platform/meta/css/selectors/invalidation/has-invalidation-after-removing-non-first-element.html.ini b/testing/web-platform/meta/css/selectors/invalidation/has-invalidation-after-removing-non-first-element.html.ini new file mode 100644 index 0000000000..f758a44ad4 --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/has-invalidation-after-removing-non-first-element.html.ini @@ -0,0 +1,5 @@ +[has-invalidation-after-removing-non-first-element.html] + expected: + if (os == "android") and fission: [OK, TIMEOUT] + [remove descendant: div#subject.color] + expected: FAIL diff --git a/testing/web-platform/meta/css/selectors/invalidation/has-invalidation-for-wiping-an-element.html.ini b/testing/web-platform/meta/css/selectors/invalidation/has-invalidation-for-wiping-an-element.html.ini new file mode 100644 index 0000000000..45884afd2a --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/has-invalidation-for-wiping-an-element.html.ini @@ -0,0 +1,6 @@ +[has-invalidation-for-wiping-an-element.html] + [color after inserting text and div > .descendant: div#subject.color] + expected: FAIL + + [color after inserting text and #child > .descendant: div#subject.color] + expected: FAIL diff --git a/testing/web-platform/meta/css/selectors/invalidation/has-sibling.html.ini b/testing/web-platform/meta/css/selectors/invalidation/has-sibling.html.ini new file mode 100644 index 0000000000..b3e3445300 --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/has-sibling.html.ini @@ -0,0 +1,107 @@ +[has-sibling.html] + expected: + if (os == "android") and fission: [OK, TIMEOUT] + [add .test to first_sibling] + expected: FAIL + + [add .test to second_sibling] + expected: FAIL + + [add .test to third_sibling] + expected: FAIL + + [add .test to first_sibling_child] + expected: FAIL + + [add .test to first_sibling_descendant] + expected: FAIL + + [add .test to third_sibling_child] + expected: FAIL + + [add .test to third_sibling_descendant] + expected: FAIL + + [insert element div.test before first_sibling] + expected: FAIL + + [insert element div.test before second_sibling] + expected: FAIL + + [insert element div.test before third_sibling] + expected: FAIL + + [insert element div.test before first_sibling_child] + expected: FAIL + + [insert element div.test before first_sibling_descendant] + expected: FAIL + + [insert element div.test before third_sibling_child] + expected: FAIL + + [insert element div.test before third_sibling_descendant] + expected: FAIL + + [insert element div.test after first_sibling] + expected: FAIL + + [insert element div.test after second_sibling] + expected: FAIL + + [insert element div.test after third_sibling] + expected: FAIL + + [insert element div.test after first_sibling_child] + expected: FAIL + + [insert element div.test after first_sibling_descendant] + expected: FAIL + + [insert element div.test after third_sibling_child] + expected: FAIL + + [insert element div.test after third_sibling_descendant] + expected: FAIL + + [insert tree div>div.test before first_sibling] + expected: FAIL + + [insert tree div>div.test before second_sibling] + expected: FAIL + + [insert tree div>div.test before third_sibling] + expected: FAIL + + [insert tree div>div.test before first_sibling_child] + expected: FAIL + + [insert tree div>div.test before first_sibling_descendant] + expected: FAIL + + [insert tree div>div.test before third_sibling_child] + expected: FAIL + + [insert tree div>div.test before third_sibling_descendant] + expected: FAIL + + [insert tree div>div.test after first_sibling] + expected: FAIL + + [insert tree div>div.test after second_sibling] + expected: FAIL + + [insert tree div>div.test after third_sibling] + expected: FAIL + + [insert tree div>div.test after first_sibling_child] + expected: FAIL + + [insert tree div>div.test after first_sibling_descendant] + expected: FAIL + + [insert tree div>div.test after third_sibling_child] + expected: FAIL + + [insert tree div>div.test after third_sibling_descendant] + expected: FAIL diff --git a/testing/web-platform/meta/css/selectors/invalidation/has-with-not.html.ini b/testing/web-platform/meta/css/selectors/invalidation/has-with-not.html.ini new file mode 100644 index 0000000000..b7d643a644 --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/has-with-not.html.ini @@ -0,0 +1,32 @@ +[has-with-not.html] + expected: + if (os == "android") and fission: [OK, TIMEOUT] + [remove .test to subject_child] + expected: FAIL + + [remove .test to subject_descendant] + expected: FAIL + + [insert element div before subject_child] + expected: FAIL + + [insert element div before subject_descendant] + expected: FAIL + + [insert element div after subject_child] + expected: FAIL + + [insert element div after subject_descendant] + expected: FAIL + + [insert tree div>div before subject_child] + expected: FAIL + + [insert tree div>div before subject_descendant] + expected: FAIL + + [insert tree div.test after subject_child] + expected: FAIL + + [insert tree div.test after subject_descendant] + expected: FAIL diff --git a/testing/web-platform/meta/css/selectors/invalidation/has-with-pseudo-class.html.ini b/testing/web-platform/meta/css/selectors/invalidation/has-with-pseudo-class.html.ini new file mode 100644 index 0000000000..df9c3f5c5c --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/has-with-pseudo-class.html.ini @@ -0,0 +1,44 @@ +[has-with-pseudo-class.html] + expected: + if (os == "android") and fission: [OK, TIMEOUT] + [Set checked on checkbox, testing subject] + expected: FAIL + + [Set select on option] + expected: FAIL + + [Set disabled on checkbox, testing subject] + expected: FAIL + + [Set disabled on checkbox, testing subject3] + expected: FAIL + + [Set disabled on option, testing subject] + expected: FAIL + + [Set disabled on option, testing subject3] + expected: FAIL + + [Set disabled on optgroup, testing subject] + expected: FAIL + + [Set disabled on optgroup, testing subject2] + expected: FAIL + + [Set disabled on optgroup, testing subject3] + expected: FAIL + + [Set disabled on optgroup, testing subject4] + expected: FAIL + + [Set value of text_input, testing subject] + expected: FAIL + + [Set value of text_input, testing subject2] + expected: FAIL + + [Set value of text_input, testing subject3] + expected: FAIL + + [Set value of text_input, testing subject4] + expected: FAIL diff --git a/testing/web-platform/meta/css/selectors/invalidation/host-pseudo-class-in-has.html.ini b/testing/web-platform/meta/css/selectors/invalidation/host-pseudo-class-in-has.html.ini new file mode 100644 index 0000000000..c0c220c4f9 --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/host-pseudo-class-in-has.html.ini @@ -0,0 +1,14 @@ +[host-pseudo-class-in-has.html] + expected: + if (os == "android") and fission: [OK, TIMEOUT] + [After adding 'a' to #host_parent: Check #subject1 color] + expected: FAIL + + [After adding 'a' to #host_parent: Check #subject2 color] + expected: FAIL + + [After adding 'a' to #host: Check #subject1 color] + expected: FAIL + + [After adding 'a' to #host: Check #subject2 color] + expected: FAIL diff --git a/testing/web-platform/meta/css/selectors/invalidation/input-pseudo-classes-in-has.html.ini b/testing/web-platform/meta/css/selectors/invalidation/input-pseudo-classes-in-has.html.ini new file mode 100644 index 0000000000..cd3b9fbf4f --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/input-pseudo-classes-in-has.html.ini @@ -0,0 +1,29 @@ +[input-pseudo-classes-in-has.html] + expected: + if (os == "android") and fission: [OK, TIMEOUT] + [:checked & :indeterminate invalidation on <input>] + expected: FAIL + + [:indeterminate invalidation on <progress>] + expected: FAIL + + [:disabled invalidation] + expected: FAIL + + [:read-only invalidation] + expected: FAIL + + [:valid invalidation] + expected: FAIL + + [:default invalidation with input[type=radio\]] + expected: FAIL + + [:required invalidation] + expected: FAIL + + [:out-of-range invalidation] + expected: FAIL + + [:placeholder-shown invalidation] + expected: FAIL diff --git a/testing/web-platform/meta/css/selectors/invalidation/insert-sibling-001.html.ini b/testing/web-platform/meta/css/selectors/invalidation/insert-sibling-001.html.ini new file mode 100644 index 0000000000..21c4dc9672 --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/insert-sibling-001.html.ini @@ -0,0 +1,3 @@ +[insert-sibling-001.html] + expected: + if (os == "android") and fission: [OK, TIMEOUT] diff --git a/testing/web-platform/meta/css/selectors/invalidation/insert-sibling-002.html.ini b/testing/web-platform/meta/css/selectors/invalidation/insert-sibling-002.html.ini new file mode 100644 index 0000000000..9c5c2fd229 --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/insert-sibling-002.html.ini @@ -0,0 +1,3 @@ +[insert-sibling-002.html] + expected: + if (os == "android") and fission: [OK, TIMEOUT] diff --git a/testing/web-platform/meta/css/selectors/invalidation/insert-sibling-003.html.ini b/testing/web-platform/meta/css/selectors/invalidation/insert-sibling-003.html.ini new file mode 100644 index 0000000000..a030ae1e5f --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/insert-sibling-003.html.ini @@ -0,0 +1,3 @@ +[insert-sibling-003.html] + expected: + if (os == "android") and fission: [OK, TIMEOUT] diff --git a/testing/web-platform/meta/css/selectors/invalidation/insert-sibling-004.html.ini b/testing/web-platform/meta/css/selectors/invalidation/insert-sibling-004.html.ini new file mode 100644 index 0000000000..666a26b7a8 --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/insert-sibling-004.html.ini @@ -0,0 +1,3 @@ +[insert-sibling-004.html] + expected: + if (os == "android") and fission: [OK, TIMEOUT] diff --git a/testing/web-platform/meta/css/selectors/invalidation/is-pseudo-containing-complex-in-has.html.ini b/testing/web-platform/meta/css/selectors/invalidation/is-pseudo-containing-complex-in-has.html.ini new file mode 100644 index 0000000000..c05c94feed --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/is-pseudo-containing-complex-in-has.html.ini @@ -0,0 +1,242 @@ +[is-pseudo-containing-complex-in-has.html] + expected: + if (os == "android") and fission: [OK, TIMEOUT] + [[ .orange:has(#descendant:is(:is(.m, .n) .o)) \] #parent.classList.add('m') : check #has_scope color] + expected: FAIL + + [[ .orange:has(#descendant:is(:is(.m, .n) .o)) \] #parent.classList.add('n') : check #has_scope color] + expected: FAIL + + [[ .orange:has(#descendant:is(:is(.m, .n) .o)) \] #has_scope.classList.add('m') : check #has_scope color] + expected: FAIL + + [[ .orange:has(#descendant:is(:is(.m, .n) .o)) \] #has_scope.classList.add('n') : check #has_scope color] + expected: FAIL + + [[ .orange:has(#descendant:is(:is(.m, .n) .o)) \] #child.classList.add('m') : check #has_scope color] + expected: FAIL + + [[ .orange:has(#descendant:is(:is(.m, .n) .o)) \] #child.classList.add('n') : check #has_scope color] + expected: FAIL + + [[ .red:has(#descendant:is(.a_has_scope .b)) \] #parent.classList.add('a_has_scope') : check #has_scope color] + expected: FAIL + + [[ .red:has(#descendant:is(.a_has_scope .b)) \] #has_scope.classList.add('a_has_scope') : check #has_scope color] + expected: FAIL + + [[ .red:has(#descendant:is(.a_has_scope .b)) \] #child.classList.add('a_has_scope') : check #has_scope color] + expected: FAIL + + [[ .orangered:has(#descendant:is(.a_descendant .b)) #descendant \] #parent.classList.add('a_descendant') : check #descendant color] + expected: FAIL + + [[ .orangered:has(#descendant:is(.a_descendant .b)) #descendant \] #has_scope.classList.add('a_descendant') : check #descendant color] + expected: FAIL + + [[ .orangered:has(#descendant:is(.a_descendant .b)) #descendant \] #child.classList.add('a_descendant') : check #descendant color] + expected: FAIL + + [[ .darkred:has(#descendant:is(.a_indirect_next .b)) ~ #indirect_next \] #parent.classList.add('a_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .darkred:has(#descendant:is(.a_indirect_next .b)) ~ #indirect_next \] #has_scope.classList.add('a_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .darkred:has(#descendant:is(.a_indirect_next .b)) ~ #indirect_next \] #child.classList.add('a_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .pink:has(#descendant:is(.a_indirect_next_child .b)) ~ #indirect_next #indirect_next_child \] #parent.classList.add('a_indirect_next_child') : check #indirect_next_child color] + expected: FAIL + + [[ .pink:has(#descendant:is(.a_indirect_next_child .b)) ~ #indirect_next #indirect_next_child \] #has_scope.classList.add('a_indirect_next_child') : check #indirect_next_child color] + expected: FAIL + + [[ .pink:has(#descendant:is(.a_indirect_next_child .b)) ~ #indirect_next #indirect_next_child \] #child.classList.add('a_indirect_next_child') : check #indirect_next_child color] + expected: FAIL + + [[ .green:has(#descendant:is(.p + .c_has_scope ~ .d .e)) \] #parent_previous.classList.add('c_has_scope') : check #has_scope color] + expected: FAIL + + [[ .green:has(#descendant:is(.p + .c_has_scope ~ .d .e)) \] insert/remove .invalid before #parent_previous) : (removal) check #has_scope color] + expected: FAIL + + [[ .green:has(#descendant:is(.p + .c_has_scope ~ .d .e)) \] insert/remove .c_has_scope before #parent_previous) : (insertion) check #has_scope color] + expected: FAIL + + [[ .green:has(#descendant:is(.p + .c_has_scope ~ .d .e)) \] #previous.classList.add('c_has_scope') : check #has_scope color] + expected: FAIL + + [[ .green:has(#descendant:is(.p + .c_has_scope ~ .d .e)) \] #child_previous.classList.add('c_has_scope') : check #has_scope color] + expected: FAIL + + [[ .green:has(#descendant:is(.p + .c_has_scope ~ .d .e)) \] insert/remove .invalid before #child_previous) : (removal) check #has_scope color] + expected: FAIL + + [[ .green:has(#descendant:is(.p + .c_has_scope ~ .d .e)) \] insert/remove .c_has_scope before #child_previous) : (insertion) check #has_scope color] + expected: FAIL + + [[ .lightgreen:has(#descendant:is(.p + .c_descendant ~ .d .e)) #descendant \] #parent_previous.classList.add('c_descendant') : check #descendant color] + expected: FAIL + + [[ .lightgreen:has(#descendant:is(.p + .c_descendant ~ .d .e)) #descendant \] #previous.classList.add('c_descendant') : check #descendant color] + expected: FAIL + + [[ .lightgreen:has(#descendant:is(.p + .c_descendant ~ .d .e)) #descendant \] #child_previous.classList.add('c_descendant') : check #descendant color] + expected: FAIL + + [[ .darkgreen:has(#descendant:is(.p + .c_indirect_next ~ .d .e)) ~ #indirect_next \] #parent_previous.classList.add('c_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .darkgreen:has(#descendant:is(.p + .c_indirect_next ~ .d .e)) ~ #indirect_next \] #previous.classList.add('c_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .darkgreen:has(#descendant:is(.p + .c_indirect_next ~ .d .e)) ~ #indirect_next \] #child_previous.classList.add('c_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .darkgreen:has(#descendant:is(.p + .c_indirect_next ~ .d .e)) ~ #indirect_next \] insert/remove .invalid before #child_previous) : (removal) check #indirect_next color] + expected: FAIL + + [[ .darkgreen:has(#descendant:is(.p + .c_indirect_next ~ .d .e)) ~ #indirect_next \] insert/remove .c_indirect_next before #child_previous) : (insertion) check #indirect_next color] + expected: FAIL + + [[ .yellowgreen:has(#descendant:is(.p + .c_indirect_next_child ~ .d .e)) ~ #indirect_next #indirect_next_child \] #parent_previous.classList.add('c_indirect_next_child') : check #indirect_next_child color] + expected: FAIL + + [[ .yellowgreen:has(#descendant:is(.p + .c_indirect_next_child ~ .d .e)) ~ #indirect_next #indirect_next_child \] #previous.classList.add('c_indirect_next_child') : check #indirect_next_child color] + expected: FAIL + + [[ .yellowgreen:has(#descendant:is(.p + .c_indirect_next_child ~ .d .e)) ~ #indirect_next #indirect_next_child \] #child_previous.classList.add('c_indirect_next_child') : check #indirect_next_child color] + expected: FAIL + + [[ .yellowgreen:has(#descendant:is(.p + .c_indirect_next_child ~ .d .e)) ~ #indirect_next #indirect_next_child \] insert/remove .invalid before #child_previous) : (removal) check #indirect_next_child color] + expected: FAIL + + [[ .yellowgreen:has(#descendant:is(.p + .c_indirect_next_child ~ .d .e)) ~ #indirect_next #indirect_next_child \] insert/remove .c_indirect_next_child before #child_previous) : (insertion) check #indirect_next_child color] + expected: FAIL + + [[ .blue:has(~ #indirect_next:is(.p + .f_has_scope ~ .g)) \] #previous.classList.add('f_has_scope') : check #has_scope color] + expected: FAIL + + [[ .blue:has(~ #indirect_next:is(.p + .f_has_scope ~ .g)) \] #previous.classList.remove('f_has_scope') : check #has_scope color] + expected: FAIL + + [[ .blue:has(~ #indirect_next:is(.p + .f_has_scope ~ .g)) \] #has_scope.classList.add('f_has_scope') : check #has_scope color] + expected: FAIL + + [[ .blue:has(~ #indirect_next:is(.p + .f_has_scope ~ .g)) \] #direct_next.classList.add('f_has_scope') : check #has_scope color] + expected: FAIL + + [[ .blue:has(~ #indirect_next:is(.p + .f_has_scope ~ .g)) \] insert/remove .invalid before #direct_next) : (removal) check #has_scope color] + expected: FAIL + + [[ .blue:has(~ #indirect_next:is(.p + .f_has_scope ~ .g)) \] insert/remove .f_has_scope before #direct_next) : (insertion) check #has_scope color] + expected: FAIL + + [[ .skyblue:has(~ #indirect_next:is(.p + .f_descendant ~ .g)) #descendant \] #previous.classList.add('f_descendant') : check #descendant color] + expected: FAIL + + [[ .skyblue:has(~ #indirect_next:is(.p + .f_descendant ~ .g)) #descendant \] #previous.classList.remove('f_descendant') : check #descendant color] + expected: FAIL + + [[ .skyblue:has(~ #indirect_next:is(.p + .f_descendant ~ .g)) #descendant \] #has_scope.classList.add('f_descendant') : check #descendant color] + expected: FAIL + + [[ .skyblue:has(~ #indirect_next:is(.p + .f_descendant ~ .g)) #descendant \] #direct_next.classList.add('f_descendant') : check #descendant color] + expected: FAIL + + [[ .skyblue:has(~ #indirect_next:is(.p + .f_descendant ~ .g)) #descendant \] insert/remove .invalid before #direct_next) : (removal) check #descendant color] + expected: FAIL + + [[ .skyblue:has(~ #indirect_next:is(.p + .f_descendant ~ .g)) #descendant \] insert/remove .f_descendant before #direct_next) : (insertion) check #descendant color] + expected: FAIL + + [[ .lightblue:has(~ #indirect_next:is(.p + .f_indirect_next ~ .g)) ~ #indirect_next \] #previous.classList.add('f_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .lightblue:has(~ #indirect_next:is(.p + .f_indirect_next ~ .g)) ~ #indirect_next \] #previous.classList.remove('f_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .lightblue:has(~ #indirect_next:is(.p + .f_indirect_next ~ .g)) ~ #indirect_next \] #has_scope.classList.add('f_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .lightblue:has(~ #indirect_next:is(.p + .f_indirect_next ~ .g)) ~ #indirect_next \] #direct_next.classList.add('f_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .lightblue:has(~ #indirect_next:is(.p + .f_indirect_next ~ .g)) ~ #indirect_next \] #direct_next.classList.remove('f_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .darkblue:has(~ #indirect_next:is(.p + .f_indirect_next_child ~ .g)) ~ #indirect_next #indirect_next_child \] #previous.classList.add('f_indirect_next_child') : check #indirect_next_child color] + expected: FAIL + + [[ .darkblue:has(~ #indirect_next:is(.p + .f_indirect_next_child ~ .g)) ~ #indirect_next #indirect_next_child \] #previous.classList.remove('f_indirect_next_child') : check #indirect_next_child color] + expected: FAIL + + [[ .darkblue:has(~ #indirect_next:is(.p + .f_indirect_next_child ~ .g)) ~ #indirect_next #indirect_next_child \] #has_scope.classList.add('f_indirect_next_child') : check #indirect_next_child color] + expected: FAIL + + [[ .darkblue:has(~ #indirect_next:is(.p + .f_indirect_next_child ~ .g)) ~ #indirect_next #indirect_next_child \] #direct_next.classList.add('f_indirect_next_child') : check #indirect_next_child color] + expected: FAIL + + [[ .darkblue:has(~ #indirect_next:is(.p + .f_indirect_next_child ~ .g)) ~ #indirect_next #indirect_next_child \] #direct_next.classList.remove('f_indirect_next_child') : check #indirect_next_child color] + expected: FAIL + + [[ .yellow:has(~ #indirect_next:is(.h_has_scope .i)) \] #parent.classList.add('h_has_scope') : check #has_scope color] + expected: FAIL + + [[ .ivory:has(~ #indirect_next:is(.h_descendant .i)) #descendant \] #parent.classList.add('h_descendant') : check #descendant color] + expected: FAIL + + [[ .greenyellow:has(~ #indirect_next:is(.h_indirect_next .i)) ~ #indirect_next \] #parent.classList.add('h_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .khaki:has(~ #indirect_next:is(.h_indirect_next_child .i)) ~ #indirect_next #indirect_next_child \] #parent.classList.add('h_indirect_next_child') : check #indirect_next_child color] + expected: FAIL + + [[ .purple:has(~ #indirect_next:is(.p + .j_has_scope ~ .k .l)) \] #parent_previous.classList.add('j_has_scope') : check #has_scope color] + expected: FAIL + + [[ .purple:has(~ #indirect_next:is(.p + .j_has_scope ~ .k .l)) \] #parent_previous.classList.remove('j_has_scope') : check #has_scope color] + expected: FAIL + + [[ .violet:has(~ #indirect_next:is(.p + .j_descendant ~ .k .l)) #descendant \] #parent_previous.classList.add('j_descendant') : check #descendant color] + expected: FAIL + + [[ .violet:has(~ #indirect_next:is(.p + .j_descendant ~ .k .l)) #descendant \] #parent_previous.classList.remove('j_descendant') : check #descendant color] + expected: FAIL + + [[ .orchid:has(~ #indirect_next:is(.p + .j_indirect_next ~ .k .l)) ~ #indirect_next \] #parent_previous.classList.add('j_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .orchid:has(~ #indirect_next:is(.p + .j_indirect_next ~ .k .l)) ~ #indirect_next \] #parent_previous.classList.remove('j_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .plum:has(~ #indirect_next:is(.p + .j_indirect_next_child ~ .k .l)) ~ #indirect_next #indirect_next_child \] #parent_previous.classList.add('j_indirect_next_child') : check #indirect_next_child color] + expected: FAIL + + [[ .plum:has(~ #indirect_next:is(.p + .j_indirect_next_child ~ .k .l)) ~ #indirect_next #indirect_next_child \] #parent_previous.classList.remove('j_indirect_next_child') : check #indirect_next_child color] + expected: FAIL + + [[ .green:has(#descendant:is(.p + .c_has_scope ~ .d .e)) \] #previous.classList.remove('c_has_scope') : check #has_scope color] + expected: FAIL + + [[ .lightgreen:has(#descendant:is(.p + .c_descendant ~ .d .e)) #descendant \] #parent_previous.classList.remove('c_descendant') : check #descendant color] + expected: FAIL + + [[ .lightgreen:has(#descendant:is(.p + .c_descendant ~ .d .e)) #descendant \] #previous.classList.remove('c_descendant') : check #descendant color] + expected: FAIL + + [[ .lightgreen:has(#descendant:is(.p + .c_descendant ~ .d .e)) #descendant \] #child_previous.classList.remove('c_descendant') : check #descendant color] + expected: FAIL + + [[ .darkgreen:has(#descendant:is(.p + .c_indirect_next ~ .d .e)) ~ #indirect_next \] #parent_previous.classList.remove('c_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .darkgreen:has(#descendant:is(.p + .c_indirect_next ~ .d .e)) ~ #indirect_next \] #previous.classList.remove('c_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .yellowgreen:has(#descendant:is(.p + .c_indirect_next_child ~ .d .e)) ~ #indirect_next #indirect_next_child \] #parent_previous.classList.remove('c_indirect_next_child') : check #indirect_next_child color] + expected: FAIL + + [[ .yellowgreen:has(#descendant:is(.p + .c_indirect_next_child ~ .d .e)) ~ #indirect_next #indirect_next_child \] #previous.classList.remove('c_indirect_next_child') : check #indirect_next_child color] + expected: FAIL diff --git a/testing/web-platform/meta/css/selectors/invalidation/is.html.ini b/testing/web-platform/meta/css/selectors/invalidation/is.html.ini new file mode 100644 index 0000000000..8d2dfa6362 --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/is.html.ini @@ -0,0 +1,3 @@ +[is.html] + expected: + if (os == "android") and fission: [OK, TIMEOUT] diff --git a/testing/web-platform/meta/css/selectors/invalidation/lang-pseudo-class-in-has-multiple-document-elements.html.ini b/testing/web-platform/meta/css/selectors/invalidation/lang-pseudo-class-in-has-multiple-document-elements.html.ini new file mode 100644 index 0000000000..d31de72c1b --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/lang-pseudo-class-in-has-multiple-document-elements.html.ini @@ -0,0 +1,3 @@ +[lang-pseudo-class-in-has-multiple-document-elements.html] + expected: + if os == "win": FAIL diff --git a/testing/web-platform/meta/css/selectors/invalidation/lang-pseudo-class-in-has-xhtml.xhtml.ini b/testing/web-platform/meta/css/selectors/invalidation/lang-pseudo-class-in-has-xhtml.xhtml.ini new file mode 100644 index 0000000000..ea5033743d --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/lang-pseudo-class-in-has-xhtml.xhtml.ini @@ -0,0 +1,2 @@ +[lang-pseudo-class-in-has-xhtml.xhtml] + expected: FAIL diff --git a/testing/web-platform/meta/css/selectors/invalidation/lang-pseudo-class-in-has.html.ini b/testing/web-platform/meta/css/selectors/invalidation/lang-pseudo-class-in-has.html.ini new file mode 100644 index 0000000000..a4e075f95e --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/lang-pseudo-class-in-has.html.ini @@ -0,0 +1,2 @@ +[lang-pseudo-class-in-has.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/selectors/invalidation/link-pseudo-in-has.html.ini b/testing/web-platform/meta/css/selectors/invalidation/link-pseudo-in-has.html.ini new file mode 100644 index 0000000000..7903844f10 --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/link-pseudo-in-has.html.ini @@ -0,0 +1,5 @@ +[link-pseudo-in-has.html] + expected: + if (os == "android") and fission: [OK, TIMEOUT] + [CSS Selectors Invalidation: :link, :visited :any-link, pseudo-class in :has() argument] + expected: FAIL diff --git a/testing/web-platform/meta/css/selectors/invalidation/location-pseudo-classes-in-has.html.ini b/testing/web-platform/meta/css/selectors/invalidation/location-pseudo-classes-in-has.html.ini new file mode 100644 index 0000000000..fde2638b5d --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/location-pseudo-classes-in-has.html.ini @@ -0,0 +1,3 @@ +[location-pseudo-classes-in-has.html] + expected: + if (os == "android") and fission: [OK, TIMEOUT] diff --git a/testing/web-platform/meta/css/selectors/invalidation/media-loading-pseudo-classes-in-has.html.ini b/testing/web-platform/meta/css/selectors/invalidation/media-loading-pseudo-classes-in-has.html.ini new file mode 100644 index 0000000000..468b68e88d --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/media-loading-pseudo-classes-in-has.html.ini @@ -0,0 +1,7 @@ +[media-loading-pseudo-classes-in-has.html] + expected: TIMEOUT + [Test :has(:stalled) invalidation] + expected: TIMEOUT + + [Test :has(:buffering) invalidation] + expected: NOTRUN diff --git a/testing/web-platform/meta/css/selectors/invalidation/media-pseudo-classes-in-has.html.ini b/testing/web-platform/meta/css/selectors/invalidation/media-pseudo-classes-in-has.html.ini new file mode 100644 index 0000000000..54159bc4bc --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/media-pseudo-classes-in-has.html.ini @@ -0,0 +1,10 @@ +[media-pseudo-classes-in-has.html] + expected: TIMEOUT + [Test :playing pseudo-classes] + expected: FAIL + + [Test :seeking pseudo-class] + expected: FAIL + + [Test :muted pseudo-class] + expected: TIMEOUT diff --git a/testing/web-platform/meta/css/selectors/invalidation/modal-pseudo-class-in-has.html.ini b/testing/web-platform/meta/css/selectors/invalidation/modal-pseudo-class-in-has.html.ini new file mode 100644 index 0000000000..b46fda5685 --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/modal-pseudo-class-in-has.html.ini @@ -0,0 +1,15 @@ +[modal-pseudo-class-in-has.html] + expected: + if (os == "android") and fission: [ERROR, TIMEOUT, OK] + ERROR + [:modal pseudo-class invalidation with showModal + close] + expected: FAIL + + [:modal pseudo-class invalidation with showModal + remove] + expected: FAIL + + [:modal pseudo-class invalidation with requestFullscreen + exitFullscreen] + expected: TIMEOUT + + [:modal pseudo-class invalidation with requestFullscreen + remove] + expected: NOTRUN diff --git a/testing/web-platform/meta/css/selectors/invalidation/not-001.html.ini b/testing/web-platform/meta/css/selectors/invalidation/not-001.html.ini new file mode 100644 index 0000000000..fc932d99ae --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/not-001.html.ini @@ -0,0 +1,3 @@ +[not-001.html] + expected: + if (os == "android") and fission: [OK, TIMEOUT] diff --git a/testing/web-platform/meta/css/selectors/invalidation/not-002.html.ini b/testing/web-platform/meta/css/selectors/invalidation/not-002.html.ini new file mode 100644 index 0000000000..ca0e613641 --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/not-002.html.ini @@ -0,0 +1,3 @@ +[not-002.html] + expected: + if (os == "android") and fission: [OK, TIMEOUT] diff --git a/testing/web-platform/meta/css/selectors/invalidation/not-pseudo-containing-complex-in-has.html.ini b/testing/web-platform/meta/css/selectors/invalidation/not-pseudo-containing-complex-in-has.html.ini new file mode 100644 index 0000000000..653a3b4696 --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/not-pseudo-containing-complex-in-has.html.ini @@ -0,0 +1,225 @@ +[not-pseudo-containing-complex-in-has.html] + [[ .green:has(#descendant:not(.p + .c_has_scope ~ .d .e)) \] #parent_previous.classList.remove('c_has_scope') : check #has_scope color] + expected: FAIL + + [[ .green:has(#descendant:not(.p + .c_has_scope ~ .d .e)) \] #previous.classList.remove('c_has_scope') : check #has_scope color] + expected: FAIL + + [[ .lightgreen:has(#descendant:not(.p + .c_descendant ~ .d .e)) #descendant \] #parent_previous.classList.remove('c_descendant') : check #descendant color] + expected: FAIL + + [[ .lightgreen:has(#descendant:not(.p + .c_descendant ~ .d .e)) #descendant \] #previous.classList.remove('c_descendant') : check #descendant color] + expected: FAIL + + [[ .lightgreen:has(#descendant:not(.p + .c_descendant ~ .d .e)) #descendant \] #child_previous.classList.remove('c_descendant') : check #descendant color] + expected: FAIL + + [[ .darkgreen:has(#descendant:not(.p + .c_indirect_next ~ .d .e)) ~ #indirect_next \] #parent_previous.classList.remove('c_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .darkgreen:has(#descendant:not(.p + .c_indirect_next ~ .d .e)) ~ #indirect_next \] #previous.classList.remove('c_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .yellowgreen:has(#descendant:not(.p + .c_indirect_next_child ~ .d .e)) ~ #indirect_next #indirect_next_child \] #parent_previous.classList.remove('c_indirect_next_child') : check #indirect_next_child color] + expected: FAIL + + [[ .yellowgreen:has(#descendant:not(.p + .c_indirect_next_child ~ .d .e)) ~ #indirect_next #indirect_next_child \] #previous.classList.remove('c_indirect_next_child') : check #indirect_next_child color] + expected: FAIL + + [[ .blue:has(~ #indirect_next:not(.p + .f_has_scope ~ .g)) \] #previous.classList.add('f_has_scope') : check #has_scope color] + expected: FAIL + + [[ .blue:has(~ #indirect_next:not(.p + .f_has_scope ~ .g)) \] #has_scope.classList.add('f_has_scope') : check #has_scope color] + expected: FAIL + + [[ .blue:has(~ #indirect_next:not(.p + .f_has_scope ~ .g)) \] insert/remove .f_has_scope before #direct_next) : (insertion) check #has_scope color] + expected: FAIL + + [[ .blue:has(~ #indirect_next:not(.p + .f_has_scope ~ .g)) \] #direct_next.classList.add('f_has_scope') : check #has_scope color] + expected: FAIL + + [[ .skyblue:has(~ #indirect_next:not(.p + .f_descendant ~ .g)) #descendant \] #previous.classList.add('f_descendant') : check #descendant color] + expected: FAIL + + [[ .skyblue:has(~ #indirect_next:not(.p + .f_descendant ~ .g)) #descendant \] #has_scope.classList.add('f_descendant') : check #descendant color] + expected: FAIL + + [[ .skyblue:has(~ #indirect_next:not(.p + .f_descendant ~ .g)) #descendant \] #direct_next.classList.add('f_descendant') : check #descendant color] + expected: FAIL + + [[ .skyblue:has(~ #indirect_next:not(.p + .f_descendant ~ .g)) #descendant \] insert/remove .f_descendant before #direct_next) : (insertion) check #descendant color] + expected: FAIL + + [[ .lightblue:has(~ #indirect_next:not(.p + .f_indirect_next ~ .g)) ~ #indirect_next \] #previous.classList.add('f_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .lightblue:has(~ #indirect_next:not(.p + .f_indirect_next ~ .g)) ~ #indirect_next \] #previous.classList.remove('f_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .lightblue:has(~ #indirect_next:not(.p + .f_indirect_next ~ .g)) ~ #indirect_next \] #has_scope.classList.add('f_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .lightblue:has(~ #indirect_next:not(.p + .f_indirect_next ~ .g)) ~ #indirect_next \] #direct_next.classList.add('f_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .lightblue:has(~ #indirect_next:not(.p + .f_indirect_next ~ .g)) ~ #indirect_next \] #direct_next.classList.remove('f_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .darkblue:has(~ #indirect_next:not(.p + .f_indirect_next_child ~ .g)) ~ #indirect_next #indirect_next_child \] #previous.classList.add('f_indirect_next_child') : check #indirect_next_child color] + expected: FAIL + + [[ .darkblue:has(~ #indirect_next:not(.p + .f_indirect_next_child ~ .g)) ~ #indirect_next #indirect_next_child \] #previous.classList.remove('f_indirect_next_child') : check #indirect_next_child color] + expected: FAIL + + [[ .darkblue:has(~ #indirect_next:not(.p + .f_indirect_next_child ~ .g)) ~ #indirect_next #indirect_next_child \] #has_scope.classList.add('f_indirect_next_child') : check #indirect_next_child color] + expected: FAIL + + [[ .darkblue:has(~ #indirect_next:not(.p + .f_indirect_next_child ~ .g)) ~ #indirect_next #indirect_next_child \] #direct_next.classList.add('f_indirect_next_child') : check #indirect_next_child color] + expected: FAIL + + [[ .darkblue:has(~ #indirect_next:not(.p + .f_indirect_next_child ~ .g)) ~ #indirect_next #indirect_next_child \] #direct_next.classList.remove('f_indirect_next_child') : check #indirect_next_child color] + expected: FAIL + + [[ .yellow:has(~ #indirect_next:not(.h_has_scope .i)) \] #parent.classList.add('h_has_scope') : check #has_scope color] + expected: FAIL + + [[ .ivory:has(~ #indirect_next:not(.h_descendant .i)) #descendant \] #parent.classList.add('h_descendant') : check #descendant color] + expected: FAIL + + [[ .greenyellow:has(~ #indirect_next:not(.h_indirect_next .i)) ~ #indirect_next \] #parent.classList.add('h_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .khaki:has(~ #indirect_next:not(.h_indirect_next_child .i)) ~ #indirect_next #indirect_next_child \] #parent.classList.add('h_indirect_next_child') : check #indirect_next_child color] + expected: FAIL + + [[ .purple:has(~ #indirect_next:not(.p + .j_has_scope ~ .k .l)) \] #parent_previous.classList.add('j_has_scope') : check #has_scope color] + expected: FAIL + + [[ .purple:has(~ #indirect_next:not(.p + .j_has_scope ~ .k .l)) \] #parent_previous.classList.remove('j_has_scope') : check #has_scope color] + expected: FAIL + + [[ .violet:has(~ #indirect_next:not(.p + .j_descendant ~ .k .l)) #descendant \] #parent_previous.classList.add('j_descendant') : check #descendant color] + expected: FAIL + + [[ .violet:has(~ #indirect_next:not(.p + .j_descendant ~ .k .l)) #descendant \] #parent_previous.classList.remove('j_descendant') : check #descendant color] + expected: FAIL + + [[ .orchid:has(~ #indirect_next:not(.p + .j_indirect_next ~ .k .l)) ~ #indirect_next \] #parent_previous.classList.add('j_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .orchid:has(~ #indirect_next:not(.p + .j_indirect_next ~ .k .l)) ~ #indirect_next \] #parent_previous.classList.remove('j_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .plum:has(~ #indirect_next:not(.p + .j_indirect_next_child ~ .k .l)) ~ #indirect_next #indirect_next_child \] #parent_previous.classList.add('j_indirect_next_child') : check #indirect_next_child color] + expected: FAIL + + [[ .plum:has(~ #indirect_next:not(.p + .j_indirect_next_child ~ .k .l)) ~ #indirect_next #indirect_next_child \] #parent_previous.classList.remove('j_indirect_next_child') : check #indirect_next_child color] + expected: FAIL + + [[ .red:has(#descendant:not(.a_has_scope .b)) \] #parent.classList.add('a_has_scope') : check #has_scope color] + expected: FAIL + + [[ .red:has(#descendant:not(.a_has_scope .b)) \] #has_scope.classList.add('a_has_scope') : check #has_scope color] + expected: FAIL + + [[ .red:has(#descendant:not(.a_has_scope .b)) \] #child.classList.add('a_has_scope') : check #has_scope color] + expected: FAIL + + [[ .orangered:has(#descendant:not(.a_descendant .b)) #descendant \] #parent.classList.add('a_descendant') : check #descendant color] + expected: FAIL + + [[ .orangered:has(#descendant:not(.a_descendant .b)) #descendant \] #has_scope.classList.add('a_descendant') : check #descendant color] + expected: FAIL + + [[ .orangered:has(#descendant:not(.a_descendant .b)) #descendant \] #child.classList.add('a_descendant') : check #descendant color] + expected: FAIL + + [[ .darkred:has(#descendant:not(.a_indirect_next .b)) ~ #indirect_next \] #parent.classList.add('a_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .darkred:has(#descendant:not(.a_indirect_next .b)) ~ #indirect_next \] #has_scope.classList.add('a_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .darkred:has(#descendant:not(.a_indirect_next .b)) ~ #indirect_next \] #child.classList.add('a_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .pink:has(#descendant:not(.a_indirect_next_child .b)) ~ #indirect_next #indirect_next_child \] #parent.classList.add('a_indirect_next_child') : check #indirect_next_child color] + expected: FAIL + + [[ .pink:has(#descendant:not(.a_indirect_next_child .b)) ~ #indirect_next #indirect_next_child \] #has_scope.classList.add('a_indirect_next_child') : check #indirect_next_child color] + expected: FAIL + + [[ .pink:has(#descendant:not(.a_indirect_next_child .b)) ~ #indirect_next #indirect_next_child \] #child.classList.add('a_indirect_next_child') : check #indirect_next_child color] + expected: FAIL + + [[ .green:has(#descendant:not(.p + .c_has_scope ~ .d .e)) \] #parent_previous.classList.add('c_has_scope') : check #has_scope color] + expected: FAIL + + [[ .green:has(#descendant:not(.p + .c_has_scope ~ .d .e)) \] #previous.classList.add('c_has_scope') : check #has_scope color] + expected: FAIL + + [[ .green:has(#descendant:not(.p + .c_has_scope ~ .d .e)) \] #child_previous.classList.add('c_has_scope') : check #has_scope color] + expected: FAIL + + [[ .green:has(#descendant:not(.p + .c_has_scope ~ .d .e)) \] insert/remove .invalid before #child_previous) : (removal) check #has_scope color] + expected: FAIL + + [[ .green:has(#descendant:not(.p + .c_has_scope ~ .d .e)) \] insert/remove .c_has_scope before #child_previous) : (insertion) check #has_scope color] + expected: FAIL + + [[ .lightgreen:has(#descendant:not(.p + .c_descendant ~ .d .e)) #descendant \] #parent_previous.classList.add('c_descendant') : check #descendant color] + expected: FAIL + + [[ .lightgreen:has(#descendant:not(.p + .c_descendant ~ .d .e)) #descendant \] #previous.classList.add('c_descendant') : check #descendant color] + expected: FAIL + + [[ .lightgreen:has(#descendant:not(.p + .c_descendant ~ .d .e)) #descendant \] #child_previous.classList.add('c_descendant') : check #descendant color] + expected: FAIL + + [[ .darkgreen:has(#descendant:not(.p + .c_indirect_next ~ .d .e)) ~ #indirect_next \] #parent_previous.classList.add('c_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .darkgreen:has(#descendant:not(.p + .c_indirect_next ~ .d .e)) ~ #indirect_next \] #previous.classList.add('c_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .darkgreen:has(#descendant:not(.p + .c_indirect_next ~ .d .e)) ~ #indirect_next \] #child_previous.classList.add('c_indirect_next') : check #indirect_next color] + expected: FAIL + + [[ .darkgreen:has(#descendant:not(.p + .c_indirect_next ~ .d .e)) ~ #indirect_next \] insert/remove .invalid before #child_previous) : (removal) check #indirect_next color] + expected: FAIL + + [[ .darkgreen:has(#descendant:not(.p + .c_indirect_next ~ .d .e)) ~ #indirect_next \] insert/remove .c_indirect_next before #child_previous) : (insertion) check #indirect_next color] + expected: FAIL + + [[ .yellowgreen:has(#descendant:not(.p + .c_indirect_next_child ~ .d .e)) ~ #indirect_next #indirect_next_child \] #parent_previous.classList.add('c_indirect_next_child') : check #indirect_next_child color] + expected: FAIL + + [[ .yellowgreen:has(#descendant:not(.p + .c_indirect_next_child ~ .d .e)) ~ #indirect_next #indirect_next_child \] #previous.classList.add('c_indirect_next_child') : check #indirect_next_child color] + expected: FAIL + + [[ .yellowgreen:has(#descendant:not(.p + .c_indirect_next_child ~ .d .e)) ~ #indirect_next #indirect_next_child \] #child_previous.classList.add('c_indirect_next_child') : check #indirect_next_child color] + expected: FAIL + + [[ .yellowgreen:has(#descendant:not(.p + .c_indirect_next_child ~ .d .e)) ~ #indirect_next #indirect_next_child \] insert/remove .invalid before #child_previous) : (removal) check #indirect_next_child color] + expected: FAIL + + [[ .yellowgreen:has(#descendant:not(.p + .c_indirect_next_child ~ .d .e)) ~ #indirect_next #indirect_next_child \] insert/remove .c_indirect_next_child before #child_previous) : (insertion) check #indirect_next_child color] + expected: FAIL + + [[ .orange:has(#descendant:not(.m:not(.n) .o)) \] #parent.classList.add('m') : check #has_scope color] + expected: FAIL + + [[ .orange:has(#descendant:not(.m:not(.n) .o)) \] #parent.classList.remove('n') : check #has_scope color] + expected: FAIL + + [[ .orange:has(#descendant:not(.m:not(.n) .o)) \] #has_scope.classList.add('m') : check #has_scope color] + expected: FAIL + + [[ .orange:has(#descendant:not(.m:not(.n) .o)) \] #has_scope.classList.remove('n') : check #has_scope color] + expected: FAIL + + [[ .orange:has(#descendant:not(.m:not(.n) .o)) \] #child.classList.add('m') : check #has_scope color] + expected: FAIL + + [[ .orange:has(#descendant:not(.m:not(.n) .o)) \] #child.classList.remove('n') : check #has_scope color] + expected: FAIL diff --git a/testing/web-platform/meta/css/selectors/invalidation/nth-child-of-has.html.ini b/testing/web-platform/meta/css/selectors/invalidation/nth-child-of-has.html.ini new file mode 100644 index 0000000000..f9ae9a26de --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/nth-child-of-has.html.ini @@ -0,0 +1,2 @@ +[nth-child-of-has.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/selectors/invalidation/nth-last-child-of-has.html.ini b/testing/web-platform/meta/css/selectors/invalidation/nth-last-child-of-has.html.ini new file mode 100644 index 0000000000..a07aa32610 --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/nth-last-child-of-has.html.ini @@ -0,0 +1,2 @@ +[nth-last-child-of-has.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/selectors/invalidation/quirks-mode-stylesheet-dynamic-add-001.html.ini b/testing/web-platform/meta/css/selectors/invalidation/quirks-mode-stylesheet-dynamic-add-001.html.ini new file mode 100644 index 0000000000..10344da254 --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/quirks-mode-stylesheet-dynamic-add-001.html.ini @@ -0,0 +1,3 @@ +[quirks-mode-stylesheet-dynamic-add-001.html] + expected: + if (os == "android") and fission: [OK, TIMEOUT] diff --git a/testing/web-platform/meta/css/selectors/invalidation/selectorText-dynamic-001.html.ini b/testing/web-platform/meta/css/selectors/invalidation/selectorText-dynamic-001.html.ini new file mode 100644 index 0000000000..e77dabe940 --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/selectorText-dynamic-001.html.ini @@ -0,0 +1,3 @@ +[selectorText-dynamic-001.html] + expected: + if (os == "android") and fission: [OK, TIMEOUT] diff --git a/testing/web-platform/meta/css/selectors/invalidation/sheet-going-away-001.html.ini b/testing/web-platform/meta/css/selectors/invalidation/sheet-going-away-001.html.ini new file mode 100644 index 0000000000..be648b42fa --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/sheet-going-away-001.html.ini @@ -0,0 +1,3 @@ +[sheet-going-away-001.html] + expected: + if (os == "android") and fission: [OK, TIMEOUT] diff --git a/testing/web-platform/meta/css/selectors/invalidation/sibling.html.ini b/testing/web-platform/meta/css/selectors/invalidation/sibling.html.ini new file mode 100644 index 0000000000..8956fdaf4e --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/sibling.html.ini @@ -0,0 +1,3 @@ +[sibling.html] + expected: + if (os == "android") and fission: [OK, TIMEOUT] diff --git a/testing/web-platform/meta/css/selectors/invalidation/subject-has-invalidation-with-display-none-anchor-element.html.ini b/testing/web-platform/meta/css/selectors/invalidation/subject-has-invalidation-with-display-none-anchor-element.html.ini new file mode 100644 index 0000000000..f47f72f03b --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/subject-has-invalidation-with-display-none-anchor-element.html.ini @@ -0,0 +1,5 @@ +[subject-has-invalidation-with-display-none-anchor-element.html] + expected: + if (os == "android") and fission: [OK, TIMEOUT] + [CSS Selectors Invalidation: subject :has() invalidation with display: none anchor element] + expected: FAIL diff --git a/testing/web-platform/meta/css/selectors/invalidation/target-pseudo-in-has.html.ini b/testing/web-platform/meta/css/selectors/invalidation/target-pseudo-in-has.html.ini new file mode 100644 index 0000000000..627ee91278 --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/target-pseudo-in-has.html.ini @@ -0,0 +1,5 @@ +[target-pseudo-in-has.html] + expected: + if (os == "android") and fission: [OK, TIMEOUT] + [CSS Selectors Invalidation: :target pseudo-class in :has() argument] + expected: FAIL diff --git a/testing/web-platform/meta/css/selectors/invalidation/typed-child-indexed-pseudo-classes-in-has.html.ini b/testing/web-platform/meta/css/selectors/invalidation/typed-child-indexed-pseudo-classes-in-has.html.ini new file mode 100644 index 0000000000..dd11bba71d --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/typed-child-indexed-pseudo-classes-in-has.html.ini @@ -0,0 +1,146 @@ +[typed-child-indexed-pseudo-classes-in-has.html] + expected: + if (os == "android") and fission: [OK, TIMEOUT] + [Prepend #div1.green: #only_of_type] + expected: FAIL + + [Prepend #div1.green: #first_of_type] + expected: FAIL + + [Prepend #div1.green: #last_of_type] + expected: FAIL + + [Prepend #div1.green: #nth_of_type_3n_1] + expected: FAIL + + [Prepend span (2): #only_of_type] + expected: FAIL + + [Prepend span (2): #first_of_type] + expected: FAIL + + [Prepend span (2): #last_of_type] + expected: FAIL + + [Prepend span (2): #nth_of_type_3n_1] + expected: FAIL + + [Prepend #div2.yellow: #first_of_type] + expected: FAIL + + [Prepend #div2.yellow: #last_of_type] + expected: FAIL + + [Prepend #div2.yellow: #nth_of_type_3n_1] + expected: FAIL + + [Prepend #div2.yellow: #nth_of_type_3n_2] + expected: FAIL + + [Prepend span (3): #first_of_type] + expected: FAIL + + [Prepend span (3): #last_of_type] + expected: FAIL + + [Prepend span (3): #nth_of_type_3n_1] + expected: FAIL + + [Prepend span (3): #nth_of_type_3n_2] + expected: FAIL + + [Prepend #div3.orange: #first_of_type] + expected: FAIL + + [Prepend #div3.orange: #last_of_type] + expected: FAIL + + [Prepend #div3.orange: #nth_of_type_3n_1] + expected: FAIL + + [Prepend #div3.orange: #nth_of_type_3n_2] + expected: FAIL + + [Prepend #div3.orange: #nth_of_type_3n] + expected: FAIL + + [Prepend span (4): #first_of_type] + expected: FAIL + + [Prepend span (4): #last_of_type] + expected: FAIL + + [Prepend span (4): #nth_of_type_3n_1] + expected: FAIL + + [Prepend span (4): #nth_of_type_3n_2] + expected: FAIL + + [Prepend span (4): #nth_of_type_3n] + expected: FAIL + + [Prepend #div4: #last_of_type] + expected: FAIL + + [Prepend #div4: #nth_of_type_3n_1] + expected: FAIL + + [Prepend #div4: #nth_of_type_3n_2] + expected: FAIL + + [Prepend #div4: #nth_of_type_3n] + expected: FAIL + + [Prepend span (5): #last_of_type] + expected: FAIL + + [Prepend span (5): #nth_of_type_3n_1] + expected: FAIL + + [Prepend span (5): #nth_of_type_3n_2] + expected: FAIL + + [Prepend span (5): #nth_of_type_3n] + expected: FAIL + + [Prepend #div5: #last_of_type] + expected: FAIL + + [Prepend #div5: #nth_of_type_3n_1] + expected: FAIL + + [Prepend #div5: #nth_of_type_3n_2] + expected: FAIL + + [Prepend #div5: #nth_of_type_3n] + expected: FAIL + + [Prepend span (6): #last_of_type] + expected: FAIL + + [Prepend span (6): #nth_of_type_3n_1] + expected: FAIL + + [Prepend span (6): #nth_of_type_3n_2] + expected: FAIL + + [Prepend span (6): #nth_of_type_3n] + expected: FAIL + + [Remove #div1: #last_of_type] + expected: FAIL + + [Remove #div1: #nth_of_type_3n_1] + expected: FAIL + + [Remove #div1: #nth_of_type_3n] + expected: FAIL + + [Remove #div2: #last_of_type] + expected: FAIL + + [Remove #div2: #nth_of_type_3n] + expected: FAIL + + [Remove #div4: #only_of_type] + expected: FAIL diff --git a/testing/web-platform/meta/css/selectors/invalidation/user-action-pseudo-classes-in-has.html.ini b/testing/web-platform/meta/css/selectors/invalidation/user-action-pseudo-classes-in-has.html.ini new file mode 100644 index 0000000000..7620ef4646 --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/user-action-pseudo-classes-in-has.html.ini @@ -0,0 +1,5 @@ +[user-action-pseudo-classes-in-has.html] + expected: + if (os == "android") and fission: [OK, TIMEOUT] + [Invalidation with :focus, :focus-within, :focus-visible in :has()] + expected: FAIL diff --git a/testing/web-platform/meta/css/selectors/invalidation/where.html.ini b/testing/web-platform/meta/css/selectors/invalidation/where.html.ini new file mode 100644 index 0000000000..232f9d15bd --- /dev/null +++ b/testing/web-platform/meta/css/selectors/invalidation/where.html.ini @@ -0,0 +1,3 @@ +[where.html] + expected: + if (os == "android") and fission: [OK, TIMEOUT] |