diff --git a/tests/wpt/meta-legacy-layout/css/css-borders/border-image-width-interpolation-math-functions-tentative.html.ini b/tests/wpt/meta-legacy-layout/css/css-borders/border-image-width-interpolation-math-functions-tentative.html.ini new file mode 100644 index 00000000000..fcc2d8205dd --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-borders/border-image-width-interpolation-math-functions-tentative.html.ini @@ -0,0 +1,144 @@ +[border-image-width-interpolation-math-functions-tentative.html] + [CSS Transitions: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [CSS Transitions: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [CSS Transitions: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [CSS Transitions: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [CSS Transitions: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [CSS Transitions: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (2) should be [260\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (2) should be [260\]] + expected: FAIL + + [CSS Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [CSS Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [CSS Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [CSS Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [CSS Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [CSS Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (2) should be [260\]] + expected: FAIL + + [Web Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [Web Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [Web Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [Web Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [Web Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [Web Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (2) should be [260\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (2) should be [260\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (2) should be [260\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (2) should be [260\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (2) should be [260\]] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-color/parsing/color-computed-color-mix-function.html.ini b/tests/wpt/meta-legacy-layout/css/css-color/parsing/color-computed-color-mix-function.html.ini index 3f3a52b9d50..49dceb7d0a5 100644 --- a/tests/wpt/meta-legacy-layout/css/css-color/parsing/color-computed-color-mix-function.html.ini +++ b/tests/wpt/meta-legacy-layout/css/css-color/parsing/color-computed-color-mix-function.html.ini @@ -814,3 +814,27 @@ [Property color value 'color-mix(in oklch, oklab(0.5 0 0), black)'] expected: FAIL + + [Property color value 'color-mix(in hsl, white, blue)'] + expected: FAIL + + [Property color value 'color-mix(in hsl, white 10%, blue)'] + expected: FAIL + + [Property color value 'color-mix(in hwb, white, blue)'] + expected: FAIL + + [Property color value 'color-mix(in hwb, white 10%, blue)'] + expected: FAIL + + [Property color value 'color-mix(in lch, white, blue)'] + expected: FAIL + + [Property color value 'color-mix(in lch, white 10%, blue)'] + expected: FAIL + + [Property color value 'color-mix(in oklch, white, blue)'] + expected: FAIL + + [Property color value 'color-mix(in oklch, white 10%, blue)'] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-color/parsing/color-valid-hsl.html.ini b/tests/wpt/meta-legacy-layout/css/css-color/parsing/color-valid-hsl.html.ini index fb22c6bf352..a3d8c949834 100644 --- a/tests/wpt/meta-legacy-layout/css/css-color/parsing/color-valid-hsl.html.ini +++ b/tests/wpt/meta-legacy-layout/css/css-color/parsing/color-valid-hsl.html.ini @@ -49,3 +49,12 @@ [e.style['color'\] = "hsl(120 30 50 / none)" should set the property value] expected: FAIL + + [e.style['color'\] = "hsl(30 -50% 60)" should set the property value] + expected: FAIL + + [e.style['color'\] = "hsl(0 -50 40%)" should set the property value] + expected: FAIL + + [e.style['color'\] = "hsl(30 -50 60)" should set the property value] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-fonts/font-size-adjust-interpolation-math-functions.tentative.html.ini b/tests/wpt/meta-legacy-layout/css/css-fonts/font-size-adjust-interpolation-math-functions.tentative.html.ini new file mode 100644 index 00000000000..ac7fa1b4461 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-fonts/font-size-adjust-interpolation-math-functions.tentative.html.ini @@ -0,0 +1,144 @@ +[font-size-adjust-interpolation-math-functions.tentative.html] + [CSS Transitions: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [CSS Transitions: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [CSS Transitions: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [CSS Transitions: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [CSS Transitions: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [CSS Transitions: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (2) should be [260\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (2) should be [260\]] + expected: FAIL + + [CSS Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [CSS Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [CSS Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [CSS Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [CSS Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [CSS Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (2) should be [260\]] + expected: FAIL + + [Web Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [Web Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [Web Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [Web Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [Web Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [Web Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (2) should be [260\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (2) should be [260\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (2) should be [260\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (2) should be [260\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (2) should be [260\]] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-fonts/font-stretch-interpolation-math-functions.tentative.html.ini b/tests/wpt/meta-legacy-layout/css/css-fonts/font-stretch-interpolation-math-functions.tentative.html.ini new file mode 100644 index 00000000000..30f9f12ae64 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-fonts/font-stretch-interpolation-math-functions.tentative.html.ini @@ -0,0 +1,144 @@ +[font-stretch-interpolation-math-functions.tentative.html] + [CSS Transitions: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (-1) should be [20%\]] + expected: FAIL + + [CSS Transitions: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (0) should be [100%\]] + expected: FAIL + + [CSS Transitions: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (0.125) should be [110%\]] + expected: FAIL + + [CSS Transitions: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (0.875) should be [170%\]] + expected: FAIL + + [CSS Transitions: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (1) should be [180%\]] + expected: FAIL + + [CSS Transitions: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (2) should be [260%\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (-1) should be [20%\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (0) should be [100%\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (0.125) should be [110%\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (0.875) should be [170%\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (1) should be [180%\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (2) should be [260%\]] + expected: FAIL + + [CSS Animations: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (-1) should be [20%\]] + expected: FAIL + + [CSS Animations: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (0) should be [100%\]] + expected: FAIL + + [CSS Animations: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (0.125) should be [110%\]] + expected: FAIL + + [CSS Animations: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (0.875) should be [170%\]] + expected: FAIL + + [CSS Animations: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (1) should be [180%\]] + expected: FAIL + + [CSS Animations: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (2) should be [260%\]] + expected: FAIL + + [Web Animations: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (-1) should be [20%\]] + expected: FAIL + + [Web Animations: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (0) should be [100%\]] + expected: FAIL + + [Web Animations: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (0.125) should be [110%\]] + expected: FAIL + + [Web Animations: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (0.875) should be [170%\]] + expected: FAIL + + [Web Animations: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (1) should be [180%\]] + expected: FAIL + + [Web Animations: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (2) should be [260%\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (-1) should be [20%\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (0) should be [100%\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (0.125) should be [110%\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (0.875) should be [170%\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (1) should be [180%\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (2) should be [260%\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (-1) should be [20%\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (0) should be [100%\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (0.125) should be [110%\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (0.875) should be [170%\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (1) should be [180%\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (2) should be [260%\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (-1) should be [20%\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (0) should be [100%\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (0.125) should be [110%\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (0.875) should be [170%\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (1) should be [180%\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (2) should be [260%\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (-1) should be [20%\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (0) should be [100%\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (0.125) should be [110%\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (0.875) should be [170%\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (1) should be [180%\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (2) should be [260%\]] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-transitions/starting-style-cascade.html.ini b/tests/wpt/meta-legacy-layout/css/css-transitions/starting-style-cascade.html.ini index b29e178ab54..4fcdc07a655 100644 --- a/tests/wpt/meta-legacy-layout/css/css-transitions/starting-style-cascade.html.ini +++ b/tests/wpt/meta-legacy-layout/css/css-transitions/starting-style-cascade.html.ini @@ -1,4 +1,5 @@ [starting-style-cascade.html] + expected: ERROR [Overridden @starting-style - order of appearance] expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-transitions/starting-style-rule-none.html.ini b/tests/wpt/meta-legacy-layout/css/css-transitions/starting-style-rule-none.html.ini index f01ead5128a..1ade9851ece 100644 --- a/tests/wpt/meta-legacy-layout/css/css-transitions/starting-style-rule-none.html.ini +++ b/tests/wpt/meta-legacy-layout/css/css-transitions/starting-style-rule-none.html.ini @@ -1,3 +1,4 @@ [starting-style-rule-none.html] + expected: ERROR [@starting-style with display:none] expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/css-variables/variables-animation-math-functions-tentative.html.ini b/tests/wpt/meta-legacy-layout/css/css-variables/variables-animation-math-functions-tentative.html.ini new file mode 100644 index 00000000000..fc4c1ab570a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/css-variables/variables-animation-math-functions-tentative.html.ini @@ -0,0 +1,108 @@ +[variables-animation-math-functions-tentative.html] + [CSS Transitions: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (-1) should be [20deg\]] + expected: FAIL + + [CSS Transitions: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (0) should be [100deg\]] + expected: FAIL + + [CSS Transitions: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (0.125) should be [110deg\]] + expected: FAIL + + [CSS Transitions: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (0.875) should be [170deg\]] + expected: FAIL + + [CSS Transitions: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (1) should be [180deg\]] + expected: FAIL + + [CSS Transitions: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (2) should be [260deg\]] + expected: FAIL + + [CSS Animations: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (-1) should be [20deg\]] + expected: FAIL + + [CSS Animations: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (0) should be [100deg\]] + expected: FAIL + + [CSS Animations: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (0.125) should be [110deg\]] + expected: FAIL + + [CSS Animations: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (0.875) should be [170deg\]] + expected: FAIL + + [CSS Animations: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (1) should be [180deg\]] + expected: FAIL + + [CSS Animations: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (2) should be [260deg\]] + expected: FAIL + + [Web Animations: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (-1) should be [20deg\]] + expected: FAIL + + [Web Animations: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (0) should be [100deg\]] + expected: FAIL + + [Web Animations: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (0.125) should be [110deg\]] + expected: FAIL + + [Web Animations: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (0.875) should be [170deg\]] + expected: FAIL + + [Web Animations: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (1) should be [180deg\]] + expected: FAIL + + [Web Animations: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (2) should be [260deg\]] + expected: FAIL + + [CSS Transitions: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (-1) should be [20deg\]] + expected: FAIL + + [CSS Transitions: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (0) should be [100deg\]] + expected: FAIL + + [CSS Transitions: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (0.125) should be [110deg\]] + expected: FAIL + + [CSS Transitions: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (0.875) should be [170deg\]] + expected: FAIL + + [CSS Transitions: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (1) should be [180deg\]] + expected: FAIL + + [CSS Transitions: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (2) should be [260deg\]] + expected: FAIL + + [CSS Animations: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (-1) should be [20deg\]] + expected: FAIL + + [CSS Animations: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (0) should be [100deg\]] + expected: FAIL + + [CSS Animations: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (0.125) should be [110deg\]] + expected: FAIL + + [CSS Animations: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (0.875) should be [170deg\]] + expected: FAIL + + [CSS Animations: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (1) should be [180deg\]] + expected: FAIL + + [CSS Animations: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (2) should be [260deg\]] + expected: FAIL + + [Web Animations: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (-1) should be [20deg\]] + expected: FAIL + + [Web Animations: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (0) should be [100deg\]] + expected: FAIL + + [Web Animations: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (0.125) should be [110deg\]] + expected: FAIL + + [Web Animations: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (0.875) should be [170deg\]] + expected: FAIL + + [Web Animations: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (1) should be [180deg\]] + expected: FAIL + + [Web Animations: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (2) should be [260deg\]] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/cssom-view/scroll-behavior-smooth-navigation.html.ini b/tests/wpt/meta-legacy-layout/css/cssom-view/scroll-behavior-smooth-navigation.html.ini index 647c7fb29b2..f4121525268 100644 --- a/tests/wpt/meta-legacy-layout/css/cssom-view/scroll-behavior-smooth-navigation.html.ini +++ b/tests/wpt/meta-legacy-layout/css/cssom-view/scroll-behavior-smooth-navigation.html.ini @@ -4,6 +4,3 @@ [Make sure the page is ready for animation.] expected: FAIL - - [Smooth scrolling while doing history navigation.] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/cssom/getComputedStyle-pseudo-with-argument.html.ini b/tests/wpt/meta-legacy-layout/css/cssom/getComputedStyle-pseudo-with-argument.html.ini new file mode 100644 index 00000000000..2507753f7ef --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/cssom/getComputedStyle-pseudo-with-argument.html.ini @@ -0,0 +1,15 @@ +[getComputedStyle-pseudo-with-argument.html] + [This pseudo-element should parse: ::highlight(name)] + expected: FAIL + + [This pseudo-element should parse: ::highlight(\nname] + expected: FAIL + + [This pseudo-element should parse: ::highlight(name\t] + expected: FAIL + + [This pseudo-element should parse: ::highlight( name ] + expected: FAIL + + [This pseudo-element should parse: ::highlight( n\\61me )] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/mediaqueries/display-mode.html.ini b/tests/wpt/meta-legacy-layout/css/mediaqueries/display-mode.html.ini index 5a1060ad0f6..69978c1538a 100644 --- a/tests/wpt/meta-legacy-layout/css/mediaqueries/display-mode.html.ini +++ b/tests/wpt/meta-legacy-layout/css/mediaqueries/display-mode.html.ini @@ -16,3 +16,6 @@ [Check that display-mode evaluates to true in the boolean context] expected: FAIL + + [Should be known: '(display-mode: picture-in-picture)'] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/selectors/has-style-sharing-pseudo-005.html.ini b/tests/wpt/meta-legacy-layout/css/selectors/has-style-sharing-pseudo-005.html.ini new file mode 100644 index 00000000000..245fb34babc --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/selectors/has-style-sharing-pseudo-005.html.ini @@ -0,0 +1,2 @@ +[has-style-sharing-pseudo-005.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/css/selectors/has-style-sharing-pseudo-006.html.ini b/tests/wpt/meta-legacy-layout/css/selectors/has-style-sharing-pseudo-006.html.ini new file mode 100644 index 00000000000..40739ba8a40 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/css/selectors/has-style-sharing-pseudo-006.html.ini @@ -0,0 +1,2 @@ +[has-style-sharing-pseudo-006.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/dom/events/webkit-transition-end-event.html.ini b/tests/wpt/meta-legacy-layout/dom/events/webkit-transition-end-event.html.ini index eb8b8d11dff..b7fe8688a23 100644 --- a/tests/wpt/meta-legacy-layout/dom/events/webkit-transition-end-event.html.ini +++ b/tests/wpt/meta-legacy-layout/dom/events/webkit-transition-end-event.html.ini @@ -1,5 +1,4 @@ [webkit-transition-end-event.html] - expected: TIMEOUT [dispatchEvent of an transitionend event does not trigger a prefixed event handler or listener] expected: FAIL @@ -13,25 +12,16 @@ expected: FAIL [event types for prefixed and unprefixed transitionend event listeners should be named appropriately] - expected: NOTRUN + expected: FAIL [ontransitionend and onwebkittransitionend are not aliases] expected: FAIL [webkitTransitionEnd event listener should trigger for an animation] - expected: TIMEOUT + expected: FAIL [dispatchEvent of a webkitTransitionEnd event does trigger a prefixed event handler or listener] expected: FAIL [onwebkittransitionend event handler should not trigger if an unprefixed event handler also exists] expected: FAIL - - [webkitTransitionEnd event listener should not trigger if an unprefixed listener also exists] - expected: NOTRUN - - [webkitTransitionEnd event listener should not trigger if an unprefixed event handler also exists] - expected: NOTRUN - - [webkitTransitionEnd event listener is case sensitive] - expected: NOTRUN diff --git a/tests/wpt/meta-legacy-layout/fetch/metadata/generated/css-images.sub.tentative.html.ini b/tests/wpt/meta-legacy-layout/fetch/metadata/generated/css-images.sub.tentative.html.ini index eccca660243..f9de5391ad6 100644 --- a/tests/wpt/meta-legacy-layout/fetch/metadata/generated/css-images.sub.tentative.html.ini +++ b/tests/wpt/meta-legacy-layout/fetch/metadata/generated/css-images.sub.tentative.html.ini @@ -146,6 +146,3 @@ [list-style-image sec-fetch-site - HTTPS downgrade-upgrade] expected: FAIL - - [border-image sec-fetch-dest - Not sent to non-trustworthy same-origin destination] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/fetch/security/dangling-markup/dangling-markup-mitigation-allowed-apis.html.ini b/tests/wpt/meta-legacy-layout/fetch/security/dangling-markup/dangling-markup-mitigation-allowed-apis.html.ini new file mode 100644 index 00000000000..6c1cf88513e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/fetch/security/dangling-markup/dangling-markup-mitigation-allowed-apis.html.ini @@ -0,0 +1,3 @@ +[dangling-markup-mitigation-allowed-apis.html] + [Does not block window.open(`resources/empty.html?\n<`,'_self')] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/fetch/security/dangling-markup/dangling-markup-mitigation-data-url.tentative.sub.html.ini b/tests/wpt/meta-legacy-layout/fetch/security/dangling-markup/dangling-markup-mitigation-data-url.sub.html.ini similarity index 97% rename from tests/wpt/meta-legacy-layout/fetch/security/dangling-markup/dangling-markup-mitigation-data-url.tentative.sub.html.ini rename to tests/wpt/meta-legacy-layout/fetch/security/dangling-markup/dangling-markup-mitigation-data-url.sub.html.ini index 5af5dc2813d..429fb6d6f29 100644 --- a/tests/wpt/meta-legacy-layout/fetch/security/dangling-markup/dangling-markup-mitigation-data-url.tentative.sub.html.ini +++ b/tests/wpt/meta-legacy-layout/fetch/security/dangling-markup/dangling-markup-mitigation-data-url.sub.html.ini @@ -1,4 +1,4 @@ -[dangling-markup-mitigation-data-url.tentative.sub.html] +[dangling-markup-mitigation-data-url.sub.html] [] expected: FAIL diff --git a/tests/wpt/meta/fetch/security/dangling-markup/dangling-markup-mitigation.tentative.html.ini b/tests/wpt/meta-legacy-layout/fetch/security/dangling-markup/dangling-markup-mitigation.html.ini similarity index 93% rename from tests/wpt/meta/fetch/security/dangling-markup/dangling-markup-mitigation.tentative.html.ini rename to tests/wpt/meta-legacy-layout/fetch/security/dangling-markup/dangling-markup-mitigation.html.ini index 3b0a8472abf..c7893561e27 100644 --- a/tests/wpt/meta/fetch/security/dangling-markup/dangling-markup-mitigation.tentative.html.ini +++ b/tests/wpt/meta-legacy-layout/fetch/security/dangling-markup/dangling-markup-mitigation.html.ini @@ -1,4 +1,4 @@ -[dangling-markup-mitigation.tentative.html] +[dangling-markup-mitigation.html] [Fetch: /images/gre\\nen-1x1.png?img=<] expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/fetch/security/dangling-markup/dangling-markup-mitigation.https.html.ini b/tests/wpt/meta-legacy-layout/fetch/security/dangling-markup/dangling-markup-mitigation.https.html.ini new file mode 100644 index 00000000000..50ec2d74bb6 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/fetch/security/dangling-markup/dangling-markup-mitigation.https.html.ini @@ -0,0 +1,3 @@ +[dangling-markup-mitigation.https.html] + [Only blocks dangling markup requests] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/browsers/browsing-the-web/navigating-across-documents/about-srcdoc-navigation-blocked.window.js.ini b/tests/wpt/meta-legacy-layout/html/browsers/browsing-the-web/navigating-across-documents/about-srcdoc-navigation-blocked.window.js.ini index ea9cbb0b4de..4f8ca6048f2 100644 --- a/tests/wpt/meta-legacy-layout/html/browsers/browsing-the-web/navigating-across-documents/about-srcdoc-navigation-blocked.window.js.ini +++ b/tests/wpt/meta-legacy-layout/html/browsers/browsing-the-web/navigating-across-documents/about-srcdoc-navigation-blocked.window.js.ini @@ -1,5 +1,4 @@ [about-srcdoc-navigation-blocked.window.html] - expected: TIMEOUT [Navigations to about:srcdoc via window.location must be blocked] expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/browsers/browsing-the-web/navigating-across-documents/navigate-to-unparseable-url.html.ini b/tests/wpt/meta-legacy-layout/html/browsers/browsing-the-web/navigating-across-documents/navigate-to-unparseable-url.html.ini index 24d2f8ac554..27889a98fb5 100644 --- a/tests/wpt/meta-legacy-layout/html/browsers/browsing-the-web/navigating-across-documents/navigate-to-unparseable-url.html.ini +++ b/tests/wpt/meta-legacy-layout/html/browsers/browsing-the-web/navigating-across-documents/navigate-to-unparseable-url.html.ini @@ -1,3 +1,6 @@ [navigate-to-unparseable-url.html] [location.href setter throws a SyntaxError DOMException for unparseable URLs] expected: FAIL + + [ tag navigate fails for unparseable URLs] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/browsers/browsing-the-web/navigating-across-documents/navigation-unload-cross-origin.sub.window.js.ini b/tests/wpt/meta-legacy-layout/html/browsers/browsing-the-web/navigating-across-documents/navigation-unload-cross-origin.sub.window.js.ini deleted file mode 100644 index 4ecd6d9f753..00000000000 --- a/tests/wpt/meta-legacy-layout/html/browsers/browsing-the-web/navigating-across-documents/navigation-unload-cross-origin.sub.window.js.ini +++ /dev/null @@ -1,3 +0,0 @@ -[navigation-unload-cross-origin.sub.window.html] - [Cross-origin navigation started from unload handler must be ignored] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/browsers/browsing-the-web/navigating-across-documents/replace-before-load/a-click.html.ini b/tests/wpt/meta-legacy-layout/html/browsers/browsing-the-web/navigating-across-documents/replace-before-load/a-click.html.ini deleted file mode 100644 index 60a4fa51f8a..00000000000 --- a/tests/wpt/meta-legacy-layout/html/browsers/browsing-the-web/navigating-across-documents/replace-before-load/a-click.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[a-click.html] - [aElement.click() before the load event must NOT replace] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/browsers/history/the-history-interface/traverse_the_history_2.html.ini b/tests/wpt/meta-legacy-layout/html/browsers/history/the-history-interface/traverse_the_history_2.html.ini new file mode 100644 index 00000000000..5d17a8e9419 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/browsers/history/the-history-interface/traverse_the_history_2.html.ini @@ -0,0 +1,3 @@ +[traverse_the_history_2.html] + [Multiple history traversals, last would be aborted] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/canvas/element/manual/text/canvas.2d.disconnected.html.ini b/tests/wpt/meta-legacy-layout/html/canvas/element/manual/text/canvas.2d.disconnected.html.ini index 5cdcce07c65..17247137cb1 100644 --- a/tests/wpt/meta-legacy-layout/html/canvas/element/manual/text/canvas.2d.disconnected.html.ini +++ b/tests/wpt/meta-legacy-layout/html/canvas/element/manual/text/canvas.2d.disconnected.html.ini @@ -1,2 +1,2 @@ [canvas.2d.disconnected.html] - expected: FAIL + expected: CRASH diff --git a/tests/wpt/meta-legacy-layout/html/canvas/offscreen/layers/2d.layer.drawImage.html.ini b/tests/wpt/meta-legacy-layout/html/canvas/offscreen/layers/2d.layer.drawImage.html.ini new file mode 100644 index 00000000000..e7c121bc3d8 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/canvas/offscreen/layers/2d.layer.drawImage.html.ini @@ -0,0 +1,2 @@ +[2d.layer.drawImage.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/canvas/offscreen/layers/2d.layer.drawImage.w.html.ini b/tests/wpt/meta-legacy-layout/html/canvas/offscreen/layers/2d.layer.drawImage.w.html.ini new file mode 100644 index 00000000000..bfd27f9b357 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/canvas/offscreen/layers/2d.layer.drawImage.w.html.ini @@ -0,0 +1,2 @@ +[2d.layer.drawImage.w.html] + expected: TIMEOUT diff --git a/tests/wpt/meta-legacy-layout/html/dom/elements/global-attributes/dir-assorted.window.js.ini b/tests/wpt/meta-legacy-layout/html/dom/elements/global-attributes/dir-assorted.window.js.ini index 6d541106aee..64245a9ccfe 100644 --- a/tests/wpt/meta-legacy-layout/html/dom/elements/global-attributes/dir-assorted.window.js.ini +++ b/tests/wpt/meta-legacy-layout/html/dom/elements/global-attributes/dir-assorted.window.js.ini @@ -94,3 +94,9 @@ [directionality of bdi elements: no dir attribute empty in rtl parent] expected: FAIL + + [directionality of bdi elements: dir=auto numbers in ltr parent] + expected: FAIL + + [directionality of bdi elements: dir=auto numbers in rtl parent] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/dom/elements/global-attributes/dir-shadow-42.html.ini b/tests/wpt/meta-legacy-layout/html/dom/elements/global-attributes/dir-shadow-42.html.ini new file mode 100644 index 00000000000..1a4b5035cc0 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/dom/elements/global-attributes/dir-shadow-42.html.ini @@ -0,0 +1,2 @@ +[dir-shadow-42.html] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-001.tentative.html.ini b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-001.tentative.html.ini new file mode 100644 index 00000000000..346d7282c0a --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-001.tentative.html.ini @@ -0,0 +1,3 @@ +[element-render-blocking-001.tentative.html] + [blocking defers frames until full parsing] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-003.tentative.html.ini b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-003.tentative.html.ini new file mode 100644 index 00000000000..92a6b95f046 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-003.tentative.html.ini @@ -0,0 +1,3 @@ +[element-render-blocking-003.tentative.html] + [adding link in the head defers frames] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-004.tentative.html.ini b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-004.tentative.html.ini deleted file mode 100644 index b3fd8fa38aa..00000000000 --- a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-004.tentative.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[element-render-blocking-004.tentative.html] - [removing link in the head makes it no longer blocking] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-005.tentative.html.ini b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-005.tentative.html.ini deleted file mode 100644 index 42f9c7342db..00000000000 --- a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-005.tentative.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[element-render-blocking-005.tentative.html] - [removing 'blocking' makes it no longer blocking] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-006.tentative.html.ini b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-006.tentative.html.ini new file mode 100644 index 00000000000..a6e9373200b --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-006.tentative.html.ini @@ -0,0 +1,3 @@ +[element-render-blocking-006.tentative.html] + [adding 'blocking=render' in the head makes it blocking] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-007.tentative.html.ini b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-007.tentative.html.ini deleted file mode 100644 index 6c63b2db412..00000000000 --- a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-007.tentative.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[element-render-blocking-007.tentative.html] - [link with non-matching media has no effect] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-008.tentative.html.ini b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-008.tentative.html.ini new file mode 100644 index 00000000000..9561d696beb --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-008.tentative.html.ini @@ -0,0 +1,3 @@ +[element-render-blocking-008.tentative.html] + [changing media to matching causes link to have an effect] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-009.tentative.html.ini b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-009.tentative.html.ini deleted file mode 100644 index 3c105de1140..00000000000 --- a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-009.tentative.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[element-render-blocking-009.tentative.html] - [changing media to non-matching makes it non blocking] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-010.tentative.html.ini b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-010.tentative.html.ini deleted file mode 100644 index ef4e023dfa6..00000000000 --- a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-010.tentative.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[element-render-blocking-010.tentative.html] - [changing rel to non-expect makes it non blocking] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-011.tentative.html.ini b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-011.tentative.html.ini new file mode 100644 index 00000000000..0675b813616 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-011.tentative.html.ini @@ -0,0 +1,3 @@ +[element-render-blocking-011.tentative.html] + [changing rel to expect in the head causes it to be blocking] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-012.tentative.html.ini b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-012.tentative.html.ini new file mode 100644 index 00000000000..1e31c3f000e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-012.tentative.html.ini @@ -0,0 +1,3 @@ +[element-render-blocking-012.tentative.html] + [adding href in the head makes it blocking] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-013.tentative.html.ini b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-013.tentative.html.ini deleted file mode 100644 index 9ce1660b44c..00000000000 --- a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-013.tentative.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[element-render-blocking-013.tentative.html] - [removing href makes it no longer blocking] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-014.tentative.html.ini b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-014.tentative.html.ini deleted file mode 100644 index d338af1ff52..00000000000 --- a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-014.tentative.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[element-render-blocking-014.tentative.html] - [link in the body has no effect] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-015.tentative.html.ini b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-015.tentative.html.ini deleted file mode 100644 index 0dd5e871106..00000000000 --- a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-015.tentative.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[element-render-blocking-015.tentative.html] - [removing link the body makes it non blocking] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-016.tentative.html.ini b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-016.tentative.html.ini deleted file mode 100644 index 7718cf5bef3..00000000000 --- a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-016.tentative.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[element-render-blocking-016.tentative.html] - [removing 'blocking' in the body makes it non blocking] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-017.tentative.html.ini b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-017.tentative.html.ini deleted file mode 100644 index 3c50d660460..00000000000 --- a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-017.tentative.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[element-render-blocking-017.tentative.html] - [adding 'blocking=render' in the body has no effect] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-018.tentative.html.ini b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-018.tentative.html.ini deleted file mode 100644 index 98fda576808..00000000000 --- a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-018.tentative.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[element-render-blocking-018.tentative.html] - [changing media to matching in the body has no effect] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-019.tentative.html.ini b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-019.tentative.html.ini deleted file mode 100644 index 55b1e8fcbc4..00000000000 --- a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-019.tentative.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[element-render-blocking-019.tentative.html] - [changing media to non-matching in the body makes it non blocking] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-020.tentative.html.ini b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-020.tentative.html.ini deleted file mode 100644 index d9ca447f339..00000000000 --- a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-020.tentative.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[element-render-blocking-020.tentative.html] - [changing rel to non-expect in the body makes it non blocking] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-021.tentative.html.ini b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-021.tentative.html.ini deleted file mode 100644 index 9944597e235..00000000000 --- a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-021.tentative.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[element-render-blocking-021.tentative.html] - [changing rel to expect in the body has no effect] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-022.tentative.html.ini b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-022.tentative.html.ini deleted file mode 100644 index 17d86d7881a..00000000000 --- a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-022.tentative.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[element-render-blocking-022.tentative.html] - [adding href in the body has no effect] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-023.tentative.html.ini b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-023.tentative.html.ini deleted file mode 100644 index a0bd7e500ca..00000000000 --- a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-023.tentative.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[element-render-blocking-023.tentative.html] - [removing href in the body makes it non blocking] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-024.tentative.html.ini b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-024.tentative.html.ini new file mode 100644 index 00000000000..3e821238f4e --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-024.tentative.html.ini @@ -0,0 +1,3 @@ +[element-render-blocking-024.tentative.html] + [unknown href causes the whole document to be blocked] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-025.tentative.html.ini b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-025.tentative.html.ini deleted file mode 100644 index 6d1a662295c..00000000000 --- a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-025.tentative.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[element-render-blocking-025.tentative.html] - [adding an id in the body satisfies render block] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-026.tentative.html.ini b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-026.tentative.html.ini deleted file mode 100644 index 76fadb90c93..00000000000 --- a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-026.tentative.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[element-render-blocking-026.tentative.html] - [removing id after it was renderer keeps render block satisfied] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-027.tentative.html.ini b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-027.tentative.html.ini new file mode 100644 index 00000000000..61f04ef7a4d --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/dom/render-blocking/element-render-blocking-027.tentative.html.ini @@ -0,0 +1,3 @@ +[element-render-blocking-027.tentative.html] + [unknown href causes the whole document to be blocked (with href changes!)] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-far.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-far.html.ini new file mode 100644 index 00000000000..891c20353ba --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-far.html.ini @@ -0,0 +1,3 @@ +[iframe-loading-lazy-in-scroller-far.html] + [Test that lazy-loaded iframes do not load when far from viewport.] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-horizontal-far.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-horizontal-far.html.ini new file mode 100644 index 00000000000..ccd3db41d22 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-horizontal-far.html.ini @@ -0,0 +1,2 @@ +[iframe-loading-lazy-in-scroller-horizontal-far.html] + expected: ERROR diff --git a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-2.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-2.html.ini index 6bec7a732b8..49e3449f144 100644 --- a/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-2.html.ini +++ b/tests/wpt/meta-legacy-layout/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_nonescaping-2.html.ini @@ -1,4 +1,4 @@ [iframe_sandbox_popups_nonescaping-2.html] type: testharness [Check that popups from a sandboxed iframe do not escape the sandbox] - expected: FAIL + expected: NOTRUN diff --git a/tests/wpt/meta-legacy-layout/html/semantics/forms/form-submission-0/text-plain.window.js.ini b/tests/wpt/meta-legacy-layout/html/semantics/forms/form-submission-0/text-plain.window.js.ini index 4d8c04fb3bd..b6c08d28a2c 100644 --- a/tests/wpt/meta-legacy-layout/html/semantics/forms/form-submission-0/text-plain.window.js.ini +++ b/tests/wpt/meta-legacy-layout/html/semantics/forms/form-submission-0/text-plain.window.js.ini @@ -175,3 +175,12 @@ [text/plain: 0x00 in name (normal form)] expected: FAIL + + [text/plain: 0x00 in value (formdata event)] + expected: FAIL + + [text/plain: \\n in value (normal form)] + expected: FAIL + + [text/plain: \\r\\n in filename (formdata event)] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/semantics/forms/the-form-element/form-indexed-element-shadow.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/forms/the-form-element/form-indexed-element-shadow.html.ini new file mode 100644 index 00000000000..1dcebc9a5ff --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/forms/the-form-element/form-indexed-element-shadow.html.ini @@ -0,0 +1,3 @@ +[form-indexed-element-shadow.html] + [form.elements: indexed access reflects DOM order, not flat tree] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/html/semantics/popovers/popover-open-overflow-display-2.html.ini b/tests/wpt/meta-legacy-layout/html/semantics/popovers/popover-open-overflow-display-2.html.ini new file mode 100644 index 00000000000..2d7a15adecb --- /dev/null +++ b/tests/wpt/meta-legacy-layout/html/semantics/popovers/popover-open-overflow-display-2.html.ini @@ -0,0 +1,18 @@ +[popover-open-overflow-display-2.html] + [Absolute popover inside absolute element] + expected: FAIL + + [Absolute element inside absolute popover] + expected: FAIL + + [Fixed popover inside fixed element] + expected: FAIL + + [Fixed element inside fixed popover] + expected: FAIL + + [Absolute popover inside fixed element] + expected: FAIL + + [Fixed element inside absolute popover] + expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/resource-timing/test_resource_timing.https.html.ini b/tests/wpt/meta-legacy-layout/resource-timing/test_resource_timing.https.html.ini index 32d149c8ae9..54e3ef35665 100644 --- a/tests/wpt/meta-legacy-layout/resource-timing/test_resource_timing.https.html.ini +++ b/tests/wpt/meta-legacy-layout/resource-timing/test_resource_timing.https.html.ini @@ -68,6 +68,3 @@ [PerformanceEntry has correct name, initiatorType, startTime, and duration (link)] expected: NOTRUN - - [PerformanceEntry has correct name, initiatorType, startTime, and duration (img)] - expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/webmessaging/without-ports/018.html.ini b/tests/wpt/meta-legacy-layout/webmessaging/without-ports/018.html.ini new file mode 100644 index 00000000000..b7b36c1d3a4 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/webmessaging/without-ports/018.html.ini @@ -0,0 +1,4 @@ +[018.html] + expected: TIMEOUT + [origin of the script that invoked the method, javascript:] + expected: TIMEOUT diff --git a/tests/wpt/meta-legacy-layout/workers/constructors/Worker/Worker-constructor.html.ini b/tests/wpt/meta-legacy-layout/workers/constructors/Worker/Worker-constructor.html.ini new file mode 100644 index 00000000000..80f9a4f15b8 --- /dev/null +++ b/tests/wpt/meta-legacy-layout/workers/constructors/Worker/Worker-constructor.html.ini @@ -0,0 +1,2 @@ +[Worker-constructor.html] + expected: ERROR diff --git a/tests/wpt/meta-legacy-layout/workers/same-site-cookies/third-party.default.tentative.sub.https.window.js.ini b/tests/wpt/meta-legacy-layout/workers/same-site-cookies/third-party.default.tentative.sub.https.window.js.ini index eddd0aa6c39..3280d281582 100644 --- a/tests/wpt/meta-legacy-layout/workers/same-site-cookies/third-party.default.tentative.sub.https.window.js.ini +++ b/tests/wpt/meta-legacy-layout/workers/same-site-cookies/third-party.default.tentative.sub.https.window.js.ini @@ -1,3 +1,4 @@ [third-party.default.tentative.sub.https.window.html] + expected: ERROR [Check SharedWorker sameSiteCookies option default for third-party] - expected: FAIL + expected: TIMEOUT diff --git a/tests/wpt/meta-legacy-layout/workers/same-site-cookies/third-party.none.tentative.sub.https.window.js.ini b/tests/wpt/meta-legacy-layout/workers/same-site-cookies/third-party.none.tentative.sub.https.window.js.ini index 46f1697bd35..b9f12992e36 100644 --- a/tests/wpt/meta-legacy-layout/workers/same-site-cookies/third-party.none.tentative.sub.https.window.js.ini +++ b/tests/wpt/meta-legacy-layout/workers/same-site-cookies/third-party.none.tentative.sub.https.window.js.ini @@ -1,3 +1,4 @@ [third-party.none.tentative.sub.https.window.html] + expected: ERROR [Check SharedWorker sameSiteCookies option none for third-party] - expected: FAIL + expected: TIMEOUT diff --git a/tests/wpt/meta-legacy-layout/xhr/xhr-timeout-longtask.any.js.ini b/tests/wpt/meta-legacy-layout/xhr/xhr-timeout-longtask.any.js.ini deleted file mode 100644 index 36b2068c5a6..00000000000 --- a/tests/wpt/meta-legacy-layout/xhr/xhr-timeout-longtask.any.js.ini +++ /dev/null @@ -1,6 +0,0 @@ -[xhr-timeout-longtask.any.worker.html] - [Long tasks should not trigger load timeout] - expected: FAIL - - -[xhr-timeout-longtask.any.html] diff --git a/tests/wpt/meta/MANIFEST.json b/tests/wpt/meta/MANIFEST.json index a00e44c55ba..c39d1f22ab2 100644 --- a/tests/wpt/meta/MANIFEST.json +++ b/tests/wpt/meta/MANIFEST.json @@ -3774,6 +3774,13 @@ {} ] ], + "chrome-first-letter-container-query-crash.html": [ + "6647e38731516ff001beccffb8a9969125a04a17", + [ + null, + {} + ] + ], "chrome-first-letter-inside-replaced-crash.html": [ "cf9e2d71633e5c5c45ba458b394c986a21acc13d", [ @@ -4211,6 +4218,13 @@ ] ], "crashtests": { + "eol-spaces-bidi-min-content-crash.html": [ + "d8c3ec337b38d8b2cba6313d7cc3034b393b1406", + [ + null, + {} + ] + ], "line-break-float-crash.html": [ "bdf47c3e8ae024e596629dc4061cc7e075503150", [ @@ -6591,6 +6605,13 @@ {} ] ], + "select-attribute-crash.html": [ + "5330411a5dcae0e9becb76bad1897c681dad7419", + [ + null, + {} + ] + ], "select-in-table-crash.html": [ "d1f1cee2177a1e58d635c8e96f257cee557a39ea", [ @@ -20465,6 +20486,15 @@ ] ] }, + "event-timing": { + "interactionid-composition-manual.html": [ + "2b4f2aab0943c1f41f8a8ba9092029ce812df5f6", + [ + null, + {} + ] + ] + }, "feature-policy": { "experimental-features": { "vertical-scroll-disabled-frame-no-scroll-manual.tentative.html": [ @@ -150623,6 +150653,19 @@ {} ] ], + "out-of-flow-in-multicolumn-117.html": [ + "886a12acaba969b0b514342b04a3992bde8897be", + [ + null, + [ + [ + "/css/reference/ref-filled-green-100px-square.xht", + "==" + ] + ], + {} + ] + ], "overflow-clip-000.html": [ "72b10f5cdd3092a042f1f90bff04e9428d61608e", [ @@ -209140,7 +209183,7 @@ ] ], "two-clip-path-animation-diff-length1.html": [ - "f647c1af59095735217eb60e51291a64b79fce70", + "5f6bb7299fc592a9f11f1708bdd6f41617bf5ca0", [ null, [ @@ -216706,6 +216749,19 @@ {} ] ], + "multicol-fill-balance-029.html": [ + "837141bd0593716c5b5fb46ef3f68efb4aaf077e", + [ + null, + [ + [ + "/css/reference/ref-filled-green-100px-square.xht", + "==" + ] + ], + {} + ] + ], "multicol-fill-balance-nested-000.html": [ "5e466df8077545b4d6474389d296bc26c5b28b86", [ @@ -227423,6 +227479,19 @@ {} ] ], + "first-letter-with-before-after.html": [ + "95150a0e9627994b7248ba1730fc9abaef7f31bc", + [ + null, + [ + [ + "/css/css-pseudo/first-letter-with-before-after-ref.html", + "==" + ] + ], + {} + ] + ], "first-letter-with-preceding-new-line.html": [ "5243b042882328443daf07e6f05f1cac68cede84", [ @@ -292880,6 +292949,19 @@ } ] ], + "class-specificity.html": [ + "55de2ec3884c174a4978be193fde2220fb0c5164", + [ + null, + [ + [ + "/css/css-view-transitions/class-specificity-ref.html", + "==" + ] + ], + {} + ] + ], "content-smaller-than-box-size.html": [ "d2b8f63ca068ffc744b7b1a7b0ca8d1c25a32854", [ @@ -317911,6 +317993,110 @@ {} ] ], + "has-style-sharing-pseudo-001.html": [ + "6edb3da03eed5c9328d194c4d365f04b19a5025b", + [ + null, + [ + [ + "/css/selectors/has-style-sharing-pseudo-001-ref.html", + "==" + ] + ], + {} + ] + ], + "has-style-sharing-pseudo-002.html": [ + "59dd2a9a1b5f38a08c35c26bb255d675b6551903", + [ + null, + [ + [ + "/css/selectors/has-style-sharing-pseudo-002-ref.html", + "==" + ] + ], + {} + ] + ], + "has-style-sharing-pseudo-003.html": [ + "f94636f5dcc234796e408a80940d7ad267c258c1", + [ + null, + [ + [ + "/css/selectors/has-style-sharing-pseudo-003-ref.html", + "==" + ] + ], + {} + ] + ], + "has-style-sharing-pseudo-004.html": [ + "82e42005d0630b1c6b5a72c4b82ad63541bae077", + [ + null, + [ + [ + "/css/selectors/has-style-sharing-pseudo-004-ref.html", + "==" + ] + ], + {} + ] + ], + "has-style-sharing-pseudo-005.html": [ + "9e7cbe96fcf74c345029e51849115e8afddc5d12", + [ + null, + [ + [ + "/css/selectors/has-style-sharing-pseudo-005-ref.html", + "==" + ] + ], + {} + ] + ], + "has-style-sharing-pseudo-006.html": [ + "d8747abd4a4a310a7f728d9319d6c0bf0f6e7e29", + [ + null, + [ + [ + "/css/selectors/has-style-sharing-pseudo-006-ref.html", + "==" + ] + ], + {} + ] + ], + "has-style-sharing-pseudo-007.html": [ + "0e245f5aaff172483e0cbaa1e44affdb58e5868c", + [ + null, + [ + [ + "/css/selectors/has-style-sharing-pseudo-007-ref.html", + "==" + ] + ], + {} + ] + ], + "has-style-sharing-pseudo-008.html": [ + "59844419ffaa467afb51daee7f3c387a85a56ab6", + [ + null, + [ + [ + "/css/selectors/has-style-sharing-pseudo-008-ref.html", + "==" + ] + ], + {} + ] + ], "has-visited.html": [ "8fe322c8b1751b2f4232e9898fa71bab5e203cde", [ @@ -322751,6 +322937,19 @@ {} ] ], + "2d.layer.drawImage.html": [ + "58206c3eb87408b2993740cf9912bf271d84d3f1", + [ + null, + [ + [ + "/html/canvas/element/layers/2d.layer.drawImage-expected.html", + "==" + ] + ], + {} + ] + ], "2d.layer.flush-on-frame-presentation.html": [ "c8a118f8a2e860e4110f8b254fe08408930173ff", [ @@ -325050,6 +325249,32 @@ {} ] ], + "2d.layer.drawImage.html": [ + "37718f6f2c5290c91879564dee61039bd3c93142", + [ + null, + [ + [ + "/html/canvas/offscreen/layers/2d.layer.drawImage-expected.html", + "==" + ] + ], + {} + ] + ], + "2d.layer.drawImage.w.html": [ + "78a235597d53188057a570f34632aba7147e9123", + [ + null, + [ + [ + "/html/canvas/offscreen/layers/2d.layer.drawImage-expected.html", + "==" + ] + ], + {} + ] + ], "2d.layer.global-filter.html": [ "2388a06a964222700dd1f71b57ad0b7004becfbb", [ @@ -327067,6 +327292,19 @@ {} ] ], + "dir-shadow-42.html": [ + "b9697678cbc79cc9f5c7e4721c5ce1ec241f6168", + [ + null, + [ + [ + "/html/dom/elements/global-attributes/dir-shadow-42-ref.html", + "==" + ] + ], + {} + ] + ], "dir_auto-EN-L.html": [ "fa8d793bd043d008a98020063dcea6549e9d3e19", [ @@ -327133,7 +327371,7 @@ ] ], "dir_auto-N-EN.html": [ - "467b4d093943953da64513d8344598f4c239fd80", + "5d948d34568aa5481ffc6f438190d1677ee0839e", [ null, [ @@ -333913,6 +334151,19 @@ {} ] ], + "top-layer-remove-popover-attribute.html": [ + "3827e90c5bdb01c1b59fc159bd312a2afbd09342", + [ + null, + [ + [ + "/html/semantics/interactive-elements/the-dialog-element/top-layer-remove-popover-attribute-ref.html", + "==" + ] + ], + {} + ] + ], "top-layer-stacking-correct-order-remove-readd.html": [ "4fdd28820dbb27af2d397d747573e0bd7cbecf35", [ @@ -334274,7 +334525,7 @@ }, "the-bdi-element": { "bdi-auto-dir-default.html": [ - "3a9d90c76b33795c0760796762400ca9662f7db5", + "e658500a4ebf02ef92b416a060d5c7335d640ca2", [ null, [ @@ -342176,7 +342427,7 @@ ] ], "marker-path-001.svg": [ - "7fb4adf4277321eb69e50fecb9018c1950aef4ca", + "75bc5703b7b0851b92727cb00f078960346ce500", [ null, [ @@ -342185,7 +342436,23 @@ "==" ] ], - {} + { + "fuzzy": [ + [ + null, + [ + [ + 0, + 8 + ], + [ + 0, + 8 + ] + ] + ] + ] + } ] ], "marker-path-002.svg": [ @@ -342396,6 +342663,19 @@ {} ] ], + "paintorder-text-decorations.svg": [ + "5b313220bd30a11aceaba1a45bcbaab44207ff9a", + [ + null, + [ + [ + "/svg/painting/reftests/paintorder-text-decorations-ref.svg", + "==" + ] + ], + {} + ] + ], "percentage-attribute.svg": [ "d245999db08ec13ea34c6c832483d3c1135ceec0", [ @@ -342818,6 +343098,19 @@ {} ] ], + "gradient-transform-03.svg": [ + "25e304614dbe43422e5d0daa9b9e03f9944aabe0", + [ + null, + [ + [ + "/svg/pservers/reftests/reference/green-100x100.svg", + "==" + ] + ], + {} + ] + ], "meshgradient-basic-001.svg": [ "24290d40d6c37583d86aae4a098293c6cb8a6653", [ @@ -342974,6 +343267,19 @@ {} ] ], + "pattern-transform-03.svg": [ + "b2e0e7aaa2ef1b107586ea03230dc173d1133de1", + [ + null, + [ + [ + "/svg/pservers/reftests/reference/green-100x100.svg", + "==" + ] + ], + {} + ] + ], "pattern-viewbox-01.svg": [ "618b8fc29e69d2624d5556d6bbcdba600ce21a4a", [ @@ -348061,7 +348367,7 @@ [] ], ".taskcluster.yml": [ - "53518a9498a7cd3dafcc6f0a0ca5b952c0fd9330", + "38af7fa10af8396c8b41732b7b617bf408df0446", [] ], ".well-known": { @@ -415304,6 +415610,10 @@ "8ebb00b9dcc10f43df0efea20991af653f5cb691", [] ], + "first-letter-with-before-after-ref.html": [ + "89bab0829ab6c078e490fd17cf8e684fe23a5c11", + [] + ], "first-letter-with-quote-ref.html": [ "0eebf0a51f10c90c64736e61a1403379fb9ed725", [] @@ -424708,7 +425018,7 @@ [] ], "helper.js": [ - "d5fa61b15eff12f48d0a76df51595b104579f757", + "a37aae918300d1136debbebbfbb75d46259e0bce", [] ], "import-green.css": [ @@ -426898,6 +427208,10 @@ "c47b31e4d5a3a2121bf8191c1e612b5a5f2f1663", [] ], + "class-specificity-ref.html": [ + "5c882ada040ec700eda008e016d0a1827e31d368", + [] + ], "content-object-fit-fill-ref.html": [ "b86e0a95a172bcc191f17d954b2cf6bd710a1fd1", [] @@ -432014,6 +432328,38 @@ "0f26fb2987e0dbc25573f53c5c37d8676f7db8ec", [] ], + "has-style-sharing-pseudo-001-ref.html": [ + "c45db87fa321ffd68e0cec1f3c4c07d141f1b3c9", + [] + ], + "has-style-sharing-pseudo-002-ref.html": [ + "a8138c257265bfd0f7a66ddc7076133ac0307868", + [] + ], + "has-style-sharing-pseudo-003-ref.html": [ + "a9b8e248d69b49a8384279aee653eceaaf482715", + [] + ], + "has-style-sharing-pseudo-004-ref.html": [ + "0d97e1d1c2fbcfda33eeffac68597e62862daf3a", + [] + ], + "has-style-sharing-pseudo-005-ref.html": [ + "97c2bf2ade16862b795e4eb84a14934b59cb672a", + [] + ], + "has-style-sharing-pseudo-006-ref.html": [ + "d052141d8ede8c87993e0f02d1181d32b88a4cec", + [] + ], + "has-style-sharing-pseudo-007-ref.html": [ + "24f4502b786c071cacfa92702db5326918052cf6", + [] + ], + "has-style-sharing-pseudo-008-ref.html": [ + "ad293bab59eff620f595b4b1a3e471467082b8a3", + [] + ], "has-visited-ref.html": [ "3f54e2e3914f62a81c3199bbe3d8c0339b9c2ba8", [] @@ -433224,7 +433570,13 @@ "WEB_FEATURES.yml": [ "cf364db88ef847fae3df7ae1803d9ef7dd01f1c3", [] - ] + ], + "support": { + "focus-opener.js": [ + "679eef3b22e80cddaab0fa8866a786be6a081840", + [] + ] + } }, "document-policy": { "META.yml": [ @@ -436888,8 +437240,12 @@ "e2b453f4638fd0efd8a0b89e6cdae05d351b8b12", [] ], + "unreached.https.html": [ + "bd389ec4fbd5a8f47b83f7c8299d5669890120cd", + [] + ], "utils.js": [ - "cbea173f17a6ad89a9d5dea3e304cff534971edb", + "77af9449b293c3868ea517c05bee9cdf74a2f9c4", [] ], "web-bluetooth-inner.html": [ @@ -438358,11 +438714,19 @@ "security": { "dangling-markup": { "resources": { + "empty.html": [ + "0e76edd65b7baf5316fc9d0c4da59a3502e4c27a", + [] + ], "helper.js": [ "100bcba7b5184a12955c6c99ce21c483301ef446", [] ] - } + }, + "service-worker.js": [ + "837e216a013be499cf8f2f0b7681d851644de4ed", + [] + ] }, "support": { "embedded-credential-window.sub.html": [ @@ -438440,7 +438804,7 @@ [] ], "decision-logic.sub.py": [ - "78d459e3f9dac36241d8cf92c33fd031c7046af0", + "3a23f981620d6a467a293333b3eff5ee1df098fc", [] ], "direct-from-seller-signals.py": [ @@ -438456,7 +438820,7 @@ [] ], "fledge-util.sub.js": [ - "69573d499832b1c7f61c8caae9b2c3bf8d839f02", + "4fc77933634aa276e4ea83bd53be5ad612789e1d", [] ], "fledge_http_server_util.py": [ @@ -438496,7 +438860,7 @@ [] ], "trusted-scoring-signals.py": [ - "80488a5d6af99e33654b3d14661ba0ec0e1a9468", + "eccef5e76283c61e05adfebd510a3361c4391fe0", [] ], "wasm-helper.py": [ @@ -443040,6 +443404,10 @@ "60f78d80965fd0dec9ea11bc21d3652fc3d7bad1", [] ], + "2d.layer.drawImage-expected.html": [ + "26f6e752149102af7cd3bda76045092545712ba4", + [] + ], "2d.layer.flush-on-frame-presentation-expected.html": [ "532c29576cff610107dec60f91ea8dd2231df888", [] @@ -444120,6 +444488,10 @@ "60f78d80965fd0dec9ea11bc21d3652fc3d7bad1", [] ], + "2d.layer.drawImage-expected.html": [ + "26f6e752149102af7cd3bda76045092545712ba4", + [] + ], "2d.layer.global-filter-expected.html": [ "88057fc354a4e593191a4b3d5c94cdfa7d466126", [] @@ -444575,7 +444947,7 @@ [] ], "layers.yaml": [ - "a44cb2ea2c1e379a130e084839e0c4ba0416dd7e", + "dfef55d081b9d46ba71d216ec76cbf9c0fe6f338", [] ], "line-styles.yaml": [ @@ -445565,7 +445937,11 @@ [] ], "dir-shadow-41-ref.html": [ - "b52e08df20e88ae91b6d38a6ff5a5e55d4b59ca3", + "79b844edbe513b49686bd720a6497b68e7cd25c7", + [] + ], + "dir-shadow-42-ref.html": [ + "8ea1100246005bc17400d6abc3ece2ee1dc5810a", [] ], "dir-shadow-utils.js": [ @@ -445593,7 +445969,7 @@ [] ], "dir_auto-N-EN-ref.html": [ - "0d938b2e168beecdacecf479798079ac2a99c899", + "496d699d73c79cff07633af95c410e2c4ba0afa3", [] ], "dir_auto-N-L-ref.html": [ @@ -445963,7 +446339,7 @@ [] ], "utils.js": [ - "9a890ab685c675ee5baca618ce5d85b367761760", + "8a9a537e96df89a2944d62dcc2915b8a51796fd5", [] ] } @@ -452280,7 +452656,7 @@ [] ], "stylable-select-styles.css": [ - "726380f940d2e32b390269afca9617c88e3bb251", + "a7e9a87cdfa96a56cd82da56e78717efb4b0c966", [] ] }, @@ -452690,6 +453066,10 @@ "01eff8c4de5f1f5e6a951f177fd0e920ca289d4b", [] ], + "top-layer-remove-popover-attribute-ref.html": [ + "7aadaf51b72692f99f0e391d8c6a6be807e243c7", + [] + ], "top-layer-stacking-correct-order-remove-readd-ref.html": [ "392d1ca46ec175f841e06d5ca5e585a5a5743b9f", [] @@ -462303,7 +462683,7 @@ ], "resources": { "orientation-event-helpers.js": [ - "01e91c62aecd4d8f58be304f095bdbb4d99b1d37", + "dab876fc6a320bbf11e9bc85b28631850b094269", [] ] } @@ -463418,7 +463798,7 @@ }, "pointerevents": { "META.yml": [ - "1962feaf8af08b003e519fa525271e70451984d5", + "e6dbf9deecfb9478166316cbdfd451479b846152", [] ], "README.md": [ @@ -470132,6 +470512,10 @@ "a475ee4f96ebdba21095eae2ecf98e524d344d72", [] ], + "credentials-test-helper.py": [ + "81a988e3581f0567a29a58b7303f124c5cc5e38e", + [] + ], "delete-key.https.html": [ "41595f3ee3868a1e7fa1f866bcc8936de16f5cbd", [] @@ -471174,16 +471558,24 @@ [] ], "resources": { + "bless_cross_site_permissions.html": [ + "c3c5b6c0b073d0c0c15bfb6d78ef2335bd228034", + [] + ], "echo-cookie-header.py": [ "f1599e3a89919adfe0a0de60515ef1d44a898190", [] ], "embedded_responder.js": [ - "bc13c7e7e8259aa67a99a38dd6fa3c31f3bb269d", + "228a262f16ecefc0804efbeeaa5d6f97c4d919a7", [] ], - "embedded_worker.js": [ - "f3a0fb257adf204431a2df4ade796c74c0643950", + "embedded_worker.py": [ + "0aa457657f1f571a5d9ac2d197e77801476b73ef", + [] + ], + "get_cookies.py": [ + "07e8c2dae3ceaa86766b2050784850a7f5ca23b8", [] ], "hasStorageAccess-ABA-iframe.https.html": [ @@ -471230,12 +471622,24 @@ "e937ba2ca4eca2421ea0025c5a527d3bb6b574f4", [] ], + "set_cookies.py": [ + "fe182dd00cb6c3374e652072a16b7260039aab39", + [] + ], + "shared-worker-cookies.py": [ + "9307c4112c5fa0af31309d2a339ec0fc3814cc8c", + [] + ], + "shared-worker-relay.js": [ + "c94acefec999cef61e16d49fcfb529fe60e7b98f", + [] + ], "storage-access-beyond-cookies-iframe-iframe.html": [ - "ffb419f7995ff46a6fdc6b6846b534fb1cef71ce", + "2d5e22fa7199cb720ad3a40a16b88499077b48d9", [] ], "storage-access-beyond-cookies-iframe.sub.html": [ - "8c30973416e3e2793629d0a1816b7287fc498561", + "a9247a00020b16cb9c18c10778cfe48446022aca", [] ] } @@ -471917,6 +472321,10 @@ "7822a80b942fee54a87106d7def13429454cc26e", [] ], + "paintorder-text-decorations-ref.svg": [ + "c209d88a77c75417fa0f75e0332d0923abf9b4e3", + [] + ], "percentage-ref.svg": [ "610a3ddb2d21da119fb4a53f5f351dff0190880c", [] @@ -472759,7 +473167,7 @@ ], "tasks": { "test.yml": [ - "ea9c7f9daea38df2d1ccbfde3932e6ba964aa656", + "d62312737c843cd2050b5a9730f7a7b3ba8f8c5e", [] ] }, @@ -472829,7 +473237,7 @@ [] ], "Dockerfile": [ - "a9162559ab87641da1c49f9f4b5bbb9af01074c8", + "e1ff6b9020515f4cca024614dff04021ff6974b5", [] ], "README.md": [ @@ -482876,7 +483284,7 @@ [] ], "storage.py": [ - "4dfc82695e3c23175c6c63b4410f5e1d67fe62f3", + "882306ea72b9054287dbdbc3ebdce8f02488d943", [] ] }, @@ -482957,7 +483365,7 @@ [] ], "browser.py": [ - "c8998fee4aaf17bd82820aca5d41d103ef6bfa78", + "c7f67d334e13a6c5be5ce0cf74c5fc94f00631d9", [] ], "commands.json": [ @@ -482997,7 +483405,7 @@ [] ], "run.py": [ - "dcf721ef39f8382bda51155a10517e29eedfcb51", + "fd5382b45c30140798df68ca96c402102577538c", [] ], "testfiles.py": [ @@ -483160,18 +483568,10 @@ "883b061589837d34d6a65c9b91a2f31fb7c81c01", [] ], - "requirements_edge.txt": [ - "30b14b692fd46979178ee266d0d017faed3b492b", - [] - ], "requirements_firefox.txt": [ "3ba4731494acfef5fc9bd75ff3e76111575b2851", [] ], - "requirements_ie.txt": [ - "4ff0fedd321ab3a6083778af39eaf7fc84b0bd56", - [] - ], "requirements_opera.txt": [ "4ff0fedd321ab3a6083778af39eaf7fc84b0bd56", [] @@ -483189,7 +483589,7 @@ [] ], "tox.ini": [ - "2a3f2bdf10952a56d3d9129fae681726d70780ab", + "82d3ac6f555ac7625cd0ef096a8dcab301c806c8", [] ], "wptrunner": { @@ -483199,7 +483599,7 @@ ], "browsers": { "__init__.py": [ - "4d10457699d5abd9e1cb5e02a2b58e825be1b417", + "81dc549d730fc4d234dcba12d5665922bbaae407", [] ], "android_weblayer.py": [ @@ -483238,14 +483638,6 @@ "23f4e99da62291005bb94450cde7d5ce592288a0", [] ], - "edge.py": [ - "5b49545a38a5003cb21490d609beb551715c2b0b", - [] - ], - "edge_webdriver.py": [ - "e985361e41283b68b1d2d79a755812b72746e99a", - [] - ], "edgechromium.py": [ "4f5bffa06c498e2b046789da21755915f6df9d8d", [] @@ -483259,11 +483651,7 @@ [] ], "firefox_android.py": [ - "aa9cf63323298d65dc3dabb348120ec21e1677de", - [] - ], - "ie.py": [ - "87b989c028b0edaabbb75e5f6361f7f7538e80a1", + "3ce3b11d1f245539a31b2c1db35872c7d40f1415", [] ], "ladybird.py": [ @@ -483279,14 +483667,10 @@ [] ], "sauce.py": [ - "0f7651638dc8240402e2f0147b0fee0df42489df", + "0f21afd38f2162a2b3f7fc986eb0432587391f84", [] ], "sauce_setup": { - "edge-prerun.bat": [ - "1a3e6fee3094bcb512b5a1e058e1074e117b0477", - [] - ], "safari-prerun.sh": [ "39390e618fdc599e443e17b76470e989d93864e7", [] @@ -483535,7 +483919,7 @@ [] ], "base.py": [ - "176eef6a42392ebb5db16674079379783cd59368", + "8e71aba812de83b1dccd4dfe58de2ca6d57e2ba4", [] ], "browsers": { @@ -484893,7 +485277,7 @@ [] ], "urltestdata.json": [ - "69767a20db90bf4d6b37fb6ade5cf2ea5d6686be", + "9f1be0449c63d306b2e5938e8163661b3c769b1a", [] ] }, @@ -487207,13 +487591,19 @@ }, "storage": { "__init__.py": [ - "763e0054f1d5983b4dd0dff79ef37bc18be062e1", + "0d7cea96bce369323028f2910c5738ac095ece0a", [] ], "conftest.py": [ - "31b2c3f3e6bec2032e21b88ae33ed5995eb3cb74", + "0941411fab84f20df84563698821f5cdb7a13ccd", [] ], + "get_cookies": { + "__init__.py": [ + "e69de29bb2d1d6434b8b29ae775ad8c2e48c5391", + [] + ] + }, "set_cookie": { "__init__.py": [ "e69de29bb2d1d6434b8b29ae775ad8c2e48c5391", @@ -487684,7 +488074,7 @@ [] ], "fixtures_bidi.py": [ - "177bdda160e3dba97cfa9ccf165d673dd8cb220e", + "9566e6ebd19283b9d6cf9174bf4e2320d1e79fa7", [] ], "fixtures_http.py": [ @@ -487692,7 +488082,7 @@ [] ], "helpers.py": [ - "9870643b3d95e6e09396f514b901aebd08c5c551", + "678733e951f083d121c9946c72cfea75d090d2b4", [] ], "html": { @@ -487832,10 +488222,6 @@ [] ], "resources": { - "automation.js": [ - "f7477d1eccf816e507c401c26d9deaf360f33699", - [] - ], "common.js": [ "1d0904af837814ad0bd19a79a08a88faaa616164", [] @@ -488316,11 +488702,11 @@ [] ], "RTCDTMFSender-helper.js": [ - "4316c3804a28f44d1f86af97c86e478570b2437a", + "23465603f4d77f0bf31f9fd39eb2e3dcabe21f1f", [] ], "RTCPeerConnection-helper.js": [ - "5d188328e80331748677d77832eb44c3018cc5ef", + "92e4ccfa43acd3340becf3b5c1f1298294a72069", [] ], "RTCPeerConnection-perfect-negotiation-helper.js": [ @@ -488371,7 +488757,7 @@ [] ], "webrtc-test-helpers.sub.js": [ - "48882b30ccc263c6fb72e9e910d3dbe9f06d8141", + "8a46302668a2d6d443728122942bbef0cfe9a5f8", [] ] }, @@ -488550,7 +488936,7 @@ [] ], "svc-helper.js": [ - "e73ccfa750255ab633c10372f272465301293139", + "6a357f085bcd2b713ca9179a40d6bf80c49c69b4", [] ] }, @@ -491863,16 +492249,36 @@ ], "same-site-cookies": { "resources": { + "get_cookies.py": [ + "61b138321d02f1507c18c48456f306c6cf5859db", + [] + ], + "get_cookies_redirect.py": [ + "0f3a647a2b88a9107c36cd8303b03cc062089f04", + [] + ], "iframe-iframe.html": [ - "0c5582176d4fe04e47f7f5f106a855f289107c79", + "efd4f3a65468e8627b6369d2794f4e8196e22c4a", [] ], "iframe.sub.html": [ - "2531f3d62039dfb5a687db95bd8210ca118d8fa9", + "c4724d01d2f5f02481f4047f2bb61955e81fb61d", [] ], - "worker.js": [ - "658f499e92ac50078471fac11ead60fdc5e7577f", + "set_cookies.py": [ + "c721cc51f72dc853f3396d097c8cb0fa4fde95f1", + [] + ], + "util.js": [ + "67d9ee5c06bfd23f4a0e1cf28089318866f8c071", + [] + ], + "worker.py": [ + "8440c2d70ea173ccc4b651eff460a5b282c3ca40", + [] + ], + "worker_redirect.py": [ + "633a3ae67efa2cf2ffe0d01ff7cde6bb8fb4b206", [] ] } @@ -494007,7 +494413,7 @@ ] ], "back-forward-cache-open-connection.window.js": [ - "cee7287a0bbc1ca229ab7b6127f17b738bd0e6ab", + "db51daa121c0b3f9271ce2439a6c545870d0b99e", [ "IndexedDB/back-forward-cache-open-connection.window.html", { @@ -515861,7 +516267,7 @@ ] ], "clipboard-item.https.html": [ - "b50a1c97d746168fd4166726ead0964faa03aa39", + "7e148703a2679286d563053904d3accc820900a9", [ null, {} @@ -529896,34 +530302,6 @@ {} ] ], - "anchor-position-auto-001.html": [ - "b5e19522b00d8327e2eb1da96a2714ff2c62c60b", - [ - null, - {} - ] - ], - "anchor-position-auto-002.html": [ - "1c86fe2e4678f5fc7600d16f6580b24b60117330", - [ - null, - {} - ] - ], - "anchor-position-auto-003.html": [ - "33ef58b2af4692f071596aa005f4e72954d6c04f", - [ - null, - {} - ] - ], - "anchor-position-auto-004.html": [ - "befd5fcff068d7af8d9b9a1a658eddfb3008b55d", - [ - null, - {} - ] - ], "anchor-position-borders-001.html": [ "1e2ecbc909cee0f9f301481c12ab6a8fc9b4ff0c", [ @@ -530407,6 +530785,13 @@ null, {} ] + ], + "position-try-parsing.html": [ + "7f50459710629cefd0282a8d78a60e8d760e719f", + [ + null, + {} + ] ] }, "position-fallback-001.html": [ @@ -532153,6 +532538,13 @@ } }, "css-borders": { + "border-image-width-interpolation-math-functions-tentative.html": [ + "70539beb263c5fbe4a26d687a2a32337b946e1a4", + [ + null, + {} + ] + ], "border-width-rounding.tentative.html": [ "04c4ddf40bd7452ee5a135e4c1b4c2a7667fc1cd", [ @@ -533587,7 +533979,7 @@ ] ], "color-computed-color-mix-function.html": [ - "f0e2f6cce02889715b63efe3d7d11871b548a700", + "b54aa0da12ad9216fc148b0094b45b9c9d53fb70", [ null, {} @@ -533755,7 +534147,7 @@ ] ], "color-valid-hsl.html": [ - "7ab1274176fd9fbbaed10d1644d18c2eb05b41e3", + "b3a9d7944e82c1aae5d733e3bf1d48779dae0396", [ null, {} @@ -537799,7 +538191,7 @@ ] ], "negative-overflow-002.html": [ - "171095d2b553a6c907c4c2f1d1c72d54ec41633f", + "7c8d6337b9012b2a7edf32ceb9888da4616f366b", [ null, {} @@ -538547,6 +538939,13 @@ {} ] ], + "font-size-adjust-interpolation-math-functions.tentative.html": [ + "d173fb03bbb6b67569e1fc09a023832309747a5d", + [ + null, + {} + ] + ], "font-size-relative-across-calc-ff-bug-001.html": [ "167de8888725ca55090ac80cda43cddb299b7c7d", [ @@ -538554,6 +538953,13 @@ {} ] ], + "font-stretch-interpolation-math-functions.tentative.html": [ + "9029eefcb44169ac870d0545a47dae0d11ac18e9", + [ + null, + {} + ] + ], "font-style-angle.html": [ "baf69be5c1310f6f88b2e2b5c9de1a312d95311c", [ @@ -542257,7 +542663,7 @@ ] ], "grid-container-ignores-first-letter-001.html": [ - "8e322fe38e1136a27c49264fb4e0dfac4ed6675d", + "db466b82cd8113832e689643666a009fb6547851", [ null, {} @@ -545995,6 +546401,15 @@ null, {} ] + ], + "scroller-covered-by-empty-svg.html": [ + "f877b6b281d980093e26af4e4199da2e9a855fe1", + [ + null, + { + "testdriver": true + } + ] ] }, "css-overscroll-behavior": { @@ -546055,6 +546470,22 @@ } }, "css-page": { + "cssom": { + "page-001.html": [ + "2f6b4dde0500cf7ef40b2187708539523472d33a", + [ + null, + {} + ] + ], + "page-002.html": [ + "0060d295b4a4f0949ac2d4ed0bb699b891007630", + [ + null, + {} + ] + ] + }, "inheritance.html": [ "565287bce50fa46fdc17cf438ff9eeb2862106a7", [ @@ -549007,6 +549438,15 @@ "testdriver": true } ] + ], + "prefer-inner-target.html": [ + "053b6a1d7e6e2224a58172f603944b1f28888427", + [ + null, + { + "testdriver": true + } + ] ] }, "not-resnap-outside-proximity-threshold.html": [ @@ -556557,7 +556997,7 @@ ] ], "starting-style-cascade.html": [ - "263e47217425c82c81f74748aae9b4e5002cc546", + "cef3e88b656d1d65d3e02179c6f44e878fd246d3", [ null, {} @@ -556578,7 +557018,7 @@ ] ], "starting-style-rule-none.html": [ - "fd6879b5ee4238b87d4fd05135f562082ac2e7fa", + "91e4fe353409b94a5889b944b4796d98ccd816a5", [ null, {} @@ -561029,6 +561469,13 @@ {} ] ], + "variables-animation-math-functions-tentative.html": [ + "7c33d6cfa364efcad60ab224a926686ba6279b47", + [ + null, + {} + ] + ], "variables-substitute-guaranteed-invalid.html": [ "4abfe28d1f21b2891599543b3972b26fbd15b77e", [ @@ -561263,6 +561710,13 @@ {} ] ], + "pseudo-element-animations.html": [ + "a7c3247479d01f4044b9033726282037c1b4bc9f", + [ + null, + {} + ] + ], "pseudo-get-computed-style.html": [ "2481a713133b7e1bf47cedf0b4966a51dd777d78", [ @@ -562743,6 +563197,13 @@ {} ] ], + "getComputedStyle-pseudo-with-argument.html": [ + "452f2bb2c63e13615c1c66cc57702b40226e1d37", + [ + null, + {} + ] + ], "getComputedStyle-pseudo.html": [ "c07347a1973cf2fa9105907bbdd0015081bed417", [ @@ -564698,7 +565159,7 @@ ] ], "display-mode.html": [ - "e6633de856c5f438e47ebe1d05b1593753948fbf", + "4ade16799f9db32f502df643f33094e5a2552e70", [ null, {} @@ -564966,6 +565427,13 @@ {} ] ], + "offset-rotate-interpolation-math-functions-tentative.html": [ + "34e0abf2b0debc151c85d439c649de60b47ab5d2", + [ + null, + {} + ] + ], "offset-rotate-interpolation.html": [ "55845108ebf5f3c42a8b0532121199136160d695", [ @@ -568126,6 +568594,15 @@ } ] ], + "display-mode.https.html": [ + "4888535357683d637030712c53ef9050bbf8cd65", + [ + null, + { + "testdriver": true + } + ] + ], "enter-event.https.html": [ "1cac0ff22d79bbd98450b59d8fd8cffdb72ec141", [ @@ -568135,6 +568612,15 @@ } ] ], + "focus-opener.https.html": [ + "880e9d915efbc6db6f0cd1a9412070d871d4db86", + [ + null, + { + "testdriver": true + } + ] + ], "iframe-document-pip.https.html": [ "b978a2d4e6ca2b28db67b9c3f0bed7e9cf4492b5", [ @@ -569680,7 +570166,7 @@ ] ], "overscroll-event-fired-to-scrolled-element.html": [ - "cfc782a809a7e73a9d0a84d938caac6a704d784d", + "be4176df59d6a1d59d90beee839bc5ca6a72f1c5", [ null, { @@ -572787,7 +573273,7 @@ "editing": { "edit-context": { "edit-context-basics.tentative.html": [ - "78b6824921a3bbbbf29a5f3e0d43da45e0555403", + "0011270c812fdd2ccea80699f0729ef2f7fc214e", [ null, {} @@ -575746,6 +576232,13 @@ } ] ], + "paste-in-list-with-inline-style.tentative.html": [ + "97710e805dd635f586cd2fafe6a443bd663122f4", + [ + null, + {} + ] + ], "recursive-exec-command-calls.tentative.html": [ "60a3b03099f358cf88e8e10c67347d9322cc9124", [ @@ -589555,6 +590048,16 @@ } ] ], + "interactionid-keypress.html": [ + "a6f200996714f473056a69e849837fffb1792dca", + [ + null, + { + "testdriver": true, + "timeout": "long" + } + ] + ], "interactionid-press-key-as-input.html": [ "b1e725b5c6f76d9eb3d413e679bfdeb331d1b0b2", [ @@ -589629,6 +590132,15 @@ } ] ], + "modal-dialog-interrupt-paint.html": [ + "011311a03a37df4e33e6b3a67d9c07ea2776843c", + [ + null, + { + "testdriver": true + } + ] + ], "mousedown.html": [ "35a07faeb1bcaaadb0ca606f8948004b45a115ae", [ @@ -592454,6 +592966,26 @@ } ] ], + "revoke-popup.https.html": [ + "e4a2bb26ad2f74354bbeeb6e5f8edada9b30ba99", + [ + null, + { + "testdriver": true, + "timeout": "long" + } + ] + ], + "revoke-unfenced-top-navigation.https.html": [ + "873404768f0cdca9e912337f1829c47c67f7a9f1", + [ + null, + { + "testdriver": true, + "timeout": "long" + } + ] + ], "sandbox-attribute.https.html": [ "1458145e4377e573f8aa13f5cb4d0dfdc7e09182", [ @@ -606729,20 +607261,36 @@ ] ], "dangling-markup": { - "dangling-markup-mitigation-data-url.tentative.sub.html": [ + "dangling-markup-mitigation-allowed-apis.html": [ + "66456a8876b609fce084d40df0b280afeb48bffa", + [ + null, + {} + ] + ], + "dangling-markup-mitigation-data-url.sub.html": [ "f27735daa1dd650726525d72a48b91d58d62535b", [ null, {} ] ], - "dangling-markup-mitigation.tentative.html": [ + "dangling-markup-mitigation.html": [ "61a931608ba5f3dc7f53f3f7a14ef5111737b07d", [ null, {} ] ], + "dangling-markup-mitigation.https.html": [ + "3f038cbb7be452757196838539a7bf95e4f6e945", + [ + null, + { + "timeout": "long" + } + ] + ], "media.html": [ "2649edcf32008566c8d05352d42057fdedd4fa39", [ @@ -607213,7 +607761,7 @@ ] ], "auction-config.https.window.js": [ - "3b5814b5d4aa5139684a52a1e62d3c45293f495f", + "8fbdc95dfc5596d9484608c1902909175781b53d", [ "fledge/tentative/auction-config.https.window.html?1-5", { @@ -608054,7 +608602,7 @@ ] ], "component-auction.https.window.js": [ - "63771d42b86d361634bf2408d48caf1538c64278", + "c70532024ce87aaa7776c2b69a4a66abf61e2204", [ "fledge/tentative/component-auction.https.window.html?1-5", { @@ -608233,7 +608781,7 @@ ] ], "cross-origin.https.window.js": [ - "788558e5cf364d2a3cc6b611d843ade2628821ff", + "a8cf93049fa05ced5c922f45890d3a3f680481aa", [ "fledge/tentative/cross-origin.https.window.html?1-4", { @@ -608991,7 +609539,7 @@ ] ], "direct-from-seller-signals.https.window.js": [ - "339bc32ee564320d155f43e1a555847da7ec125b", + "d0c0e550c4232bd4dad1661b0b418084111a48a6", [ "fledge/tentative/direct-from-seller-signals.https.window.html?1-4", { @@ -609487,10 +610035,10 @@ {} ] ], - "generate-bid-recency.https.window.js": [ - "07da463a2dc50178a39a9ab5d8461a62d3152827", + "generate-bid-browser-signals.https.window.js": [ + "3ab8bbf51f6baf80e9c6f293c53160c2be703242", [ - "fledge/tentative/generate-bid-recency.https.window.html", + "fledge/tentative/generate-bid-browser-signals.https.window.html?1-last", { "script_metadata": [ [ @@ -609505,9 +610053,17 @@ "script", "resources/fledge-util.sub.js" ], + [ + "script", + "/common/subset-tests.js" + ], [ "timeout", "long" + ], + [ + "variant", + "?1-last" ] ], "timeout": "long" @@ -611280,7 +611836,7 @@ ] ], "join-leave-ad-interest-group.https.window.js": [ - "b5dfe025bf275dbf8de24348147a3b6164ab5b2f", + "02148ef36b76b80178ee99775c4ae1dea534c01b", [ "fledge/tentative/join-leave-ad-interest-group.https.window.html?1-10", { @@ -611859,7 +612415,7 @@ ] ], "kanon-status-below-threshold.https.window.js": [ - "4eac4a8e917b17a7e6d43b60261e5abdecad76e5", + "787283d687ff55e5a2b448764370416bfa90285e", [ "fledge/tentative/kanon-status-below-threshold.https.window.html", { @@ -611885,7 +612441,7 @@ ] ], "kanon-status-not-calculated.https.window.js": [ - "a3ac19bd85e5f2abcedba9c973177bcf602d4cb2", + "4a750cd3529df529c63f0fa1cf4d083abeacc542", [ "fledge/tentative/kanon-status-not-calculated.https.window.html", { @@ -612729,7 +613285,7 @@ ] ], "register-ad-beacon.https.window.js": [ - "19fab2ac1b1b825e51a65d5200b64a60eb8a611c", + "3643e4466277144a389b08d3f029f294aa0a4480", [ "fledge/tentative/register-ad-beacon.https.window.html?1-5", { @@ -612852,7 +613408,7 @@ ] ], "reporting-arguments.https.window.js": [ - "f26a969328ff0ccbd5a8b867147c36ea93e53c96", + "c7c71202403edfe72f6d7a676c749839dc494e65", [ "fledge/tentative/reporting-arguments.https.window.html?1-5", { @@ -613031,7 +613587,7 @@ ] ], "round-a-value.https.window.js": [ - "5bccd4ab078fee069404096ef868e4a15ebbaa57", + "90523e2256c3a5582ef188d41ab0adcc107ffd93", [ "fledge/tentative/round-a-value.https.window.html", { @@ -613058,7 +613614,7 @@ ] ], "send-report-to.https.window.js": [ - "65a2520420675184032ffde2d1823e91928606c3", + "e3cf0a95f17c171444d79a2b0f16d0fe1f1acbd4", [ "fledge/tentative/send-report-to.https.window.html?1-5", { @@ -614339,7 +614895,7 @@ ] ], "trusted-scoring-signals.https.window.js": [ - "67ae3577e4f1f0a3fbad8450924c11b32f10689f", + "4de5cfc0f394732cd29c76b9ad08bef4013444b8", [ "fledge/tentative/trusted-scoring-signals.https.window.html?1-5", { @@ -651717,7 +652273,7 @@ ] ], "dir-assorted.window.js": [ - "0d4e4b82d9b9531087ed631fd38d9eb6ab6215e0", + "2017269f0bdfa186d9ceced3887f68480a89118e", [ "html/dom/elements/global-attributes/dir-assorted.window.html", {} @@ -651822,7 +652378,7 @@ ] ], "the-anchor-attribute-003.tentative.html": [ - "fe4657aabb33e63f58d7b623d1fd27d55e38b7c6", + "ec2d8d5ead9673e307350bc7346a5f3b971a391b", [ null, {} @@ -652171,196 +652727,196 @@ ] ], "element-render-blocking-001.tentative.html": [ - "9624b41a194946794fc17c71f66fb4cc2ec6abe1", + "36567f9d54adea41a703b23adac438e160f397cf", [ null, {} ] ], "element-render-blocking-002.tentative.html": [ - "ab0fd511156bc9edb89fe9350d87a000616f2438", + "3c907597f7ac35b84e29ccd37627499c347f511a", [ null, {} ] ], "element-render-blocking-003.tentative.html": [ - "eb3a347a6ebbb7b05a5e3bb7905c9098bf755c51", + "2858798a35f58e1152b7047c35359878d1820ecc", [ null, {} ] ], "element-render-blocking-004.tentative.html": [ - "2c50f2d362a54c8252f92222a71025301222aa9f", + "f45f5587204674691349f298f9367204233aa235", [ null, {} ] ], "element-render-blocking-005.tentative.html": [ - "04cdab467deff3f8880855592cd5724d064b3371", + "098a3c57676cc88788a23efa0818e00b9a8e6344", [ null, {} ] ], "element-render-blocking-006.tentative.html": [ - "1c9da255a622503c2f2bb74fc98876938bce19e1", + "223e42109e5c65985e0aec2b0c24ef8f1d810d15", [ null, {} ] ], "element-render-blocking-007.tentative.html": [ - "df8f9ae3d1258194088f4b8cbadbf2eee9b85500", + "9aa0aeea79834833ff0151227723c1a6c17e06e2", [ null, {} ] ], "element-render-blocking-008.tentative.html": [ - "c2458a0bab31244de67c707d32b2669a5aaa746a", + "e671dda19c43b44d3f065b8de0e68f7326e88aba", [ null, {} ] ], "element-render-blocking-009.tentative.html": [ - "d765ac8a5d3c9b742fa9b24d3401d6c1ff098a08", + "8498816ea5c435cce0ea3d597b7f0b381d73d7f6", [ null, {} ] ], "element-render-blocking-010.tentative.html": [ - "7ef6a1baf35b460791ac54b8891dc3e019aaee85", + "ef6f709012e4bd4bb222b8cc74317abdbc40768f", [ null, {} ] ], "element-render-blocking-011.tentative.html": [ - "31df9b068c01b5a149941f24d619898f6b926301", + "dee82d8c5950c16360d2ff799393a50bed1f7a95", [ null, {} ] ], "element-render-blocking-012.tentative.html": [ - "8f2594d25903a60911f89d7eb6a39968ca2e9d82", + "4110e54c5f20420d8da783d21e43d2f9961aed5a", [ null, {} ] ], "element-render-blocking-013.tentative.html": [ - "9d65bd96b73189f4fafbbcd59261261e0f154fb9", + "ecd97be86a6633daf0d03f86f231de295abee459", [ null, {} ] ], "element-render-blocking-014.tentative.html": [ - "d042b96b64370c1ad08cd235729a2c0e6abb597e", + "ea8948de42dec015384aa2bd7a13edb283b6d522", [ null, {} ] ], "element-render-blocking-015.tentative.html": [ - "f7ac0b1015d79635d83fced00cbcb8c7c5e6400b", + "a775ee417403ab3fef3635194ff1d62b4c335266", [ null, {} ] ], "element-render-blocking-016.tentative.html": [ - "d32a0468e79b4109607d920ec72279ae0af0e0d6", + "8968c5dacd329537b9d7c1d0d0ce38786077f583", [ null, {} ] ], "element-render-blocking-017.tentative.html": [ - "d3a6046cbb37f90b3bf5721f1799f8df313d06c7", + "2d3b5747216f50902714bff725cddf50ec7556c0", [ null, {} ] ], "element-render-blocking-018.tentative.html": [ - "0d7402201accb05ce81636be43057128cfaf976b", + "76e6394b5b16586de768ad553c671b8594d0635e", [ null, {} ] ], "element-render-blocking-019.tentative.html": [ - "fea9e3a2b21821722eb956beac19acfb44721034", + "80a7019edc4beb272ef65d7cd1d28f88fb18a813", [ null, {} ] ], "element-render-blocking-020.tentative.html": [ - "7fc0fe19bbae57d15b5a8bbc27cfb6400661114b", + "10019c943f402c91c0ca07efefe462d5bc6ece48", [ null, {} ] ], "element-render-blocking-021.tentative.html": [ - "29430349f04689578cc7e5f90ba86ef77626bde5", + "1ca2114689a6cdbc961c9eecd1fa4e328117d431", [ null, {} ] ], "element-render-blocking-022.tentative.html": [ - "6548c9ec4df21169af9c97dfa30acf49acb1c95a", + "5dfbcac30a4c065a888f5ea804ba306758d83e6c", [ null, {} ] ], "element-render-blocking-023.tentative.html": [ - "c3661bcaa6a9c3b2e6fc64dc937c73688041a43d", + "8fe8b6a8c8e30f05250c2ca569f5b4d938bed71c", [ null, {} ] ], "element-render-blocking-024.tentative.html": [ - "c98022cfeabef10171061432168274eb81324834", + "19e4020fb769bb59053a6a64cc1c499583044c73", [ null, {} ] ], "element-render-blocking-025.tentative.html": [ - "29868b92cbc76a7f9b6da3e645e02c0701f5e31b", + "689ae69f452d421b66554c8e547ca95f5f269af9", [ null, {} ] ], "element-render-blocking-026.tentative.html": [ - "dc23211b8b00d2011592dd529bd554670456acc5", + "6abfc43b8b237b3f8f0f6474d36fcce1c3aaac52", [ null, {} ] ], "element-render-blocking-027.tentative.html": [ - "5b8a5eb24d5e973a25ca8fbf594f85f006ba7a06", + "56f88e0fc2b773f74afb86e306f42a1aa39d9c1b", [ null, {} ] ], "element-render-blocking-028.tentative.html": [ - "57ba3d602602d59f55bdaa34d18eeb06254e826a", + "a64d542c4ac7ef97a2e3427dabe485519da97518", [ null, {} @@ -652921,6 +653477,15 @@ {} ] ] + }, + "writing-suggestions": { + "writingsuggestions.html": [ + "664659d90ab37cf8692c3cd780e1313df034ad86", + [ + null, + {} + ] + ] } }, "focus": { @@ -660153,6 +660718,69 @@ {} ] ], + "iframe-loading-lazy-in-scroller-far.html": [ + "eeb05b7b98ec1bf96a2912f8b174edc0dad53cb9", + [ + null, + {} + ] + ], + "iframe-loading-lazy-in-scroller-horizontal-far.html": [ + "f058b46fbd9fa80288eb4d09b0e1ed54afa5c4c6", + [ + null, + {} + ] + ], + "iframe-loading-lazy-in-scroller-horizontal.html": [ + "80ba0829a9a5465030507b10908f1ddc924a4662", + [ + null, + {} + ] + ], + "iframe-loading-lazy-in-scroller-nested-2.html": [ + "9eec621c891e8357818a9646e3822c19618a95a0", + [ + null, + {} + ] + ], + "iframe-loading-lazy-in-scroller-nested-3.html": [ + "aa02bb415161340f7264cbada530b848fac8bc84", + [ + null, + {} + ] + ], + "iframe-loading-lazy-in-scroller-nested-4.html": [ + "e15d891fb5b5d86bc787e84838b31f9a61f3f948", + [ + null, + {} + ] + ], + "iframe-loading-lazy-in-scroller-nested-5.html": [ + "b36265024d55366a315905e43a8403ca46cd60ef", + [ + null, + {} + ] + ], + "iframe-loading-lazy-in-scroller-nested.html": [ + "50b5e7ee0adc6a38aa2145a48a2bf345543ced43", + [ + null, + {} + ] + ], + "iframe-loading-lazy-in-scroller.html": [ + "631710e740de48dc925d3a778662c17b39061c3b", + [ + null, + {} + ] + ], "iframe-loading-lazy-load-event.html": [ "bf98bf7585cf608e6ebb46d025663e22bce8324c", [ @@ -662761,6 +663389,13 @@ {} ] ], + "form-indexed-element-shadow.html": [ + "a108ce8a93fcc75bc9144b6409c083943fcb93f3", + [ + null, + {} + ] + ], "form-indexed-element.html": [ "5ea96d3d1b21ac6d143b01ec325261a5255c1e8a", [ @@ -665608,6 +666243,13 @@ } ] ], + "popover-open-overflow-display-2.html": [ + "f2388b7642e49f90bcc3ad79e51db40e1001c5f0", + [ + null, + {} + ] + ], "popover-overlay.html": [ "a607844aee4f59e2a8b96528bbfa380688a1bb34", [ @@ -676728,7 +677370,7 @@ ] ], "inert-iframe-hittest.html": [ - "8d7facf17230d70350adf4cd54a32151e30fc11b", + "d6c3551e996e4ae727096f1bef82b5706fd5bc97", [ null, { @@ -685012,7 +685654,7 @@ ] ], "MediaRecorder-mimetype.html": [ - "30df91c9587e32040207aecd862fbe04691f43e3", + "74248d65f4660a25742d7baa5d050e40ed4199bd", [ null, {} @@ -691238,6 +691880,15 @@ ] } ] + ], + "rounding.https.html": [ + "846da79dfb545434290043b36bbf0c3fb447cf42", + [ + null, + { + "testdriver": true + } + ] ] }, "orientation": { @@ -691303,7 +691954,7 @@ ] ], "null-values.https.html": [ - "c54d73da50cdc2eedf07c80a5033d66ac42cc507", + "9505e009542076ef39dc827da46176f7df7558df", [ null, { @@ -691345,6 +691996,15 @@ } ] ], + "rounding.https.html": [ + "89bfa1d53c3571064a5f802c787602ee73c60986", + [ + null, + { + "testdriver": true + } + ] + ], "updates.https.html": [ "fe1811535b3b473336dbf90f65279511a6c93284", [ @@ -692918,7 +693578,7 @@ ], "not-restored-reasons": { "abort-block-bfcache.window.js": [ - "8488dd60ccf0a1d6ed032c461e6bb714e24950a7", + "09a73509b8a834eca47032972d90b14c430bd1af", [ "performance-timeline/not-restored-reasons/abort-block-bfcache.window.html", { @@ -693207,7 +693867,7 @@ ] ], "performance-navigation-timing-navigation-failure.tentative.window.js": [ - "4022e6e59f1c010207051697d0bf098143bfc309", + "5812ebb2b3637c9528997c369fc55c69a7ab3d39", [ "performance-timeline/not-restored-reasons/performance-navigation-timing-navigation-failure.tentative.window.html", { @@ -696955,7 +697615,7 @@ ] ], "prefetch-document.html": [ - "bdb12bd58a036a1f7429e362acb078f0d2f75d4b", + "9f9810be46cc43ddcfacae40e1f53f4ac45af7e5", [ null, {} @@ -715033,7 +715693,7 @@ ] ], "modifying-selection-with-non-primary-mouse-button.tentative.html": [ - "cb2e44295a9405e8a247bcc0aa9760e42a0b8286", + "79fc52ac7dbfa75884cef22017e89df1f38a9e4c", [ "selection/contenteditable/modifying-selection-with-non-primary-mouse-button.tentative.html?middle", { @@ -718980,7 +719640,7 @@ ] ], "declarative-shadow-dom-basic.html": [ - "8bc6bec5f50f741e8b48e5c2f1020707c8d56408", + "4f174b8e5f7c4afab0c49b665788aa3bbf8d41be", [ null, {} @@ -718993,8 +719653,15 @@ {} ] ], + "declarative-shadow-dom-repeats-2.html": [ + "74b14b8d8ff679f889297b3d21d14eb090a9ff27", + [ + null, + {} + ] + ], "declarative-shadow-dom-repeats.html": [ - "69f5c0f077afbc651fdeb7c8f99091942ef2f57d", + "9cee41f2f3160e19c279693bd27d1794b46bc5be", [ null, {} @@ -720523,6 +721190,48 @@ {} ] ], + "same-origin-add-module-credentials-include.tentative.https.sub.html": [ + "a9082661a8b6cee451e7258b154631e2d1f1831d", + [ + null, + {} + ] + ], + "same-origin-add-module-credentials-omit.tentative.https.sub.html": [ + "a5945725c010950aaacf5e252ffc4ebdb096158f", + [ + null, + {} + ] + ], + "same-origin-add-module-credentials-same-origin.tentative.https.sub.html": [ + "aea76264384afffe37da04e919e843d554a87637", + [ + null, + {} + ] + ], + "same-origin-create-worklet-credentials-include.tentative.https.sub.html": [ + "2e1d9cf723562416844c1ee550073b7bac4ee2d7", + [ + null, + {} + ] + ], + "same-origin-create-worklet-credentials-omit.tentative.https.sub.html": [ + "ef90c02d6434a6b472e618e3f3d95ad7e4d08775", + [ + null, + {} + ] + ], + "same-origin-create-worklet-credentials-same-origin.tentative.https.sub.html": [ + "6d9fd7c1362a06930df2f71d3c2fbd193e2746d4", + [ + null, + {} + ] + ], "select-url-keep-alive.tentative.https.sub.html": [ "f3755538b9d4b23e026fec85c161cb730531d4dc", [ @@ -721501,7 +722210,7 @@ ] ], "replacestate.tentative.html": [ - "42e9a718997bec9327ace8936225b42b6356a77b", + "d47b9b653881f57e085fef94360c9245e23c022f", [ null, { @@ -724780,7 +725489,7 @@ ] ], "requestStorageAccess-dedicated-worker.tentative.sub.https.window.js": [ - "f2d766575db00ca877570bc31e91810b978af7cd", + "6c3d616e26aaa796e9aa7226621f0430cff2d4b2", [ "storage-access-api/requestStorageAccess-dedicated-worker.tentative.sub.https.window.html", { @@ -724997,7 +725706,7 @@ ] ], "storage-access-beyond-cookies.BroadcastChannel.tentative.sub.https.window.js": [ - "d709cdcd10f807f2f2e879d560cd9f85fd4abc51", + "feb268b4b8146290eec743779c4a8d9567bc74b3", [ "storage-access-api/storage-access-beyond-cookies.BroadcastChannel.tentative.sub.https.window.html", { @@ -725014,8 +725723,26 @@ } ] ], + "storage-access-beyond-cookies.SharedWorker.tentative.sub.https.window.js": [ + "ed4f25517f71604b12d401b8777a6814a27c72d3", + [ + "storage-access-api/storage-access-beyond-cookies.SharedWorker.tentative.sub.https.window.html", + { + "script_metadata": [ + [ + "script", + "/resources/testdriver.js" + ], + [ + "script", + "/resources/testdriver-vendor.js" + ] + ] + } + ] + ], "storage-access-beyond-cookies.blobStorage.tentative.sub.https.window.js": [ - "6ef0bd08d4dc7175a1b241baa348776172b34d8c", + "cc2785b6fac73ffbd3a18c8bd23228a1c8130e9c", [ "storage-access-api/storage-access-beyond-cookies.blobStorage.tentative.sub.https.window.html", { @@ -725033,7 +725760,7 @@ ] ], "storage-access-beyond-cookies.caches.tentative.sub.https.window.js": [ - "dda1e54565407ed438f9f23b6f0c84336e7b7748", + "7907084e6381471c9c3630ca8879673d68ae7482", [ "storage-access-api/storage-access-beyond-cookies.caches.tentative.sub.https.window.html", { @@ -725051,7 +725778,7 @@ ] ], "storage-access-beyond-cookies.cookies.tentative.sub.https.window.js": [ - "c352ab2935540fb5d99a79ceceff4b90e781d263", + "1ff00fa91938df81d1c0fc7e774f12973e12e917", [ "storage-access-api/storage-access-beyond-cookies.cookies.tentative.sub.https.window.html", { @@ -725069,7 +725796,7 @@ ] ], "storage-access-beyond-cookies.estimate.tentative.sub.https.window.js": [ - "2e9f6eed127898a21c890b6f6dfe588db9197852", + "fb15dfee0928810e3517fe80ec5eb6600fbdef4d", [ "storage-access-api/storage-access-beyond-cookies.estimate.tentative.sub.https.window.html", { @@ -725087,7 +725814,7 @@ ] ], "storage-access-beyond-cookies.getDirectory.tentative.sub.https.window.js": [ - "5038afc969afd8139b099a42ca0e2df65554b91a", + "b3b8f7e8e2301fc1e9ae69fcf6ae0c23f70075b7", [ "storage-access-api/storage-access-beyond-cookies.getDirectory.tentative.sub.https.window.html", { @@ -725105,7 +725832,7 @@ ] ], "storage-access-beyond-cookies.indexedDB.tentative.sub.https.window.js": [ - "18c4317bbe9c6598551787feaf9df9d4ad5210db", + "8e9420da0da652f4bade46c9deedd66af8decf3c", [ "storage-access-api/storage-access-beyond-cookies.indexedDB.tentative.sub.https.window.html", { @@ -725123,7 +725850,7 @@ ] ], "storage-access-beyond-cookies.localStorage.tentative.sub.https.window.js": [ - "6243cb1fa8c5c25e15747dfc22de3f3c108eea98", + "80021317790587e8da7fea06324cc03a1504a8ce", [ "storage-access-api/storage-access-beyond-cookies.localStorage.tentative.sub.https.window.html", { @@ -725141,7 +725868,7 @@ ] ], "storage-access-beyond-cookies.locks.tentative.sub.https.window.js": [ - "83aa28c018e1a3e4fd0b5ffe794a2acb751de287", + "ed7d6ea48479a1b2a433db5f438ab001bae93598", [ "storage-access-api/storage-access-beyond-cookies.locks.tentative.sub.https.window.html", { @@ -725159,7 +725886,7 @@ ] ], "storage-access-beyond-cookies.none.tentative.sub.https.window.js": [ - "3715fdf39ed562a3946c9ed3406e9d81de57ea7a", + "ba5ea3279dffe0253f29293536ce2b408a4fe72a", [ "storage-access-api/storage-access-beyond-cookies.none.tentative.sub.https.window.html", { @@ -725177,7 +725904,7 @@ ] ], "storage-access-beyond-cookies.sessionStorage.tentative.sub.https.window.js": [ - "1b12f133b2c36ea2ed8eaa3cfd86b8d268dbff9c", + "93b243f6c1104401f05aff207acdf16186b97899", [ "storage-access-api/storage-access-beyond-cookies.sessionStorage.tentative.sub.https.window.html", { @@ -735181,7 +735908,7 @@ {} ] ], - "trusted-types-from-literal.html": [ + "trusted-types-from-literal.tentative.html": [ "a7d5659e16a1471ac5cb900dce7b3a102a14af89", [ null, @@ -748841,7 +749568,7 @@ ] ], "osc-basic-waveform.html": [ - "abd1ff8d0e5d8453bfbfd1e37dc7c36ef4337f40", + "ce6e262fa9f60fdf66498d6f787e315f7176f93f", [ null, {} @@ -760752,7 +761479,7 @@ ] ], "RTCPeerConnection-setRemoteDescription-offer.html": [ - "d5acb7e1c933aa13a774b69f54ba4282905d2f4d", + "9da03fe7a1596356ea1f44591e6036938d912d16", [ null, {} @@ -760905,7 +761632,7 @@ ] ], "RTCRtpReceiver-getStats.https.html": [ - "d9344b176e39dcb697d11b70a626706f4b794445", + "2fcf33dc2e4aac738f3da39663a7812320deb5e2", [ null, { @@ -760939,7 +761666,7 @@ ] ], "RTCRtpSender-getStats.https.html": [ - "797365e9f4e89b649839fb9b7bc8a19b879df672", + "6aeed650e58c7be225b773095b8f035cd216d5d0", [ null, { @@ -761003,7 +761730,7 @@ ] ], "RTCRtpTransceiver-setCodecPreferences.html": [ - "f779f5a94ca4959004c90f2331783ceed4c21820", + "120b28527fbb6db33e07bc7ff5a28261168f4c30", [ null, {} @@ -761184,7 +761911,7 @@ ] ], "back-forward-cache-with-open-webrtc-connection.https.window.js": [ - "a516aa4c79988fabceca08da087c56734175ca0f", + "5cc3b745b3bc830aa3931db6556a2b21b0af112a", [ "webrtc/back-forward-cache-with-open-webrtc-connection.https.window.html", { @@ -761986,10 +762713,12 @@ ] ], "RTCRtpParameters-codec.html": [ - "cce2c1661f7d7761da12d2ee4ba7be1446fcfe9b", + "5fc1401badf49d6fbc2f46c9936b3711cd3c2466", [ null, - {} + { + "timeout": "long" + } ] ], "RTCRtpReceiver-jitterBufferTarget-stats.html": [ @@ -762214,7 +762943,7 @@ ] ], "RTCRtpParameters-scalability.html": [ - "ff28c2b5e95636708568cdc20c5da5fc2db0dcba", + "134a28bd5e13eaf47ced84a5694f9a38f4851b05", [ null, { @@ -780793,7 +781522,7 @@ ], "same-site-cookies": { "first-party.all.tentative.https.window.js": [ - "d7e5f2ee42ca31d1e05ebfd68c7c1aefb75d411f", + "ac6030e654031d33bdf9c47f7b6d848fb514248b", [ "workers/same-site-cookies/first-party.all.tentative.https.window.html", { @@ -780805,13 +781534,17 @@ [ "script", "/resources/testdriver-vendor.js" + ], + [ + "script", + "/workers/same-site-cookies/resources/util.js" ] ] } ] ], "first-party.default.tentative.https.window.js": [ - "b120014c1a82bacb64a51c06799731e82b5d4ecd", + "2c64ff628f5b86e09005c2b8a5b4f90d5af2bffd", [ "workers/same-site-cookies/first-party.default.tentative.https.window.html", { @@ -780823,13 +781556,17 @@ [ "script", "/resources/testdriver-vendor.js" + ], + [ + "script", + "/workers/same-site-cookies/resources/util.js" ] ] } ] ], "first-party.none.tentative.https.window.js": [ - "762d924eb92c03380252b62db29fbdb0f3f33e0d", + "76a8b1d8bcb50e97c633c1ab096f81425e463d08", [ "workers/same-site-cookies/first-party.none.tentative.https.window.html", { @@ -780841,13 +781578,17 @@ [ "script", "/resources/testdriver-vendor.js" + ], + [ + "script", + "/workers/same-site-cookies/resources/util.js" ] ] } ] ], "third-party.all.tentative.sub.https.window.js": [ - "51ad1d3b02543baa10ba62e4ab9e0e8b7afb7230", + "21b53819d93f7a1b0cf1db4f13e32316150cec6d", [ "workers/same-site-cookies/third-party.all.tentative.sub.https.window.html", { @@ -780859,13 +781600,17 @@ [ "script", "/resources/testdriver-vendor.js" + ], + [ + "script", + "/workers/same-site-cookies/resources/util.js" ] ] } ] ], "third-party.default.tentative.sub.https.window.js": [ - "194df38390ed40e8127aede98b507bdd92da048a", + "bf499c1992c91f0401c3f38067eb3e6208147bfe", [ "workers/same-site-cookies/third-party.default.tentative.sub.https.window.html", { @@ -780877,13 +781622,17 @@ [ "script", "/resources/testdriver-vendor.js" + ], + [ + "script", + "/workers/same-site-cookies/resources/util.js" ] ] } ] ], "third-party.none.tentative.sub.https.window.js": [ - "b91b9d7ab27ce80b94db4dd8a51866b1e843ea7f", + "f00e585f77839274c51b8099b623095c7932bfd1", [ "workers/same-site-cookies/third-party.none.tentative.sub.https.window.html", { @@ -780895,6 +781644,10 @@ [ "script", "/resources/testdriver-vendor.js" + ], + [ + "script", + "/workers/same-site-cookies/resources/util.js" ] ] } @@ -806939,7 +807692,7 @@ }, "fragment_navigated": { "fragment_navigated.py": [ - "a4bd012588d28af69af634b06b288274c63a35ff", + "fb690807f214632add89f1de98b90789fdb1117b", [ null, {} @@ -807471,6 +808224,15 @@ ] } }, + "integration": { + "navigation.py": [ + "23615040c78710d0810591983f183c5cc8954b40", + [ + null, + {} + ] + ] + }, "log": { "entry_added": { "console.py": [ @@ -808221,6 +808983,29 @@ } }, "storage": { + "get_cookies": { + "filter.py": [ + "b244ef86ac24d22c619fcdbc73f32d3edee828cc", + [ + null, + {} + ] + ], + "invalid.py": [ + "fbd5647f30345387e0d63e4741d2f630f47a4e1c", + [ + null, + {} + ] + ], + "partition.py": [ + "a1c26503525034614a1861b3512b60144df9f2ca", + [ + null, + {} + ] + ] + }, "set_cookie": { "cookie_domain.py": [ "558d49c186c26361ec7f98e363abc34462a0e481", @@ -808279,7 +809064,7 @@ ] ], "invalid.py": [ - "24f6153402d8cebee6f5c371e18020d2c485a6a2", + "53d2573575b645b76c2e101c833e28e87e7d86b4", [ null, {} @@ -809067,7 +809852,7 @@ }, "get_element_text": { "get.py": [ - "547152b2a72e3c9d27da81c010fd681378e6529d", + "924a4e8d79771d78de59e48f61bb6e88ab34a7b9", [ null, {} diff --git a/tests/wpt/meta/css/css-borders/border-image-width-interpolation-math-functions-tentative.html.ini b/tests/wpt/meta/css/css-borders/border-image-width-interpolation-math-functions-tentative.html.ini new file mode 100644 index 00000000000..fcc2d8205dd --- /dev/null +++ b/tests/wpt/meta/css/css-borders/border-image-width-interpolation-math-functions-tentative.html.ini @@ -0,0 +1,144 @@ +[border-image-width-interpolation-math-functions-tentative.html] + [CSS Transitions: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [CSS Transitions: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [CSS Transitions: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [CSS Transitions: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [CSS Transitions: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [CSS Transitions: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (2) should be [260\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (2) should be [260\]] + expected: FAIL + + [CSS Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [CSS Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [CSS Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [CSS Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [CSS Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [CSS Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (2) should be [260\]] + expected: FAIL + + [Web Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [Web Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [Web Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [Web Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [Web Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [Web Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (2) should be [260\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (2) should be [260\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (2) should be [260\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (2) should be [260\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (2) should be [260\]] + expected: FAIL diff --git a/tests/wpt/meta/css/css-color/parsing/color-computed-color-mix-function.html.ini b/tests/wpt/meta/css/css-color/parsing/color-computed-color-mix-function.html.ini index 3f3a52b9d50..49dceb7d0a5 100644 --- a/tests/wpt/meta/css/css-color/parsing/color-computed-color-mix-function.html.ini +++ b/tests/wpt/meta/css/css-color/parsing/color-computed-color-mix-function.html.ini @@ -814,3 +814,27 @@ [Property color value 'color-mix(in oklch, oklab(0.5 0 0), black)'] expected: FAIL + + [Property color value 'color-mix(in hsl, white, blue)'] + expected: FAIL + + [Property color value 'color-mix(in hsl, white 10%, blue)'] + expected: FAIL + + [Property color value 'color-mix(in hwb, white, blue)'] + expected: FAIL + + [Property color value 'color-mix(in hwb, white 10%, blue)'] + expected: FAIL + + [Property color value 'color-mix(in lch, white, blue)'] + expected: FAIL + + [Property color value 'color-mix(in lch, white 10%, blue)'] + expected: FAIL + + [Property color value 'color-mix(in oklch, white, blue)'] + expected: FAIL + + [Property color value 'color-mix(in oklch, white 10%, blue)'] + expected: FAIL diff --git a/tests/wpt/meta/css/css-color/parsing/color-valid-hsl.html.ini b/tests/wpt/meta/css/css-color/parsing/color-valid-hsl.html.ini index fb22c6bf352..a3d8c949834 100644 --- a/tests/wpt/meta/css/css-color/parsing/color-valid-hsl.html.ini +++ b/tests/wpt/meta/css/css-color/parsing/color-valid-hsl.html.ini @@ -49,3 +49,12 @@ [e.style['color'\] = "hsl(120 30 50 / none)" should set the property value] expected: FAIL + + [e.style['color'\] = "hsl(30 -50% 60)" should set the property value] + expected: FAIL + + [e.style['color'\] = "hsl(0 -50 40%)" should set the property value] + expected: FAIL + + [e.style['color'\] = "hsl(30 -50 60)" should set the property value] + expected: FAIL diff --git a/tests/wpt/meta/css/css-fonts/font-size-adjust-interpolation-math-functions.tentative.html.ini b/tests/wpt/meta/css/css-fonts/font-size-adjust-interpolation-math-functions.tentative.html.ini new file mode 100644 index 00000000000..ac7fa1b4461 --- /dev/null +++ b/tests/wpt/meta/css/css-fonts/font-size-adjust-interpolation-math-functions.tentative.html.ini @@ -0,0 +1,144 @@ +[font-size-adjust-interpolation-math-functions.tentative.html] + [CSS Transitions: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [CSS Transitions: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [CSS Transitions: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [CSS Transitions: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [CSS Transitions: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [CSS Transitions: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (2) should be [260\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (2) should be [260\]] + expected: FAIL + + [CSS Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [CSS Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [CSS Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [CSS Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [CSS Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [CSS Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (2) should be [260\]] + expected: FAIL + + [Web Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [Web Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [Web Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [Web Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [Web Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [Web Animations: property from [100\] to [calc(sign(20rem - 20px) * 180)\] at (2) should be [260\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (2) should be [260\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (2) should be [260\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (2) should be [260\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (-1) should be [20\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0) should be [100\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.125) should be [110\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (0.875) should be [170\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (1) should be [180\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100)\] to [calc(progress(10rem from 20px to 100px) * 180)\] at (2) should be [260\]] + expected: FAIL diff --git a/tests/wpt/meta/css/css-fonts/font-stretch-interpolation-math-functions.tentative.html.ini b/tests/wpt/meta/css/css-fonts/font-stretch-interpolation-math-functions.tentative.html.ini new file mode 100644 index 00000000000..30f9f12ae64 --- /dev/null +++ b/tests/wpt/meta/css/css-fonts/font-stretch-interpolation-math-functions.tentative.html.ini @@ -0,0 +1,144 @@ +[font-stretch-interpolation-math-functions.tentative.html] + [CSS Transitions: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (-1) should be [20%\]] + expected: FAIL + + [CSS Transitions: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (0) should be [100%\]] + expected: FAIL + + [CSS Transitions: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (0.125) should be [110%\]] + expected: FAIL + + [CSS Transitions: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (0.875) should be [170%\]] + expected: FAIL + + [CSS Transitions: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (1) should be [180%\]] + expected: FAIL + + [CSS Transitions: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (2) should be [260%\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (-1) should be [20%\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (0) should be [100%\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (0.125) should be [110%\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (0.875) should be [170%\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (1) should be [180%\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (2) should be [260%\]] + expected: FAIL + + [CSS Animations: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (-1) should be [20%\]] + expected: FAIL + + [CSS Animations: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (0) should be [100%\]] + expected: FAIL + + [CSS Animations: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (0.125) should be [110%\]] + expected: FAIL + + [CSS Animations: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (0.875) should be [170%\]] + expected: FAIL + + [CSS Animations: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (1) should be [180%\]] + expected: FAIL + + [CSS Animations: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (2) should be [260%\]] + expected: FAIL + + [Web Animations: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (-1) should be [20%\]] + expected: FAIL + + [Web Animations: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (0) should be [100%\]] + expected: FAIL + + [Web Animations: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (0.125) should be [110%\]] + expected: FAIL + + [Web Animations: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (0.875) should be [170%\]] + expected: FAIL + + [Web Animations: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (1) should be [180%\]] + expected: FAIL + + [Web Animations: property from [100%\] to [calc(sign(20rem - 20px) * 180%)\] at (2) should be [260%\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (-1) should be [20%\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (0) should be [100%\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (0.125) should be [110%\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (0.875) should be [170%\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (1) should be [180%\]] + expected: FAIL + + [CSS Transitions: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (2) should be [260%\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (-1) should be [20%\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (0) should be [100%\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (0.125) should be [110%\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (0.875) should be [170%\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (1) should be [180%\]] + expected: FAIL + + [CSS Transitions with transition: all: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (2) should be [260%\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (-1) should be [20%\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (0) should be [100%\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (0.125) should be [110%\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (0.875) should be [170%\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (1) should be [180%\]] + expected: FAIL + + [CSS Animations: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (2) should be [260%\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (-1) should be [20%\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (0) should be [100%\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (0.125) should be [110%\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (0.875) should be [170%\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (1) should be [180%\]] + expected: FAIL + + [Web Animations: property from [calc(sign(20rem - 20px) * 100%)\] to [calc(progress(10rem from 20px to 100px) * 180%)\] at (2) should be [260%\]] + expected: FAIL diff --git a/tests/wpt/meta/css/css-fonts/variations/at-font-face-font-matching.html.ini b/tests/wpt/meta/css/css-fonts/variations/at-font-face-font-matching.html.ini index d62a72d17db..0a47945caf9 100644 --- a/tests/wpt/meta/css/css-fonts/variations/at-font-face-font-matching.html.ini +++ b/tests/wpt/meta/css/css-fonts/variations/at-font-face-font-matching.html.ini @@ -313,3 +313,15 @@ [Matching font-style: 'oblique -10deg' should prefer 'oblique -50deg -40deg' over 'italic'] expected: FAIL + + [Matching font-weight: '430' should prefer '450 460' over '500'] + expected: FAIL + + [Matching font-weight: '399' should prefer '400' over '450 460'] + expected: FAIL + + [Matching font-style: 'oblique 10deg' should prefer 'oblique 10deg' over 'oblique 5deg'] + expected: FAIL + + [Matching font-style: 'oblique -21deg' should prefer 'oblique -21deg' over 'oblique -60deg -40deg'] + expected: FAIL diff --git a/tests/wpt/meta/css/css-transitions/starting-style-cascade.html.ini b/tests/wpt/meta/css/css-transitions/starting-style-cascade.html.ini index b29e178ab54..4fcdc07a655 100644 --- a/tests/wpt/meta/css/css-transitions/starting-style-cascade.html.ini +++ b/tests/wpt/meta/css/css-transitions/starting-style-cascade.html.ini @@ -1,4 +1,5 @@ [starting-style-cascade.html] + expected: ERROR [Overridden @starting-style - order of appearance] expected: FAIL diff --git a/tests/wpt/meta/css/css-transitions/starting-style-rule-none.html.ini b/tests/wpt/meta/css/css-transitions/starting-style-rule-none.html.ini index f01ead5128a..1ade9851ece 100644 --- a/tests/wpt/meta/css/css-transitions/starting-style-rule-none.html.ini +++ b/tests/wpt/meta/css/css-transitions/starting-style-rule-none.html.ini @@ -1,3 +1,4 @@ [starting-style-rule-none.html] + expected: ERROR [@starting-style with display:none] expected: FAIL diff --git a/tests/wpt/meta/css/css-variables/variables-animation-math-functions-tentative.html.ini b/tests/wpt/meta/css/css-variables/variables-animation-math-functions-tentative.html.ini new file mode 100644 index 00000000000..fc4c1ab570a --- /dev/null +++ b/tests/wpt/meta/css/css-variables/variables-animation-math-functions-tentative.html.ini @@ -0,0 +1,108 @@ +[variables-animation-math-functions-tentative.html] + [CSS Transitions: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (-1) should be [20deg\]] + expected: FAIL + + [CSS Transitions: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (0) should be [100deg\]] + expected: FAIL + + [CSS Transitions: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (0.125) should be [110deg\]] + expected: FAIL + + [CSS Transitions: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (0.875) should be [170deg\]] + expected: FAIL + + [CSS Transitions: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (1) should be [180deg\]] + expected: FAIL + + [CSS Transitions: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (2) should be [260deg\]] + expected: FAIL + + [CSS Animations: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (-1) should be [20deg\]] + expected: FAIL + + [CSS Animations: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (0) should be [100deg\]] + expected: FAIL + + [CSS Animations: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (0.125) should be [110deg\]] + expected: FAIL + + [CSS Animations: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (0.875) should be [170deg\]] + expected: FAIL + + [CSS Animations: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (1) should be [180deg\]] + expected: FAIL + + [CSS Animations: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (2) should be [260deg\]] + expected: FAIL + + [Web Animations: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (-1) should be [20deg\]] + expected: FAIL + + [Web Animations: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (0) should be [100deg\]] + expected: FAIL + + [Web Animations: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (0.125) should be [110deg\]] + expected: FAIL + + [Web Animations: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (0.875) should be [170deg\]] + expected: FAIL + + [Web Animations: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (1) should be [180deg\]] + expected: FAIL + + [Web Animations: property <--my-angle> from [100deg\] to [calc(sign(20rem - 20px) * 180deg)\] at (2) should be [260deg\]] + expected: FAIL + + [CSS Transitions: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (-1) should be [20deg\]] + expected: FAIL + + [CSS Transitions: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (0) should be [100deg\]] + expected: FAIL + + [CSS Transitions: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (0.125) should be [110deg\]] + expected: FAIL + + [CSS Transitions: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (0.875) should be [170deg\]] + expected: FAIL + + [CSS Transitions: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (1) should be [180deg\]] + expected: FAIL + + [CSS Transitions: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (2) should be [260deg\]] + expected: FAIL + + [CSS Animations: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (-1) should be [20deg\]] + expected: FAIL + + [CSS Animations: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (0) should be [100deg\]] + expected: FAIL + + [CSS Animations: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (0.125) should be [110deg\]] + expected: FAIL + + [CSS Animations: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (0.875) should be [170deg\]] + expected: FAIL + + [CSS Animations: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (1) should be [180deg\]] + expected: FAIL + + [CSS Animations: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (2) should be [260deg\]] + expected: FAIL + + [Web Animations: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (-1) should be [20deg\]] + expected: FAIL + + [Web Animations: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (0) should be [100deg\]] + expected: FAIL + + [Web Animations: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (0.125) should be [110deg\]] + expected: FAIL + + [Web Animations: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (0.875) should be [170deg\]] + expected: FAIL + + [Web Animations: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (1) should be [180deg\]] + expected: FAIL + + [Web Animations: property <--my-angle> from [calc(sign(20rem - 20px) * 100deg)\] to [calc(progress(10rem from 20px to 100px) * 180deg)\] at (2) should be [260deg\]] + expected: FAIL diff --git a/tests/wpt/meta/css/cssom/getComputedStyle-pseudo-with-argument.html.ini b/tests/wpt/meta/css/cssom/getComputedStyle-pseudo-with-argument.html.ini new file mode 100644 index 00000000000..2507753f7ef --- /dev/null +++ b/tests/wpt/meta/css/cssom/getComputedStyle-pseudo-with-argument.html.ini @@ -0,0 +1,15 @@ +[getComputedStyle-pseudo-with-argument.html] + [This pseudo-element should parse: ::highlight(name)] + expected: FAIL + + [This pseudo-element should parse: ::highlight(\nname] + expected: FAIL + + [This pseudo-element should parse: ::highlight(name\t] + expected: FAIL + + [This pseudo-element should parse: ::highlight( name ] + expected: FAIL + + [This pseudo-element should parse: ::highlight( n\\61me )] + expected: FAIL diff --git a/tests/wpt/meta/css/mediaqueries/display-mode.html.ini b/tests/wpt/meta/css/mediaqueries/display-mode.html.ini index 5a1060ad0f6..69978c1538a 100644 --- a/tests/wpt/meta/css/mediaqueries/display-mode.html.ini +++ b/tests/wpt/meta/css/mediaqueries/display-mode.html.ini @@ -16,3 +16,6 @@ [Check that display-mode evaluates to true in the boolean context] expected: FAIL + + [Should be known: '(display-mode: picture-in-picture)'] + expected: FAIL diff --git a/tests/wpt/meta/css/selectors/has-style-sharing-pseudo-001.html.ini b/tests/wpt/meta/css/selectors/has-style-sharing-pseudo-001.html.ini new file mode 100644 index 00000000000..af98ad1abe4 --- /dev/null +++ b/tests/wpt/meta/css/selectors/has-style-sharing-pseudo-001.html.ini @@ -0,0 +1,2 @@ +[has-style-sharing-pseudo-001.html] + expected: FAIL diff --git a/tests/wpt/meta/css/selectors/has-style-sharing-pseudo-002.html.ini b/tests/wpt/meta/css/selectors/has-style-sharing-pseudo-002.html.ini new file mode 100644 index 00000000000..b161ef70a25 --- /dev/null +++ b/tests/wpt/meta/css/selectors/has-style-sharing-pseudo-002.html.ini @@ -0,0 +1,2 @@ +[has-style-sharing-pseudo-002.html] + expected: FAIL diff --git a/tests/wpt/meta/css/selectors/has-style-sharing-pseudo-003.html.ini b/tests/wpt/meta/css/selectors/has-style-sharing-pseudo-003.html.ini new file mode 100644 index 00000000000..85c7b37aac7 --- /dev/null +++ b/tests/wpt/meta/css/selectors/has-style-sharing-pseudo-003.html.ini @@ -0,0 +1,2 @@ +[has-style-sharing-pseudo-003.html] + expected: FAIL diff --git a/tests/wpt/meta/css/selectors/has-style-sharing-pseudo-004.html.ini b/tests/wpt/meta/css/selectors/has-style-sharing-pseudo-004.html.ini new file mode 100644 index 00000000000..81842b8f8cb --- /dev/null +++ b/tests/wpt/meta/css/selectors/has-style-sharing-pseudo-004.html.ini @@ -0,0 +1,2 @@ +[has-style-sharing-pseudo-004.html] + expected: FAIL diff --git a/tests/wpt/meta/css/selectors/has-style-sharing-pseudo-005.html.ini b/tests/wpt/meta/css/selectors/has-style-sharing-pseudo-005.html.ini new file mode 100644 index 00000000000..245fb34babc --- /dev/null +++ b/tests/wpt/meta/css/selectors/has-style-sharing-pseudo-005.html.ini @@ -0,0 +1,2 @@ +[has-style-sharing-pseudo-005.html] + expected: FAIL diff --git a/tests/wpt/meta/css/selectors/has-style-sharing-pseudo-006.html.ini b/tests/wpt/meta/css/selectors/has-style-sharing-pseudo-006.html.ini new file mode 100644 index 00000000000..40739ba8a40 --- /dev/null +++ b/tests/wpt/meta/css/selectors/has-style-sharing-pseudo-006.html.ini @@ -0,0 +1,2 @@ +[has-style-sharing-pseudo-006.html] + expected: FAIL diff --git a/tests/wpt/meta/fetch/security/dangling-markup/dangling-markup-mitigation-allowed-apis.html.ini b/tests/wpt/meta/fetch/security/dangling-markup/dangling-markup-mitigation-allowed-apis.html.ini new file mode 100644 index 00000000000..6c1cf88513e --- /dev/null +++ b/tests/wpt/meta/fetch/security/dangling-markup/dangling-markup-mitigation-allowed-apis.html.ini @@ -0,0 +1,3 @@ +[dangling-markup-mitigation-allowed-apis.html] + [Does not block window.open(`resources/empty.html?\n<`,'_self')] + expected: FAIL diff --git a/tests/wpt/meta/fetch/security/dangling-markup/dangling-markup-mitigation-data-url.tentative.sub.html.ini b/tests/wpt/meta/fetch/security/dangling-markup/dangling-markup-mitigation-data-url.sub.html.ini similarity index 97% rename from tests/wpt/meta/fetch/security/dangling-markup/dangling-markup-mitigation-data-url.tentative.sub.html.ini rename to tests/wpt/meta/fetch/security/dangling-markup/dangling-markup-mitigation-data-url.sub.html.ini index 5af5dc2813d..429fb6d6f29 100644 --- a/tests/wpt/meta/fetch/security/dangling-markup/dangling-markup-mitigation-data-url.tentative.sub.html.ini +++ b/tests/wpt/meta/fetch/security/dangling-markup/dangling-markup-mitigation-data-url.sub.html.ini @@ -1,4 +1,4 @@ -[dangling-markup-mitigation-data-url.tentative.sub.html] +[dangling-markup-mitigation-data-url.sub.html] [] expected: FAIL diff --git a/tests/wpt/meta-legacy-layout/fetch/security/dangling-markup/dangling-markup-mitigation.tentative.html.ini b/tests/wpt/meta/fetch/security/dangling-markup/dangling-markup-mitigation.html.ini similarity index 93% rename from tests/wpt/meta-legacy-layout/fetch/security/dangling-markup/dangling-markup-mitigation.tentative.html.ini rename to tests/wpt/meta/fetch/security/dangling-markup/dangling-markup-mitigation.html.ini index 3b0a8472abf..c7893561e27 100644 --- a/tests/wpt/meta-legacy-layout/fetch/security/dangling-markup/dangling-markup-mitigation.tentative.html.ini +++ b/tests/wpt/meta/fetch/security/dangling-markup/dangling-markup-mitigation.html.ini @@ -1,4 +1,4 @@ -[dangling-markup-mitigation.tentative.html] +[dangling-markup-mitigation.html] [Fetch: /images/gre\\nen-1x1.png?img=<] expected: FAIL diff --git a/tests/wpt/meta/fetch/security/dangling-markup/dangling-markup-mitigation.https.html.ini b/tests/wpt/meta/fetch/security/dangling-markup/dangling-markup-mitigation.https.html.ini new file mode 100644 index 00000000000..50ec2d74bb6 --- /dev/null +++ b/tests/wpt/meta/fetch/security/dangling-markup/dangling-markup-mitigation.https.html.ini @@ -0,0 +1,3 @@ +[dangling-markup-mitigation.https.html] + [Only blocks dangling markup requests] + expected: FAIL diff --git a/tests/wpt/meta/html/browsers/browsing-the-web/navigating-across-documents/initial-empty-document/load-pageshow-events-iframe-contentWindow.html.ini b/tests/wpt/meta/html/browsers/browsing-the-web/navigating-across-documents/initial-empty-document/load-pageshow-events-iframe-contentWindow.html.ini index b8fd22e2b81..149bcb4ff8c 100644 --- a/tests/wpt/meta/html/browsers/browsing-the-web/navigating-across-documents/initial-empty-document/load-pageshow-events-iframe-contentWindow.html.ini +++ b/tests/wpt/meta/html/browsers/browsing-the-web/navigating-across-documents/initial-empty-document/load-pageshow-events-iframe-contentWindow.html.ini @@ -10,6 +10,3 @@ [load & pageshow events do not fire on contentWindow of + + diff --git a/tests/wpt/tests/document-picture-in-picture/support/focus-opener.js b/tests/wpt/tests/document-picture-in-picture/support/focus-opener.js new file mode 100644 index 00000000000..679eef3b22e --- /dev/null +++ b/tests/wpt/tests/document-picture-in-picture/support/focus-opener.js @@ -0,0 +1,3 @@ +// This script runs in the document picture-in-picture window to focus its +// opener window. +opener.focus(); diff --git a/tests/wpt/tests/dom/events/scrolling/overscroll-event-fired-to-scrolled-element.html b/tests/wpt/tests/dom/events/scrolling/overscroll-event-fired-to-scrolled-element.html index cfc782a809a..be4176df59d 100644 --- a/tests/wpt/tests/dom/events/scrolling/overscroll-event-fired-to-scrolled-element.html +++ b/tests/wpt/tests/dom/events/scrolling/overscroll-event-fired-to-scrolled-element.html @@ -10,11 +10,14 @@ width: 200px; height: 200px; overflow: scroll; + position: absolute; + left: 150px; + top: 150px; } #innerDiv { - width: 400px; - height: 400px; + width: 250px; + height: 250px; } @@ -45,7 +48,7 @@ function runTest() { await waitForCompositorCommit(); // Do a horizontal scroll and wait for overscroll event. - await touchScrollInTarget(300, scrolling_div , 'right'); + await touchScrollInTarget(100, scrolling_div , 'right'); await waitFor(() => { return overscrolled_x_delta > 0; }, 'Scroller did not receive overscroll event after horizontal scroll.'); assert_equals(scrolling_div.scrollWidth - scrolling_div.scrollLeft, @@ -55,7 +58,7 @@ function runTest() { overscrolled_y_delta = 0; // Do a vertical scroll and wait for overscroll event. - await touchScrollInTarget(300, scrolling_div, 'down'); + await touchScrollInTarget(100, scrolling_div, 'down'); await waitFor(() => { return overscrolled_y_delta > 0; }, 'Scroller did not receive overscroll event after vertical scroll.'); assert_equals(scrolling_div.scrollHeight - scrolling_div.scrollTop, diff --git a/tests/wpt/tests/editing/edit-context/edit-context-basics.tentative.html b/tests/wpt/tests/editing/edit-context/edit-context-basics.tentative.html index 78b6824921a..0011270c812 100644 --- a/tests/wpt/tests/editing/edit-context/edit-context-basics.tentative.html +++ b/tests/wpt/tests/editing/edit-context/edit-context-basics.tentative.html @@ -191,6 +191,19 @@ assert_equals(editContext.selectionStart, 3); assert_equals(editContext.selectionEnd, 0); }, 'EditContext should allow a backwards selection'); + + test(function() { + const editContext = new EditContext(); + assert_not_equals(editContext, null); + editContext.updateText(6, 0, "abcdef"); + assert_equals(editContext.text, "abcdef"); + + editContext.updateText(2, 5, "ghi"); + assert_equals(editContext.text, "abghif"); + + editContext.updateText(5, 2, "jkl"); + assert_equals(editContext.text, "abjklf"); + }, 'updateText can replace substrings including with backwards parameters'); diff --git a/tests/wpt/tests/editing/other/paste-in-list-with-inline-style.tentative.html b/tests/wpt/tests/editing/other/paste-in-list-with-inline-style.tentative.html new file mode 100644 index 00000000000..97710e805dd --- /dev/null +++ b/tests/wpt/tests/editing/other/paste-in-list-with-inline-style.tentative.html @@ -0,0 +1,30 @@ + + +This tests for a bug in ReplaceSelectionCommand where styles are lost during paste. + + +copy this +
+
+ diff --git a/tests/wpt/tests/event-timing/interactionid-composition-manual.html b/tests/wpt/tests/event-timing/interactionid-composition-manual.html new file mode 100644 index 00000000000..2b4f2aab094 --- /dev/null +++ b/tests/wpt/tests/event-timing/interactionid-composition-manual.html @@ -0,0 +1,162 @@ + + + + + + + + + Event Timing: interactionId composition events. +
+ Select your Operating System from the list + +

Your selected OS is: + +

+
+
+    Steps:
+    1) Open  IME and select Hiragana input method.
+    2) Click at the above textbox and then type 'a' using keyboard.
+    3) Press the '{Enter}' key to complete the IME composition.
+    4) Click here to test again if not following the steps exactly.
+
+    
+
+Expected Result:
+    The test is successful when the sentence "PASS Event Timing: interactionId composition events" is displayed
+    at the bottom of the page after completing all the steps. If there is an indicated Harness Error next to the sentence, the test failed.
+    Moreover, the event log table below provides a summary of the keyboard events processed throughout the test.
+    Here is a breakdown of the columns in the table:
+
+    1. InteractionId: Identifies the specific interaction to which an event belongs.
+    2. EventType: Specifies the type of event that occurred during a particular interaction. There are
+    seven possible event types:
+    - 'keydown'
+    - 'keypress'
+    - 'input'
+    - 'keyup'
+    - 'compositionupdate'
+    - 'compositionstart'
+    - 'compositionend'
+    3. NumberOfEvents: Indicates the number of times a particular type of event was recorded in a single interaction.
+
+
+ + + + + + + +
InteractionIdEvent TypeNumber of Events
+ + + + + + + \ No newline at end of file diff --git a/tests/wpt/tests/event-timing/interactionid-keypress.html b/tests/wpt/tests/event-timing/interactionid-keypress.html new file mode 100644 index 00000000000..a6f20099671 --- /dev/null +++ b/tests/wpt/tests/event-timing/interactionid-keypress.html @@ -0,0 +1,39 @@ + + + + +Event Timing: interactionId-keypress. + + + + + + + + + + + \ No newline at end of file diff --git a/tests/wpt/tests/event-timing/modal-dialog-interrupt-paint.html b/tests/wpt/tests/event-timing/modal-dialog-interrupt-paint.html new file mode 100644 index 00000000000..011311a03a3 --- /dev/null +++ b/tests/wpt/tests/event-timing/modal-dialog-interrupt-paint.html @@ -0,0 +1,38 @@ + + + +Event Timing: Modal Dialog Interrupt Paint + + + + + + + + + + + diff --git a/tests/wpt/tests/fenced-frame/resources/unreached.https.html b/tests/wpt/tests/fenced-frame/resources/unreached.https.html new file mode 100644 index 00000000000..bd389ec4fbd --- /dev/null +++ b/tests/wpt/tests/fenced-frame/resources/unreached.https.html @@ -0,0 +1,15 @@ + +File used to assert that navigations do not succeed. + + + + + + + + + diff --git a/tests/wpt/tests/fenced-frame/resources/utils.js b/tests/wpt/tests/fenced-frame/resources/utils.js index cbea173f17a..77af9449b29 100644 --- a/tests/wpt/tests/fenced-frame/resources/utils.js +++ b/tests/wpt/tests/fenced-frame/resources/utils.js @@ -250,6 +250,11 @@ function buildRemoteContextForObject(object, uuid, html) { } }; + // If `object` is null (e.g. a window created with noopener), set it to a + // dummy value so that the Proxy constructor won't fail. + if (object == null) { + object = {}; + } const proxy = new Proxy(object, handler); return proxy; } diff --git a/tests/wpt/tests/fenced-frame/revoke-popup.https.html b/tests/wpt/tests/fenced-frame/revoke-popup.https.html new file mode 100644 index 00000000000..e4a2bb26ad2 --- /dev/null +++ b/tests/wpt/tests/fenced-frame/revoke-popup.https.html @@ -0,0 +1,47 @@ + +Test that window.fence.disableUntrustedNetwork disables + popup navigations. + + + + + + + + + + + + + diff --git a/tests/wpt/tests/fenced-frame/revoke-unfenced-top-navigation.https.html b/tests/wpt/tests/fenced-frame/revoke-unfenced-top-navigation.https.html new file mode 100644 index 00000000000..873404768f0 --- /dev/null +++ b/tests/wpt/tests/fenced-frame/revoke-unfenced-top-navigation.https.html @@ -0,0 +1,47 @@ + +Test that window.fence.disableUntrustedNetwork disables + _unfencedTop navigations. + + + + + + + + + + + + + diff --git a/tests/wpt/tests/fetch/security/dangling-markup/dangling-markup-mitigation-allowed-apis.html b/tests/wpt/tests/fetch/security/dangling-markup/dangling-markup-mitigation-allowed-apis.html new file mode 100644 index 00000000000..66456a8876b --- /dev/null +++ b/tests/wpt/tests/fetch/security/dangling-markup/dangling-markup-mitigation-allowed-apis.html @@ -0,0 +1,26 @@ + + + + + diff --git a/tests/wpt/tests/fetch/security/dangling-markup/dangling-markup-mitigation-data-url.tentative.sub.html b/tests/wpt/tests/fetch/security/dangling-markup/dangling-markup-mitigation-data-url.sub.html similarity index 100% rename from tests/wpt/tests/fetch/security/dangling-markup/dangling-markup-mitigation-data-url.tentative.sub.html rename to tests/wpt/tests/fetch/security/dangling-markup/dangling-markup-mitigation-data-url.sub.html diff --git a/tests/wpt/tests/fetch/security/dangling-markup/dangling-markup-mitigation.tentative.html b/tests/wpt/tests/fetch/security/dangling-markup/dangling-markup-mitigation.html similarity index 100% rename from tests/wpt/tests/fetch/security/dangling-markup/dangling-markup-mitigation.tentative.html rename to tests/wpt/tests/fetch/security/dangling-markup/dangling-markup-mitigation.html diff --git a/tests/wpt/tests/fetch/security/dangling-markup/dangling-markup-mitigation.https.html b/tests/wpt/tests/fetch/security/dangling-markup/dangling-markup-mitigation.https.html new file mode 100644 index 00000000000..3f038cbb7be --- /dev/null +++ b/tests/wpt/tests/fetch/security/dangling-markup/dangling-markup-mitigation.https.html @@ -0,0 +1,61 @@ + + + + + + diff --git a/tests/wpt/tests/fetch/security/dangling-markup/resources/empty.html b/tests/wpt/tests/fetch/security/dangling-markup/resources/empty.html new file mode 100644 index 00000000000..0e76edd65b7 --- /dev/null +++ b/tests/wpt/tests/fetch/security/dangling-markup/resources/empty.html @@ -0,0 +1 @@ + diff --git a/tests/wpt/tests/fetch/security/dangling-markup/service-worker.js b/tests/wpt/tests/fetch/security/dangling-markup/service-worker.js new file mode 100644 index 00000000000..837e216a013 --- /dev/null +++ b/tests/wpt/tests/fetch/security/dangling-markup/service-worker.js @@ -0,0 +1,35 @@ +const requests = new Set(); + +addEventListener('install', evt => { + evt.waitUntil(self.skipWaiting()); +}); + +addEventListener('activate', evt => { + evt.waitUntil(self.clients.claim()); +}); + +addEventListener('message', evt => { + evt.source.postMessage(requests); +}); + +addEventListener('fetch', evt => { + const url = new URL(evt.request.url); + const path = url.pathname; + const search = url.search || "?"; + if (path.includes('404')) { + const dir = path.split('/'); + const request = dir[dir.length-1] + search; + if (!requests.has(request)) { + requests.add(request); + } + evt.respondWith(new Response("")); + } else if (path.endsWith('resources.html')) { + const html = (new URLSearchParams(search)).get('html'); + evt.respondWith(new Response(html, { + headers: { + "Content-Type": "text/html" + } + })); + } + return; +}); diff --git a/tests/wpt/tests/fledge/tentative/auction-config.https.window.js b/tests/wpt/tests/fledge/tentative/auction-config.https.window.js index 3b5814b5d4a..8fbdc95dfc5 100644 --- a/tests/wpt/tests/fledge/tentative/auction-config.https.window.js +++ b/tests/wpt/tests/fledge/tentative/auction-config.https.window.js @@ -390,3 +390,80 @@ makeTest({ [{width: '100', height: '100'}, {width: '200furlongs', height: '200'}]} }); + +subsetTest(promise_test, async test => { + const uuid = generateUuid(test); + + // The renderURL / report URLs for the first/second iterations of the auction. + let renderURL = createRenderURL(uuid); + let bidderReportURL1 = createBidderReportURL(uuid, /*id=*/ 1); + let bidderReportURL2 = createBidderReportURL(uuid, /*id=*/ 2); + let bidderDebugReportURL = + createBidderReportURL(uuid, /*id=*/ 'forDebuggingOnly'); + let sellerReportURL1 = createSellerReportURL(uuid, /*id=*/ 1); + let sellerReportURL2 = createSellerReportURL(uuid, /*id=*/ 2); + let sellerDebugReportURL = + createSellerReportURL(uuid, /*id=*/ 'forDebuggingOnly'); + + // reportWin() sends "bidderReportURL1" if + // browserSignals.forDebuggingOnlyInCooldownOrLockout is true, + // "bidderReportURL2" otherwise. + await joinInterestGroup(test, uuid, { + ads: [{renderURL: renderURL}], + biddingLogicURL: createBiddingScriptURL({ + generateBid: ` + forDebuggingOnly.reportAdAuctionWin('${bidderDebugReportURL}'); + if (!browserSignals.hasOwnProperty( + 'forDebuggingOnlyInCooldownOrLockout')) { + throw "Missing forDebuggingOnlyInCooldownOrLockout in browserSignals"; + } + let bid = browserSignals.forDebuggingOnlyInCooldownOrLockout ? 1 : 2; + return {bid: bid, render: '${renderURL}'};`, + reportWin: ` + if (browserSignals.bid == 1) + sendReportTo('${bidderReportURL1}'); + if (browserSignals.bid == 2) + sendReportTo('${bidderReportURL2}');` + + }) + }); + + // reportResult() sends "sellerReportURL1" if + // browserSignals.forDebuggingOnlyInCooldownOrLockout in scoreAd() is true, + // "sellerReportURL2" otherwise. + const auctionConfigOverrides = { + decisionLogicURL: createDecisionScriptURL(uuid, { + scoreAd: ` + forDebuggingOnly.reportAdAuctionWin('${sellerDebugReportURL}'); + if (!browserSignals.hasOwnProperty( + 'forDebuggingOnlyInCooldownOrLockout')) { + throw "Missing forDebuggingOnlyInCooldownOrLockout in browserSignals"; + } + let desirability = + browserSignals.forDebuggingOnlyInCooldownOrLockout ? 1 : 2; + return {desirability: desirability};`, + reportResult: ` + if (browserSignals.desirability == 1) + sendReportTo('${sellerReportURL1}'); + if (browserSignals.desirability == 2) + sendReportTo('${sellerReportURL2}');` + }) + }; + + // In the first auction, browserSignals.forDebuggingOnlyInCooldownOrLockout in + // generateBid() and scoreAd() should both be false. After the auction, + // lockout and cooldowns should be updated. + await runBasicFledgeAuctionAndNavigate(test, uuid, auctionConfigOverrides); + await waitForObservedRequestsIgnoreDebugOnlyReports( + uuid, [bidderReportURL2, sellerReportURL2]); + + // In the second auction, browserSignals.forDebuggingOnlyInCooldownOrLockout + // in generateBid() and scoreAd() should both be true, since both the buyer + // and seller called forDebuggingOnly API in the first auction, so they are in + // cooldowns at least (and also in lockout if a debug report is allowed to be + // sent). + await runBasicFledgeAuctionAndNavigate(test, uuid, auctionConfigOverrides); + await waitForObservedRequestsIgnoreDebugOnlyReports( + uuid, + [bidderReportURL2, sellerReportURL2, bidderReportURL1, sellerReportURL1]); +}, `forDebuggingOnly lockout and cooldowns updating in one auction, read in another's.`); diff --git a/tests/wpt/tests/fledge/tentative/component-auction.https.window.js b/tests/wpt/tests/fledge/tentative/component-auction.https.window.js index 63771d42b86..c70532024ce 100644 --- a/tests/wpt/tests/fledge/tentative/component-auction.https.window.js +++ b/tests/wpt/tests/fledge/tentative/component-auction.https.window.js @@ -671,7 +671,7 @@ subsetTest(promise_test, async test => { browserSignals.prevWinsMs[0][1].renderURL === "${renderURL1}") { return {bid: 1, allowComponentAuction: true, render: "${renderURL2}"}; } - throw "Unexpected biddingSignals: " + JSON.stringify(browserSignals);`, + throw "Unexpected browserSignals: " + JSON.stringify(browserSignals);`, reportWin: `if (browserSignals.renderURL === "${renderURL1}") sendReportTo("${bidderReportURL1}"); diff --git a/tests/wpt/tests/fledge/tentative/cross-origin.https.window.js b/tests/wpt/tests/fledge/tentative/cross-origin.https.window.js index 788558e5cf3..a8cf93049fa 100644 --- a/tests/wpt/tests/fledge/tentative/cross-origin.https.window.js +++ b/tests/wpt/tests/fledge/tentative/cross-origin.https.window.js @@ -356,8 +356,8 @@ subsetTest(promise_test, async test => { throw "Wrong origin: " + interestGroup.owner; if (!interestGroup.biddingLogicURL.startsWith("${bidderOrigin}")) throw "Wrong origin: " + interestGroup.biddingLogicURL; - if (interestGroup.ads[0].renderUrl != "${renderURL}") - throw "Wrong renderURL: " + interestGroup.ads[0].renderUrl; + if (interestGroup.ads[0].renderURL != "${renderURL}") + throw "Wrong renderURL: " + interestGroup.ads[0].renderURL; if (browserSignals.seller !== "${sellerOrigin}") throw "Wrong origin: " + browserSignals.seller;`, reportWin: `if (browserSignals.topWindowHostname !== "${document.location.hostname}") diff --git a/tests/wpt/tests/fledge/tentative/direct-from-seller-signals.https.window.js b/tests/wpt/tests/fledge/tentative/direct-from-seller-signals.https.window.js index 339bc32ee56..d0c0e550c42 100644 --- a/tests/wpt/tests/fledge/tentative/direct-from-seller-signals.https.window.js +++ b/tests/wpt/tests/fledge/tentative/direct-from-seller-signals.https.window.js @@ -22,7 +22,7 @@ subsetTest(promise_test, async test => { directFromSellerSignalsValidatorCode( uuid, /*expectedSellerSignals=*/ null, /*expectedAuctionSignals=*/ null, /*expectedPerBuyerSignals=*/ null), - // expectedReportUrls + // expectedReportURLs [createSellerReportURL(uuid), createBidderReportURL(uuid)], // renderURLOverride null, @@ -38,7 +38,7 @@ subsetTest(promise_test, async test => { directFromSellerSignalsValidatorCode( uuid, 'sellerSignals/1', /*expectedAuctionSignals=*/null, /*expectedPerBuyerSignals=*/null), - // expectedReportUrls + // expectedReportURLs [createSellerReportURL(uuid), createBidderReportURL(uuid)], // renderURLOverride null, @@ -55,7 +55,7 @@ subsetTest(promise_test, async test => { directFromSellerSignalsValidatorCode( uuid, /*expectedSellerSignals=*/null, 'auctionSignals/2', /*expectedPerBuyerSignals=*/null), - // expectedReportUrls + // expectedReportURLs [createSellerReportURL(uuid), createBidderReportURL(uuid)], // renderURLOverride null, @@ -72,7 +72,7 @@ subsetTest(promise_test, async test => { directFromSellerSignalsValidatorCode( uuid, /*expectedSellerSignals=*/null, /*expectedAuctionSignals=*/null, 'perBuyerSignals/3'), - // expectedReportUrls + // expectedReportURLs [createSellerReportURL(uuid), createBidderReportURL(uuid)], // renderURLOverride null, @@ -89,7 +89,7 @@ subsetTest(promise_test, async test => { directFromSellerSignalsValidatorCode( uuid, 'sellerSignals/4', 'auctionSignals/4', 'perBuyerSignals/4'), - // expectedReportUrls + // expectedReportURLs [createSellerReportURL(uuid), createBidderReportURL(uuid)], // renderURLOverride null, @@ -106,7 +106,7 @@ subsetTest(promise_test, async test => { directFromSellerSignalsValidatorCode( uuid, 'sellerSignals/1', /*expectedAuctionSignals=*/null, /*expectedPerBuyerSignals=*/null), - // expectedReportUrls + // expectedReportURLs [createSellerReportURL(uuid), createBidderReportURL(uuid)], // renderURLOverride null, @@ -119,7 +119,7 @@ subsetTest(promise_test, async test => { directFromSellerSignalsValidatorCode( uuid, /*expectedSellerSignals=*/null, 'auctionSignals/2', /*expectedPerBuyerSignals=*/null), - // expectedReportUrls + // expectedReportURLs [createSellerReportURL(uuid), createBidderReportURL(uuid)], // renderURLOverride null, @@ -137,7 +137,7 @@ subsetTest(promise_test, async test => { directFromSellerSignalsValidatorCode( uuid, 'sellerSignals/4', 'auctionSignals/4', 'perBuyerSignals/4'), - // expectedReportUrls + // expectedReportURLs [createSellerReportURL(uuid), createBidderReportURL(uuid)], // renderURLOverride null, @@ -216,7 +216,7 @@ subsetTest(promise_test, async test => { directFromSellerSignalsValidatorCode( uuid, 'sellerSignals/5', 'auctionSignals/5', /*expectedPerBuyerSignals=*/null), - // expectedReportUrls + // expectedReportURLs [createSellerReportURL(uuid), createBidderReportURL(uuid)], // renderURLOverride null, @@ -233,7 +233,7 @@ subsetTest(promise_test, async test => { directFromSellerSignalsValidatorCode( uuid, 'sellerSignals/5', 'auctionSignals/5', /*expectedPerBuyerSignals=*/null), - // expectedReportUrls + // expectedReportURLs [createSellerReportURL(uuid), createBidderReportURL(uuid)], // renderURLOverride null, @@ -250,7 +250,7 @@ subsetTest(promise_test, async test => { directFromSellerSignalsValidatorCode( uuid, /*expectedSellerSignals=*/null, /*expectedAuctionSignals=*/null, /*expectedPerBuyerSignals=*/null), - // expectedReportUrls + // expectedReportURLs [createSellerReportURL(uuid), createBidderReportURL(uuid)], // renderURLOverride null, @@ -295,7 +295,7 @@ subsetTest(promise_test, async test => { directFromSellerSignalsValidatorCode( uuid, /*expectedSellerSignals=*/null, /*expectedAuctionSignals=*/null, /*expectedPerBuyerSignals=*/null), - // expectedReportUrls + // expectedReportURLs [createSellerReportURL(uuid), createBidderReportURL(uuid)], // renderURLOverride null, @@ -312,7 +312,7 @@ subsetTest(promise_test, async test => { directFromSellerSignalsValidatorCode( uuid, /*expectedSellerSignals=*/null, /*expectedAuctionSignals=*/null, /*expectedPerBuyerSignals=*/null), - // expectedReportUrls + // expectedReportURLs [createSellerReportURL(uuid), createBidderReportURL(uuid)], // renderURLOverride null, @@ -329,7 +329,7 @@ subsetTest(promise_test, async test => { directFromSellerSignalsValidatorCode( uuid, /*expectedSellerSignals=*/null, /*expectedAuctionSignals=*/null, /*expectedPerBuyerSignals=*/null), - // expectedReportUrls + // expectedReportURLs [createSellerReportURL(uuid), createBidderReportURL(uuid)], // renderURLOverride null, @@ -347,7 +347,7 @@ subsetTest(promise_test, async test => { await fetchDirectFromSellerSignals({ 'Buyer-Origin': window.location.origin }); await runReportTest( test, uuid, codeToInsert, - // expectedReportUrls + // expectedReportURLs [createSellerReportURL(uuid), createBidderReportURL(uuid)], // renderURLOverride null, @@ -366,7 +366,7 @@ subsetTest(promise_test, async test => { await fetchDirectFromSellerSignals({ 'Buyer-Origin': window.location.origin }, OTHER_ORIGIN1); await runReportTest( test, uuid, codeToInsert, - // expectedReportUrls + // expectedReportURLs [createSellerReportURL(uuid), createBidderReportURL(uuid)], // renderURLOverride null, @@ -386,7 +386,7 @@ subsetTest(promise_test, async test => { directFromSellerSignalsValidatorCode( uuid, 'sellerSignals/4', 'auctionSignals/4', 'perBuyerSignals/4'), - // expectedReportUrls + // expectedReportURLs [createSellerReportURL(uuid), createBidderReportURL(uuid, '1', OTHER_ORIGIN1)], // renderURLOverride null, @@ -406,7 +406,7 @@ subsetTest(promise_test, async test => { test_instance, "${uuid}", directFromSellerSignalsValidatorCode( "${uuid}", 'sellerSignals/4', 'auctionSignals/4', 'perBuyerSignals/4'), - // expectedReportUrls + // expectedReportURLs [createSellerReportURL("${uuid}"), createBidderReportURL("${uuid}")], // renderURLOverride null, @@ -425,7 +425,7 @@ subsetTest(promise_test, async test => { directFromSellerSignalsValidatorCode( "${uuid}", 'sellerSignals/4', 'auctionSignals/4', 'perBuyerSignals/4'), - // expectedReportUrls + // expectedReportURLs [createSellerReportURL("${uuid}"), createBidderReportURL("${uuid}")], // renderURLOverride null, @@ -447,7 +447,7 @@ subsetTest(promise_test, async test => { directFromSellerSignalsValidatorCode( "${uuid}", 'sellerSignals/4', 'auctionSignals/4', 'perBuyerSignals/4'), - // expectedReportUrls + // expectedReportURLs [createSellerReportURL("${uuid}"), createBidderReportURL("${uuid}")], // renderURLOverride null, @@ -467,7 +467,7 @@ subsetTest(promise_test, async test => { directFromSellerSignalsValidatorCode( uuid, 'sellerSignals/4', 'auctionSignals/4', 'perBuyerSignals/4'), - // expectedReportUrls + // expectedReportURLs [createSellerReportURL(uuid), createBidderReportURL(uuid)], // renderURLOverride null, @@ -484,7 +484,7 @@ subsetTest(promise_test, async test => { directFromSellerSignalsValidatorCode( uuid, 'sellerSignals', 'auctionSignals', /*expectedPerBuyerSignals=*/null), - // expectedReportUrls + // expectedReportURLs [createSellerReportURL(uuid), createBidderReportURL(uuid)], // renderURLOverride null, @@ -511,7 +511,7 @@ subsetTest(promise_test, async test => { directFromSellerSignalsValidatorCode( uuid, 'altSellerSignals/1', /*expectedAuctionSignals=*/null, /*expectedPerBuyerSignals=*/null), - // expectedReportUrls + // expectedReportURLs [createSellerReportURL(uuid), createBidderReportURL(uuid)], // renderURLOverride null, @@ -532,7 +532,7 @@ subsetTest(promise_test, async test => { directFromSellerSignalsValidatorCode( uuid, 'altV2SellerSignals/1', /*expectedAuctionSignals=*/null, /*expectedPerBuyerSignals=*/null), - // expectedReportUrls + // expectedReportURLs [createSellerReportURL(uuid), createBidderReportURL(uuid)], // renderURLOverride null, @@ -551,7 +551,7 @@ subsetTest(promise_test, async test => { directFromSellerSignalsValidatorCode( uuid, /*expectedSellerSignals=*/null, 'auctionSignals/2', /*expectedPerBuyerSignals=*/null), - // expectedReportUrls + // expectedReportURLs [createSellerReportURL(uuid), createBidderReportURL(uuid)], // renderURLOverride null, @@ -569,7 +569,7 @@ subsetTest(promise_test, async test => { directFromSellerSignalsValidatorCode( uuid, 'firstSellerSignals/1', /*expectedAuctionSignals=*/null, /*expectedPerBuyerSignals=*/null), - // expectedReportUrls + // expectedReportURLs [createSellerReportURL(uuid), createBidderReportURL(uuid)], // renderURLOverride null, @@ -587,7 +587,7 @@ subsetTest(promise_test, async test => { directFromSellerSignalsValidatorCode( uuid, 'nonDupSellerSignals/2', /*expectedAuctionSignals=*/null, /*expectedPerBuyerSignals=*/null), - // expectedReportUrls + // expectedReportURLs [createSellerReportURL(uuid), createBidderReportURL(uuid)], // renderURLOverride null, @@ -606,7 +606,7 @@ subsetTest(promise_test, async test => { directFromSellerSignalsValidatorCode( uuid, 'sameSellerSignals', 'sameAuctionSignals', 'samePerBuyerSignals'), - // expectedReportUrls + // expectedReportURLs [createSellerReportURL(uuid), createBidderReportURL(uuid)], // renderURLOverride null, diff --git a/tests/wpt/tests/fledge/tentative/generate-bid-browser-signals.https.window.js b/tests/wpt/tests/fledge/tentative/generate-bid-browser-signals.https.window.js new file mode 100644 index 00000000000..3ab8bbf51f6 --- /dev/null +++ b/tests/wpt/tests/fledge/tentative/generate-bid-browser-signals.https.window.js @@ -0,0 +1,147 @@ +// META: script=/resources/testdriver.js +// META: script=/common/utils.js +// META: script=resources/fledge-util.sub.js +// META: script=/common/subset-tests.js +// META: timeout=long +// META: variant=?1-last + +"use strict;" + +// These tests focus on the browserSignals argument passed to generateBid(). +// Note that "topLevelSeller" is covered by component auction tests, +// "dataVersion" by trusted signals tests, and cross-origin +// "topWindowHostname" and "seller" are covered by cross origin tests. +// +// Some of these tests use the "uuid" for interest group name, to avoid +// joins/bids from previous tests that failed to clean up after themselves +// from affecting results. + +subsetTest(promise_test, async test => { + const uuid = generateUuid(test); + + let expectedBrowserSignals = { + "topWindowHostname": window.location.hostname, + "seller": window.location.origin, + "adComponentsLimit": 40, + "joinCount": 1, + "bidCount": 0, + "prevWinsMs": [] + } + let biddingLogicURL = createBiddingScriptURL( + { generateBid: + `let expectedBrowserSignals = ${JSON.stringify(expectedBrowserSignals)}; + + // Can't check this value exactly. + expectedBrowserSignals.recency = browserSignals.recency; + + // This value may be affected by other recently run tests. + expectedBrowserSignals.forDebuggingOnlyInCooldownOrLockout = + browserSignals.forDebuggingOnlyInCooldownOrLockout; + + // Remove deprecated field, if present. + delete browserSignals.prevWins; + + if (!deepEquals(browserSignals, expectedBrowserSignals)) + throw "Unexpected browserSignals: " + JSON.stringify(browserSignals);` + }); + + await joinGroupAndRunBasicFledgeTestExpectingWinner( + test, + { uuid: uuid, + interestGroupOverrides: {name: uuid, + biddingLogicURL: biddingLogicURL}}); +}, 'Only expected fields present.'); + +// Creates a bidding script URL that expects the "joinCount" to be +// "expectedJoinCount". +function createJoinCountBiddingScriptURL(expectedJoinCount) { + return createBiddingScriptURL( + { generateBid: + `if (browserSignals.joinCount !== ${expectedJoinCount}) + throw "Unexpected joinCount: " + browserSignals.joinCount;` + }); +} + +subsetTest(promise_test, async test => { + const uuid = generateUuid(test); + + await joinGroupAndRunBasicFledgeTestExpectingWinner( + test, + { uuid: uuid, + interestGroupOverrides: {name: uuid, + biddingLogicURL: createJoinCountBiddingScriptURL(1)}}); + + // Joining again, even with a different script URL, should increase the join count. + await joinGroupAndRunBasicFledgeTestExpectingWinner( + test, + { uuid: uuid, + interestGroupOverrides: {name: uuid, + biddingLogicURL: createJoinCountBiddingScriptURL(2)}}); +}, 'browserSignals.joinCount same joining page.'); + +subsetTest(promise_test, async test => { + const uuid = generateUuid(test); + + await joinGroupAndRunBasicFledgeTestExpectingWinner( + test, + { uuid: uuid, + interestGroupOverrides: {name: uuid, + biddingLogicURL: createJoinCountBiddingScriptURL(1)}}); + + // Attempt to re-join the same interest group from a different top-level origin. + // The join count should still be persisted. + await joinCrossOriginInterestGroupInTopLevelWindow( + test, uuid, OTHER_ORIGIN1, window.location.origin, + { name: uuid, + biddingLogicURL: createJoinCountBiddingScriptURL(2)}); + + await runBasicFledgeTestExpectingWinner(test, uuid); +}, 'browserSignals.joinCount different top-level joining origin.'); + +subsetTest(promise_test, async test => { + const uuid = generateUuid(test); + + await joinGroupAndRunBasicFledgeTestExpectingWinner( + test, + { uuid: uuid, + interestGroupOverrides: {name: uuid, + biddingLogicURL: createJoinCountBiddingScriptURL(1)}}); + + // Leaving interest group should clear join count. + await leaveInterestGroup({name: uuid}); + + // Check that join count was cleared. + await joinGroupAndRunBasicFledgeTestExpectingWinner( + test, + { uuid: uuid, + interestGroupOverrides: {name: uuid, + biddingLogicURL: createJoinCountBiddingScriptURL(1)}}); +}, 'browserSignals.joinCount leave and rejoin.'); + +subsetTest(promise_test, async test => { + const uuid = generateUuid(test); + await runReportTest( + test, uuid, + { generateBid: + `if (browserSignals.recency === undefined) + throw new Error("Missing recency in browserSignals.") + + if (browserSignals.recency < 0) + throw new Error("Recency is a negative value.") + + if (browserSignals.recency > 30000) + throw new Error("Recency is over 30 seconds threshold.") + + if (browserSignals.recency % 100 !== 0) + throw new Error("Recency is not rounded to multiple of 100 milliseconds.") + + return {'bid': 9, + 'render': interestGroup.ads[0].renderURL};`, + reportWin: + `sendReportTo('${createBidderReportURL(uuid)}');` + }, + // expectedReportURLs + [createBidderReportURL(uuid)] + ); +}, 'Check recency in generateBid() is below a certain threshold and rounded ' + + 'to multiple of 100 milliseconds.'); diff --git a/tests/wpt/tests/fledge/tentative/generate-bid-recency.https.window.js b/tests/wpt/tests/fledge/tentative/generate-bid-recency.https.window.js deleted file mode 100644 index 07da463a2dc..00000000000 --- a/tests/wpt/tests/fledge/tentative/generate-bid-recency.https.window.js +++ /dev/null @@ -1,34 +0,0 @@ -// META: script=/resources/testdriver.js -// META: script=/common/utils.js -// META: script=resources/fledge-util.sub.js -// META: timeout=long - -"use strict;" - -promise_test(async test => { - const uuid = generateUuid(test); - await runReportTest( - test, uuid, - { generateBid: - `if (browserSignals.recency === undefined) - throw new Error("Missing recency in browserSignals.") - - if (browserSignals.recency < 0) - throw new Error("Recency is a negative value.") - - if (browserSignals.recency > 30000) - throw new Error("Recency is over 30 seconds threshold.") - - if (browserSignals.recency % 100 !== 0) - throw new Error("Recency is not rounded to multiple of 100 milliseconds.") - - return {'bid': 9, - 'render': interestGroup.ads[0].renderURL};`, - reportWin: - `sendReportTo('${createBidderReportURL(uuid)}');` - }, - // expectedReportUrls - [createBidderReportURL(uuid)] - ); -}, 'Check recency in generateBid() is below a certain threshold and rounded ' + - 'to multiple of 100 milliseconds.'); diff --git a/tests/wpt/tests/fledge/tentative/join-leave-ad-interest-group.https.window.js b/tests/wpt/tests/fledge/tentative/join-leave-ad-interest-group.https.window.js index b5dfe025bf2..02148ef36b7 100644 --- a/tests/wpt/tests/fledge/tentative/join-leave-ad-interest-group.https.window.js +++ b/tests/wpt/tests/fledge/tentative/join-leave-ad-interest-group.https.window.js @@ -231,31 +231,31 @@ const SIMPLE_JOIN_LEAVE_TEST_CASES = [ biddingWasmHelperURL: 'relative/path' } }, - // "dailyUpdateUrl" tests + // "updateURL" tests { expectJoinSucces: true, expectLeaveSucces: true, interestGroup: { ...BASE_INTEREST_GROUP, - dailyUpdateUrl: null } + updateURL: null } }, { expectJoinSucces: false, expectLeaveSucces: true, interestGroup: { ...BASE_INTEREST_GROUP, - dailyUpdateUrl: 'https://{{hosts[][www]}}/foo.js' } + updateURL: 'https://{{hosts[][www]}}/foo.js' } }, { expectJoinSucces: false, expectLeaveSucces: true, interestGroup: { ...BASE_INTEREST_GROUP, - dailyUpdateUrl: 'data:application/wasm,Foo' } + updateURL: 'data:application/wasm,Foo' } }, { expectJoinSucces: true, expectLeaveSucces: true, interestGroup: { ...BASE_INTEREST_GROUP, - dailyUpdateUrl: `${window.location.origin}/foo.js`} + updateURL: `${window.location.origin}/foo.js`} }, { expectJoinSucces: true, expectLeaveSucces: true, interestGroup: { ...BASE_INTEREST_GROUP, - dailyUpdateUrl: 'relative/path' } + updateURL: 'relative/path' } }, // "executionMode" tests diff --git a/tests/wpt/tests/fledge/tentative/kanon-status-below-threshold.https.window.js b/tests/wpt/tests/fledge/tentative/kanon-status-below-threshold.https.window.js index 4eac4a8e917..787283d687f 100644 --- a/tests/wpt/tests/fledge/tentative/kanon-status-below-threshold.https.window.js +++ b/tests/wpt/tests/fledge/tentative/kanon-status-below-threshold.https.window.js @@ -13,7 +13,7 @@ subsetTest(promise_test, async test => { `browserSignals.kAnonStatus === "belowThreshold"`, reportWin: `sendReportTo('${createBidderReportURL(uuid)}');` }, - // expectedReportUrls: + // expectedReportURLs: [createBidderReportURL(uuid)]); }, 'Check kAnonStatus is "belowThreshold" when FledgeConsiderKAnonymity' + diff --git a/tests/wpt/tests/fledge/tentative/kanon-status-not-calculated.https.window.js b/tests/wpt/tests/fledge/tentative/kanon-status-not-calculated.https.window.js index a3ac19bd85e..4a750cd3529 100644 --- a/tests/wpt/tests/fledge/tentative/kanon-status-not-calculated.https.window.js +++ b/tests/wpt/tests/fledge/tentative/kanon-status-not-calculated.https.window.js @@ -13,7 +13,7 @@ subsetTest(promise_test, async test => { `browserSignals.kAnonStatus === "notCalculated"`, reportWin: `sendReportTo('${createBidderReportURL(uuid)}');` }, - // expectedReportUrls: + // expectedReportURLs: [createBidderReportURL(uuid)]); }, 'Check kAnonStatus is "notCalculated" when FledgeConsiderKAnonymity' + diff --git a/tests/wpt/tests/fledge/tentative/register-ad-beacon.https.window.js b/tests/wpt/tests/fledge/tentative/register-ad-beacon.https.window.js index 19fab2ac1b1..3643e446627 100644 --- a/tests/wpt/tests/fledge/tentative/register-ad-beacon.https.window.js +++ b/tests/wpt/tests/fledge/tentative/register-ad-beacon.https.window.js @@ -17,9 +17,9 @@ subsetTest(promise_test, async test => { `registerAdBeacon({beacon: '${createSellerBeaconURL(uuid)}'});`, reportWin: '' }, - // expectedReportUrls: + // expectedReportURLs: [`${createSellerBeaconURL(uuid)}, body: `], - // renderUrlOverride: + // renderURLOverride: createRenderURL( uuid, `window.fence.reportEvent({ @@ -39,9 +39,9 @@ subsetTest(promise_test, async test => { reportWin: `registerAdBeacon({beacon: '${createBidderBeaconURL(uuid)}'});` }, - // expectedReportUrls: + // expectedReportURLs: [`${createBidderBeaconURL(uuid)}, body: `], - // renderUrlOverride: + // renderURLOverride: createRenderURL( uuid, `window.fence.reportEvent({ @@ -60,9 +60,9 @@ subsetTest(promise_test, async test => { `registerAdBeacon({beacon: '${createSellerBeaconURL(uuid)}'});`, reportWin: '' }, - // expectedReportUrls: + // expectedReportURLs: [`${createSellerBeaconURL(uuid)}, body: body`], - // renderUrlOverride: + // renderURLOverride: createRenderURL( uuid, `window.fence.reportEvent({ @@ -81,9 +81,9 @@ subsetTest(promise_test, async test => { '', reportWin: `registerAdBeacon({beacon: '${createBidderBeaconURL(uuid)}'});` }, - // expectedReportUrls: + // expectedReportURLs: [`${createBidderBeaconURL(uuid)}, body: body`], - // renderUrlOverride: + // renderURLOverride: createRenderURL( uuid, `window.fence.reportEvent({ @@ -102,10 +102,10 @@ subsetTest(promise_test, async test => { `registerAdBeacon({beacon: '${createSellerBeaconURL(uuid)}'});`, reportWin: '' }, - // expectedReportUrls: + // expectedReportURLs: [`${createSellerBeaconURL(uuid)}, body: body1`, `${createSellerBeaconURL(uuid)}, body: body2`], - // renderUrlOverride: + // renderURLOverride: createRenderURL( uuid, `window.fence.reportEvent({ @@ -129,10 +129,10 @@ subsetTest(promise_test, async test => { '', reportWin: `registerAdBeacon({beacon: '${createBidderBeaconURL(uuid)}'});` }, - // expectedReportUrls: + // expectedReportURLs: [`${createBidderBeaconURL(uuid)}, body: body1`, `${createBidderBeaconURL(uuid)}, body: body2`], - // renderUrlOverride: + // renderURLOverride: createRenderURL( uuid, `window.fence.reportEvent({ @@ -157,10 +157,10 @@ subsetTest(promise_test, async test => { beacon2: '${createSellerBeaconURL(uuid, '2')}'});`, reportWin: '' }, - // expectedReportUrls: + // expectedReportURLs: [`${createSellerBeaconURL(uuid, '1')}, body: body1`, `${createSellerBeaconURL(uuid, '2')}, body: body2`], - // renderUrlOverride: + // renderURLOverride: createRenderURL( uuid, `window.fence.reportEvent({ @@ -186,10 +186,10 @@ subsetTest(promise_test, async test => { `registerAdBeacon({beacon1: '${createBidderBeaconURL(uuid, '1')}', beacon2: '${createBidderBeaconURL(uuid, '2')}'});` }, - // expectedReportUrls: + // expectedReportURLs: [`${createBidderBeaconURL(uuid, '1')}, body: body1`, `${createBidderBeaconURL(uuid, '2')}, body: body2`], - // renderUrlOverride: + // renderURLOverride: createRenderURL( uuid, `window.fence.reportEvent({ @@ -213,10 +213,10 @@ subsetTest(promise_test, async test => { `registerAdBeacon({beacon: '${createSellerBeaconURL(uuid)}'});`, reportWin: `registerAdBeacon({beacon: '${createBidderBeaconURL(uuid)}'});` }, - // expectedReportUrls: + // expectedReportURLs: [`${createSellerBeaconURL(uuid)}, body: body`, `${createBidderBeaconURL(uuid)}, body: body`], - // renderUrlOverride: + // renderURLOverride: createRenderURL( uuid, `window.fence.reportEvent({ @@ -235,10 +235,10 @@ subsetTest(promise_test, async test => { `registerAdBeacon({beacon: '${createSellerBeaconURL(uuid)}'});`, reportWin: `registerAdBeacon({beacon: '${createBidderBeaconURL(uuid)}'});` }, - // expectedReportUrls: + // expectedReportURLs: [`${createSellerBeaconURL(uuid)}, body: body1`, `${createBidderBeaconURL(uuid)}, body: body2`], - // renderUrlOverride: + // renderURLOverride: createRenderURL( uuid, `window.fence.reportEvent({ @@ -268,9 +268,9 @@ subsetTest(promise_test, async test => { 'sellerSignals === null', reportWin: `registerAdBeacon({beacon: '${createBidderBeaconURL(uuid)}'});` }, - // expectedReportUrls: + // expectedReportURLs: [`${createBidderBeaconURL(uuid)}, body: body`], - // renderUrlOverride: + // renderURLOverride: createRenderURL( uuid, `window.fence.reportEvent({ @@ -293,9 +293,9 @@ subsetTest(promise_test, async test => { `sendReportTo('${createBidderReportURL(uuid)}'); registerAdBeacon({beacon: '${createBidderBeaconURL(uuid)}'}); registerAdBeacon({beacon1: '${createBidderBeaconURL(uuid)}'});` }, - // expectedReportUrls: + // expectedReportURLs: [`${createSellerBeaconURL(uuid)}, body: body`], - // renderUrlOverride: + // renderURLOverride: createRenderURL( uuid, `window.fence.reportEvent({ diff --git a/tests/wpt/tests/fledge/tentative/reporting-arguments.https.window.js b/tests/wpt/tests/fledge/tentative/reporting-arguments.https.window.js index f26a969328f..c7c71202403 100644 --- a/tests/wpt/tests/fledge/tentative/reporting-arguments.https.window.js +++ b/tests/wpt/tests/fledge/tentative/reporting-arguments.https.window.js @@ -46,7 +46,7 @@ subsetTest(promise_test, async test => { 'sellerSignals === 45', reportWin: `sendReportTo('${createBidderReportURL(uuid)}');` }, - // expectedReportUrls: + // expectedReportURLs: [createSellerReportURL(uuid), createBidderReportURL(uuid)] ); }, 'Seller passes number to bidder.'); @@ -62,7 +62,7 @@ subsetTest(promise_test, async test => { 'sellerSignals === "foo"', reportWin: `sendReportTo('${createBidderReportURL(uuid)}');` }, - // expectedReportUrls: + // expectedReportURLs: [createSellerReportURL(uuid), createBidderReportURL(uuid)] ); }, 'Seller passes string to bidder.'); @@ -78,7 +78,7 @@ subsetTest(promise_test, async test => { 'JSON.stringify(sellerSignals) === "[3,1,2]"', reportWin: `sendReportTo('${createBidderReportURL(uuid)}');` }, - // expectedReportUrls: + // expectedReportURLs: [createSellerReportURL(uuid), createBidderReportURL(uuid)] ); }, 'Seller passes array to bidder.'); @@ -94,7 +94,7 @@ subsetTest(promise_test, async test => { `JSON.stringify(sellerSignals) === '{"a":4,"b":["c",null,{}]}'`, reportWin: `sendReportTo('${createBidderReportURL(uuid)}');` }, - // expectedReportUrls: + // expectedReportURLs: [createSellerReportURL(uuid), createBidderReportURL(uuid)] ); }, 'Seller passes object to bidder.'); diff --git a/tests/wpt/tests/fledge/tentative/resources/decision-logic.sub.py b/tests/wpt/tests/fledge/tentative/resources/decision-logic.sub.py index 78d459e3f9d..3a23f981620 100644 --- a/tests/wpt/tests/fledge/tentative/resources/decision-logic.sub.py +++ b/tests/wpt/tests/fledge/tentative/resources/decision-logic.sub.py @@ -43,8 +43,8 @@ def main(request, response): // Don't bid on interest group with the wrong uuid. This is to prevent // left over interest groups from other tests from affecting auction // results. - if (!browserSignals.renderUrl.endsWith('uuid={{GET[uuid]}}') && - !browserSignals.renderUrl.includes('uuid={{GET[uuid]}}&')) { + if (!browserSignals.renderURL.endsWith('uuid={{GET[uuid]}}') && + !browserSignals.renderURL.includes('uuid={{GET[uuid]}}&')) { return 0; } diff --git a/tests/wpt/tests/fledge/tentative/resources/fledge-util.sub.js b/tests/wpt/tests/fledge/tentative/resources/fledge-util.sub.js index 69573d49983..4fc77933634 100644 --- a/tests/wpt/tests/fledge/tentative/resources/fledge-util.sub.js +++ b/tests/wpt/tests/fledge/tentative/resources/fledge-util.sub.js @@ -148,6 +148,35 @@ async function waitForObservedRequests(uuid, expectedRequests) { } } + +// Similar to waitForObservedRequests, but ignore forDebuggingOnly reports. +async function waitForObservedRequestsIgnoreDebugOnlyReports( + uuid, expectedRequests) { + // Sort array for easier comparison, as observed request order does not + // matter, and replace UUID to print consistent errors on failure. + expectedRequests = + expectedRequests.sort().map((url) => url.replace(uuid, '')); + + while (true) { + let numTrackedRequest = 0; + let trackedData = await fetchTrackedData(uuid); + + // Clean up "trackedRequests" in same manner as "expectedRequests". + let trackedRequests = trackedData.trackedRequests.sort().map( + (url) => url.replace(uuid, '')); + + for (const trackedRequest of trackedRequests) { + // Ignore forDebuggingOnly reports, since their appearance is random. + if (!trackedRequest.includes('forDebuggingOnly')) { + assert_in_array(trackedRequest, expectedRequests); + numTrackedRequest++; + } + } + + if (numTrackedRequest == expectedRequests.length) break; + } +} + // Creates a bidding script with the provided code in the method bodies. The // bidding script's generateBid() method will return a bid of 9 for the first // ad, after the passed in code in the "generateBid" input argument has been @@ -504,7 +533,7 @@ async function runInFrame(test, child_window, script, param) { // iframe or closes the window. async function createFrame(test, origin, is_iframe = true, permissions = null) { const frameUuid = generateUuid(test); - const frameUrl = + const frameURL = `${origin}${RESOURCE_PATH}subordinate-frame.sub.html?uuid=${frameUuid}`; let promise = new Promise(function(resolve, reject) { function WaitForMessage(event) { @@ -523,7 +552,7 @@ async function createFrame(test, origin, is_iframe = true, permissions = null) { let iframe = document.createElement('iframe'); if (permissions) iframe.allow = permissions; - iframe.src = frameUrl; + iframe.src = frameURL; document.body.appendChild(iframe); test.add_cleanup(async () => { @@ -535,7 +564,7 @@ async function createFrame(test, origin, is_iframe = true, permissions = null) { return iframe.contentWindow; } - let child_window = window.open(frameUrl); + let child_window = window.open(frameURL); test.add_cleanup(async () => { await runInFrame(test, child_window, "await test_instance.do_cleanup();"); child_window.close(); @@ -576,11 +605,23 @@ async function joinInterestGroupInTopLevelWindow( let interestGroup = JSON.stringify( createInterestGroupForOrigin(uuid, origin, interestGroupOverrides)); - let topLeveWindow = await createTopLevelWindow(test, origin); - await runInFrame(test, topLeveWindow, + let topLevelWindow = await createTopLevelWindow(test, origin); + await runInFrame(test, topLevelWindow, `await joinInterestGroup(test_instance, "${uuid}", ${interestGroup})`); } +// Opens a top-level window and calls joinCrossOriginInterestGroup() in it. +async function joinCrossOriginInterestGroupInTopLevelWindow( + test, uuid, windowOrigin, interestGroupOrigin, interestGroupOverrides = {}) { + let interestGroup = JSON.stringify( + createInterestGroupForOrigin(uuid, interestGroupOrigin, interestGroupOverrides)); + + let topLevelWindow = await createTopLevelWindow(test, windowOrigin); + await runInFrame(test, topLevelWindow, + `await joinCrossOriginInterestGroup( + test_instance, "${uuid}", "${interestGroupOrigin}", ${interestGroup})`); +} + // Fetch directFromSellerSignals from seller and check header // 'Ad-Auction-Signals' is hidden from documents. async function fetchDirectFromSellerSignals(headers_content, origin) { diff --git a/tests/wpt/tests/fledge/tentative/resources/trusted-scoring-signals.py b/tests/wpt/tests/fledge/tentative/resources/trusted-scoring-signals.py index 80488a5d6af..eccef5e7628 100644 --- a/tests/wpt/tests/fledge/tentative/resources/trusted-scoring-signals.py +++ b/tests/wpt/tests/fledge/tentative/resources/trusted-scoring-signals.py @@ -15,7 +15,7 @@ def main(request, response): renderUrls = None adComponentRenderURLs = None # List of {type: , urls: } pairs, where is - # one of the two render URL dictionary keys used in the response ("renderUrls" or + # one of the two render URL dictionary keys used in the response ("renderURLs" or # "adComponentRenderURLs"). May be of length 1 or 2, depending on whether there # are any component URLs. urlLists = [] @@ -36,7 +36,7 @@ def main(request, response): continue if pair[0] == "renderUrls" and renderUrls == None: renderUrls = list(map(unquote_plus, pair[1].split(","))) - urlLists.append({"type":"renderUrls", "urls":renderUrls}) + urlLists.append({"type":"renderURLs", "urls":renderUrls}) continue if pair[0] == "adComponentRenderUrls" and adComponentRenderURLs == None: adComponentRenderURLs = list(map(unquote_plus, pair[1].split(","))) diff --git a/tests/wpt/tests/fledge/tentative/round-a-value.https.window.js b/tests/wpt/tests/fledge/tentative/round-a-value.https.window.js index 5bccd4ab078..90523e2256c 100644 --- a/tests/wpt/tests/fledge/tentative/round-a-value.https.window.js +++ b/tests/wpt/tests/fledge/tentative/round-a-value.https.window.js @@ -18,7 +18,7 @@ promise_test(async test => { `browserSignals.adCost === 1.9921875 || browserSignals.adCost === 1.984375`, reportWin: `sendReportTo('${createBidderReportURL(uuid)}');` }, - // expectedReportUrls + // expectedReportURLs [createBidderReportURL(uuid)] ); }, 'Check adCost is stochastically rounded with 8 bit mantissa and exponent.'); @@ -35,7 +35,7 @@ promise_test(async test => { `browserSignals.bid === 1.9921875 || browserSignals.bid === 1.984375`, reportWin: `sendReportTo('${createBidderReportURL(uuid)}');` }, - // expectedReportUrls + // expectedReportURLs [createBidderReportURL(uuid)] ); }, 'Check bid is stochastically rounded with 8 bit mantissa and exponent.'); @@ -52,7 +52,7 @@ promise_test(async test => { `browserSignals.desirability === 1.9921875 || browserSignals.desirability === 1.984375`, reportResult: `sendReportTo('${createBidderReportURL(uuid)}');` }, - // expectedReportUrls + // expectedReportURLs [createBidderReportURL(uuid)] ); }, 'Check desirability is stochastically rounded with 8 bit mantissa and exponent.'); @@ -70,7 +70,7 @@ promise_test(async test => { `browserSignals.highestScoringOtherBid === 1.9921875 || browserSignals.highestScoringOtherBid === 1.984375`, reportResult: `sendReportTo('${createBidderReportURL(uuid)}');` }, - // expectedReportUrls + // expectedReportURLs [createBidderReportURL(uuid)] ); }, 'Check highestScoringOtherBid is stochastically rounded with 8 bit mantissa and exponent.'); @@ -87,7 +87,7 @@ promise_test(async test => { `browserSignals.adCost === 2`, reportWin: `sendReportTo('${createBidderReportURL(uuid)}');` }, - // expectedReportUrls + // expectedReportURLs [createBidderReportURL(uuid)] ); }, 'Value is ignored as a non-valid floating-point number.'); @@ -104,7 +104,7 @@ promise_test(async test => { `browserSignals.adCost === 0`, reportWin: `sendReportTo('${createBidderReportURL(uuid)}');` }, - // expectedReportUrls + // expectedReportURLs [createBidderReportURL(uuid)] ); }, 'Value is rounded to 0 if value is greater than 0 and its exponent is less than -128.'); @@ -121,7 +121,7 @@ promise_test(async test => { `browserSignals.adCost === -0`, reportWin: `sendReportTo('${createBidderReportURL(uuid)}');` }, - // expectedReportUrls + // expectedReportURLs [createBidderReportURL(uuid)] ); }, 'Value is rounded to -0 if value is greater than 0 and its exponent is less than -128.'); @@ -138,7 +138,7 @@ promise_test(async test => { `browserSignals.adCost === Infinity`, reportWin: `sendReportTo('${createBidderReportURL(uuid)}');` }, - // expectedReportUrls + // expectedReportURLs [createBidderReportURL(uuid)] ); }, 'Value is rounded to Infinity if value is greater than 0 and its exponent is greater than 127.'); @@ -155,7 +155,7 @@ promise_test(async test => { `browserSignals.adCost === -Infinity`, reportWin: `sendReportTo('${createBidderReportURL(uuid)}');` }, - // expectedReportUrls + // expectedReportURLs [createBidderReportURL(uuid)] ); }, 'Value is rounded to -Infinity if value is less than 0 and its exponent is greater than 127.'); diff --git a/tests/wpt/tests/fledge/tentative/send-report-to.https.window.js b/tests/wpt/tests/fledge/tentative/send-report-to.https.window.js index 65a25204206..e3cf0a95f17 100644 --- a/tests/wpt/tests/fledge/tentative/send-report-to.https.window.js +++ b/tests/wpt/tests/fledge/tentative/send-report-to.https.window.js @@ -18,7 +18,7 @@ subsetTest(promise_test, async test => { 'sellerSignals === null', reportWin: `sendReportTo('${createBidderReportURL(uuid)}');` }, - // expectedReportUrls: + // expectedReportURLs: [createSellerReportURL(uuid), createBidderReportURL(uuid)] ); }, 'Both send reports, seller passes nothing to bidder.'); @@ -31,7 +31,7 @@ subsetTest(promise_test, async test => { `sendReportTo('${createSellerReportURL(uuid)}');`, reportWin: '' }, - // expectedReportUrls: + // expectedReportURLs: [createSellerReportURL(uuid)] ); }, 'Only seller sends a report'); @@ -44,7 +44,7 @@ subsetTest(promise_test, async test => { `sendReportTo('${createSellerReportURL(uuid)}');`, reportWin: 'throw new Error("Very serious exception")' }, - // expectedReportUrls: + // expectedReportURLs: [createSellerReportURL(uuid)] ); }, 'Only seller sends a report, bidder throws an exception'); @@ -55,7 +55,7 @@ subsetTest(promise_test, async test => { test, uuid, { reportResult: `sendReportTo('${createSellerReportURL(uuid)}');` }, - // expectedReportUrls: + // expectedReportURLs: [createSellerReportURL(uuid)] ); }, 'Only seller sends a report, bidder has no reportWin() method'); @@ -70,7 +70,7 @@ subsetTest(promise_test, async test => { 'sellerSignals === null', reportWin: `sendReportTo('${createBidderReportURL(uuid)}');` }, - // expectedReportUrls: + // expectedReportURLs: [createBidderReportURL(uuid)] ); }, 'Only bidder sends a report'); @@ -85,7 +85,7 @@ subsetTest(promise_test, async test => { 'sellerSignals === "foo"', reportWin: `sendReportTo('${createBidderReportURL(uuid)}');` }, - // expectedReportUrls: + // expectedReportURLs: [createBidderReportURL(uuid)] ); }, 'Only bidder sends a report, seller passes a message to bidder'); @@ -100,7 +100,7 @@ subsetTest(promise_test, async test => { 'sellerSignals === null', reportWin: `sendReportTo('${createBidderReportURL(uuid)}');` }, - // expectedReportUrls: + // expectedReportURLs: [createBidderReportURL(uuid)] ); }, 'Only bidder sends a report, seller throws an exception'); @@ -113,7 +113,7 @@ subsetTest(promise_test, async test => { 'sellerSignals === null', reportWin: `sendReportTo('${createBidderReportURL(uuid)}');` }, - // expectedReportUrls: + // expectedReportURLs: [createBidderReportURL(uuid)] ); }, 'Only bidder sends a report, seller has no reportResult() method'); @@ -130,7 +130,7 @@ subsetTest(promise_test, async test => { 'sellerSignals === null', reportWin: `sendReportTo('${createBidderReportURL(uuid)}');` }, - // expectedReportUrls: + // expectedReportURLs: [createBidderReportURL(uuid)] ); }, 'Seller calls sendReportTo() twice, which throws an exception.'); @@ -144,7 +144,7 @@ subsetTest(promise_test, async test => { reportWin: `sendReportTo('${createBidderReportURL(uuid)}'); sendReportTo('${createBidderReportURL(uuid)}');` }, - // expectedReportUrls: + // expectedReportURLs: [createSellerReportURL(uuid)] ); // Seller reports may be sent before bidder reports, since reportWin() diff --git a/tests/wpt/tests/fledge/tentative/trusted-scoring-signals.https.window.js b/tests/wpt/tests/fledge/tentative/trusted-scoring-signals.https.window.js index 67ae3577e4f..4de5cfc0f39 100644 --- a/tests/wpt/tests/fledge/tentative/trusted-scoring-signals.https.window.js +++ b/tests/wpt/tests/fledge/tentative/trusted-scoring-signals.https.window.js @@ -82,7 +82,7 @@ async function runTrustedScoringSignalsDataVersionTest( // Creates a render URL that, when sent to the trusted-scoring-signals.py, // results in a trusted scoring signals response with the provided response // body. -function createScoringSignalsRenderUrlWithBody(uuid, responseBody) { +function createScoringSignalsRenderURLWithBody(uuid, responseBody) { return createRenderURL(uuid, /*script=*/null, /*signalsParam=*/`replace-body:${responseBody}`); } @@ -93,13 +93,13 @@ function createScoringSignalsRenderUrlWithBody(uuid, responseBody) { subsetTest(promise_test, async test => { const uuid = generateUuid(test); - const decisionLogicScriptUrl = createDecisionScriptURL( + const decisionLogicScriptURL = createDecisionScriptURL( uuid, { scoreAd: 'if (trustedScoringSignals !== null) throw "error";' }); await joinGroupAndRunBasicFledgeTestExpectingWinner( test, { uuid: uuid, - auctionConfigOverrides: { decisionLogicURL: decisionLogicScriptUrl } + auctionConfigOverrides: { decisionLogicURL: decisionLogicScriptURL } }); }, 'No trustedScoringSignalsURL.'); @@ -149,35 +149,35 @@ subsetTest(promise_test, async test => { subsetTest(promise_test, async test => { const uuid = generateUuid(test); - const renderURL = createScoringSignalsRenderUrlWithBody( + const renderURL = createScoringSignalsRenderURLWithBody( uuid, /*responseBody=*/''); await runTrustedScoringSignalsTest(test, uuid, renderURL, 'trustedScoringSignals === null'); }, 'Trusted scoring signals response has no body.'); subsetTest(promise_test, async test => { const uuid = generateUuid(test); - const renderURL = createScoringSignalsRenderUrlWithBody( + const renderURL = createScoringSignalsRenderURLWithBody( uuid, /*responseBody=*/'Not JSON'); await runTrustedScoringSignalsTest(test, uuid, renderURL, 'trustedScoringSignals === null'); }, 'Trusted scoring signals response is not JSON.'); subsetTest(promise_test, async test => { const uuid = generateUuid(test); - const renderURL = createScoringSignalsRenderUrlWithBody( + const renderURL = createScoringSignalsRenderURLWithBody( uuid, /*responseBody=*/'[]'); await runTrustedScoringSignalsTest(test, uuid, renderURL, 'trustedScoringSignals === null'); }, 'Trusted scoring signals response is a JSON array.'); subsetTest(promise_test, async test => { const uuid = generateUuid(test); - const renderURL = createScoringSignalsRenderUrlWithBody( + const renderURL = createScoringSignalsRenderURLWithBody( uuid, /*responseBody=*/'{JSON_keys_need_quotes: 1}'); await runTrustedScoringSignalsTest(test, uuid, renderURL, 'trustedScoringSignals === null'); }, 'Trusted scoring signals response is invalid JSON object.'); subsetTest(promise_test, async test => { const uuid = generateUuid(test); - const renderURL = createScoringSignalsRenderUrlWithBody( + const renderURL = createScoringSignalsRenderURLWithBody( uuid, /*responseBody=*/'{}'); await runTrustedScoringSignalsTest( test, uuid, renderURL, @@ -444,7 +444,7 @@ subsetTest(promise_test, async test => { const renderURL = createRenderURL(uuid, /*script=*/null, /*signalsParam=*/'num-value'); // This should not be sent. If it is, it will take precedence over the "num-value" parameter // from "renderURL", resulting in the "renderURL" having a null "trustedScoringSignals" value. - const componentURL = createScoringSignalsRenderUrlWithBody( + const componentURL = createScoringSignalsRenderURLWithBody( uuid, /*responseBody=*/'{}'); await runTrustedScoringSignalsTest( test, uuid, renderURL, @@ -456,7 +456,7 @@ subsetTest(promise_test, async test => { subsetTest(promise_test, async test => { const uuid = generateUuid(test); - const renderURL = createScoringSignalsRenderUrlWithBody( + const renderURL = createScoringSignalsRenderURLWithBody( uuid, /*responseBody=*/'{}'); const componentURL = createRenderURL(uuid, /*script=*/null); await runTrustedScoringSignalsTest( diff --git a/tests/wpt/tests/html/canvas/element/layers/2d.layer.drawImage-expected.html b/tests/wpt/tests/html/canvas/element/layers/2d.layer.drawImage-expected.html new file mode 100644 index 00000000000..26f6e752149 --- /dev/null +++ b/tests/wpt/tests/html/canvas/element/layers/2d.layer.drawImage-expected.html @@ -0,0 +1,29 @@ + + +Canvas test: 2d.layer.drawImage +

2d.layer.drawImage

+

Checks that drawImage writes the image to the layer and not the parent directly.

+ +

FAIL (fallback content)

+
+ diff --git a/tests/wpt/tests/html/canvas/element/layers/2d.layer.drawImage.html b/tests/wpt/tests/html/canvas/element/layers/2d.layer.drawImage.html new file mode 100644 index 00000000000..58206c3eb87 --- /dev/null +++ b/tests/wpt/tests/html/canvas/element/layers/2d.layer.drawImage.html @@ -0,0 +1,33 @@ + + + +Canvas test: 2d.layer.drawImage +

2d.layer.drawImage

+

Checks that drawImage writes the image to the layer and not the parent directly.

+ +

FAIL (fallback content)

+
+ diff --git a/tests/wpt/tests/html/canvas/offscreen/layers/2d.layer.drawImage-expected.html b/tests/wpt/tests/html/canvas/offscreen/layers/2d.layer.drawImage-expected.html new file mode 100644 index 00000000000..26f6e752149 --- /dev/null +++ b/tests/wpt/tests/html/canvas/offscreen/layers/2d.layer.drawImage-expected.html @@ -0,0 +1,29 @@ + + +Canvas test: 2d.layer.drawImage +

2d.layer.drawImage

+

Checks that drawImage writes the image to the layer and not the parent directly.

+ +

FAIL (fallback content)

+
+ diff --git a/tests/wpt/tests/html/canvas/offscreen/layers/2d.layer.drawImage.html b/tests/wpt/tests/html/canvas/offscreen/layers/2d.layer.drawImage.html new file mode 100644 index 00000000000..37718f6f2c5 --- /dev/null +++ b/tests/wpt/tests/html/canvas/offscreen/layers/2d.layer.drawImage.html @@ -0,0 +1,36 @@ + + + +Canvas test: 2d.layer.drawImage +

2d.layer.drawImage

+

Checks that drawImage writes the image to the layer and not the parent directly.

+ +

FAIL (fallback content)

+
+ diff --git a/tests/wpt/tests/html/canvas/offscreen/layers/2d.layer.drawImage.w.html b/tests/wpt/tests/html/canvas/offscreen/layers/2d.layer.drawImage.w.html new file mode 100644 index 00000000000..78a235597d5 --- /dev/null +++ b/tests/wpt/tests/html/canvas/offscreen/layers/2d.layer.drawImage.w.html @@ -0,0 +1,50 @@ + + + + +Canvas test: 2d.layer.drawImage +

2d.layer.drawImage

+

Checks that drawImage writes the image to the layer and not the parent directly.

+ +

FAIL (fallback content)

+
+ + + diff --git a/tests/wpt/tests/html/canvas/tools/yaml-new/layers.yaml b/tests/wpt/tests/html/canvas/tools/yaml-new/layers.yaml index a44cb2ea2c1..dfef55d081b 100644 --- a/tests/wpt/tests/html/canvas/tools/yaml-new/layers.yaml +++ b/tests/wpt/tests/html/canvas/tools/yaml-new/layers.yaml @@ -627,6 +627,49 @@ ctx.fillStyle = 'blue'; ctx.fillRect(10, 10, 80, 50); +- name: 2d.layer.drawImage + size: [200, 200] + desc: >- + Checks that drawImage writes the image to the layer and not the parent + directly. + code: | + ctx.fillStyle = 'skyblue'; + ctx.fillRect(0, 0, 100, 100); + + ctx.beginLayer({filter: {name: 'dropShadow', dx: -10, dy: -10, + stdDeviation: 0, floodColor: 'navy'}}); + + ctx.fillStyle = 'maroon'; + ctx.fillRect(20, 20, 50, 50); + + ctx.globalCompositeOperation = 'xor'; + + // The image should xor only with the layer content, not the parents'. + const canvas_image = new OffscreenCanvas(200,200); + const ctx_image = canvas_image.getContext("2d"); + ctx_image.fillStyle = 'pink'; + ctx_image.fillRect(40, 40, 50, 50); + ctx.drawImage(canvas_image, 0, 0); + + ctx.endLayer(); + reference: | + ctx.fillStyle = 'skyblue'; + ctx.fillRect(0, 0, 100, 100); + + ctx.beginLayer({filter: {name: 'dropShadow', dx: -10, dy: -10, + stdDeviation: 0, floodColor: 'navy'}}); + + ctx.fillStyle = 'maroon'; + ctx.fillRect(20, 20, 50, 50); + + ctx.globalCompositeOperation = 'xor'; + + // Should xor only with the layer content, not the parents'. + ctx.fillStyle = 'pink'; + ctx.fillRect(40, 40, 50, 50); + + ctx.endLayer(); + - name: 2d.layer.valid-calls desc: No exception raised on {{ variant_desc }}. variants: diff --git a/tests/wpt/tests/html/dom/elements/global-attributes/dir-assorted.window.js b/tests/wpt/tests/html/dom/elements/global-attributes/dir-assorted.window.js index 0d4e4b82d9b..2017269f0bd 100644 --- a/tests/wpt/tests/html/dom/elements/global-attributes/dir-assorted.window.js +++ b/tests/wpt/tests/html/dom/elements/global-attributes/dir-assorted.window.js @@ -90,10 +90,11 @@ for (const bdi_test of [ { markup: "", expected: "rtl", desc: "dir=rtl empty" }, { markup: "A", expected: "ltr", desc: "dir=auto with LTR contents" }, { markup: "\u05d0", expected: "rtl", desc: "dir=auto with RTL contents" }, - { markup: "", expected: "parent", desc: "dir=auto empty" }, + { markup: "", expected: "ltr", desc: "dir=auto empty" }, + { markup: "123", expected: "ltr", desc: "dir=auto numbers" }, { markup: "A", expected: "ltr", desc: "no dir attribute with LTR contents" }, { markup: "\u05d0", expected: "rtl", desc: "no dir attribute with RTL contents" }, - { markup: "", expected: "parent", desc: "no dir attribute empty" }, + { markup: "", expected: "ltr", desc: "no dir attribute empty" }, ]) { for (const parent_dir of [ "ltr", "rtl" ]) { test(() => { diff --git a/tests/wpt/tests/html/dom/elements/global-attributes/dir-shadow-41-ref.html b/tests/wpt/tests/html/dom/elements/global-attributes/dir-shadow-41-ref.html index b52e08df20e..79b844edbe5 100644 --- a/tests/wpt/tests/html/dom/elements/global-attributes/dir-shadow-41-ref.html +++ b/tests/wpt/tests/html/dom/elements/global-attributes/dir-shadow-41-ref.html @@ -18,7 +18,7 @@ span {border: 1px solid silver;}

`dir=rtl` on a div in the shadow tree, `dir=ltr` on the shadow host, no slotted text in the light or dark trees

-

The HTML direction / computed CSS `direction` value is: rtl / rtl (on the slot).

+

The HTML direction / computed CSS `direction` value is: ltr / ltr (on the slot).

diff --git a/tests/wpt/tests/html/dom/elements/global-attributes/dir-shadow-42-ref.html b/tests/wpt/tests/html/dom/elements/global-attributes/dir-shadow-42-ref.html new file mode 100644 index 00000000000..8ea11002460 --- /dev/null +++ b/tests/wpt/tests/html/dom/elements/global-attributes/dir-shadow-42-ref.html @@ -0,0 +1,25 @@ + + + + +[dir] and shadow slots: dir=ltr on a div in the shadow tree, dir=rtl on the shadow host, no slotted text in the light or dark trees + + + + + + + + + +

`dir=ltr` on a div in the shadow tree, `dir=rtl` on the shadow host, no slotted text in the light or dark trees

+
+

The HTML direction / computed CSS `direction` value is: ltr / ltr (on the slot).

+ + + diff --git a/tests/wpt/tests/html/dom/elements/global-attributes/dir-shadow-42.html b/tests/wpt/tests/html/dom/elements/global-attributes/dir-shadow-42.html new file mode 100644 index 00000000000..b9697678cbc --- /dev/null +++ b/tests/wpt/tests/html/dom/elements/global-attributes/dir-shadow-42.html @@ -0,0 +1,33 @@ + + + + +[dir] and shadow slots: dir=ltr on a div in the shadow tree, dir=rtl on the shadow host, no slotted text in the light or dark trees + + + + + + + + + + + +

`dir=ltr` on a div in the shadow tree, `dir=rtl` on the shadow host, no slotted text in the light or dark trees

+
+

The HTML direction / computed CSS `direction` value is:

+ + + + + diff --git a/tests/wpt/tests/html/dom/elements/global-attributes/dir_auto-N-EN-ref.html b/tests/wpt/tests/html/dom/elements/global-attributes/dir_auto-N-EN-ref.html index 0d938b2e168..496d699d73c 100644 --- a/tests/wpt/tests/html/dom/elements/global-attributes/dir_auto-N-EN-ref.html +++ b/tests/wpt/tests/html/dom/elements/global-attributes/dir_auto-N-EN-ref.html @@ -10,7 +10,7 @@ + If there is no strong character, as in this test, the direction defaults to LTR." /> + +
+
+ +
+ + diff --git a/tests/wpt/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-horizontal-far.html b/tests/wpt/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-horizontal-far.html new file mode 100644 index 00000000000..f058b46fbd9 --- /dev/null +++ b/tests/wpt/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-horizontal-far.html @@ -0,0 +1,52 @@ + + + + + + + +
+
+ +
+ + diff --git a/tests/wpt/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-horizontal.html b/tests/wpt/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-horizontal.html new file mode 100644 index 00000000000..80ba0829a9a --- /dev/null +++ b/tests/wpt/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-horizontal.html @@ -0,0 +1,52 @@ + + + + + + + +
+
+ +
+ + diff --git a/tests/wpt/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested-2.html b/tests/wpt/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested-2.html new file mode 100644 index 00000000000..9eec621c891 --- /dev/null +++ b/tests/wpt/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested-2.html @@ -0,0 +1,57 @@ + + + + + + + +
+
+
+ +
+
+ + diff --git a/tests/wpt/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested-3.html b/tests/wpt/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested-3.html new file mode 100644 index 00000000000..aa02bb41516 --- /dev/null +++ b/tests/wpt/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested-3.html @@ -0,0 +1,65 @@ + + + + + + + +
+
+
+
+ +
+
+
+ + diff --git a/tests/wpt/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested-4.html b/tests/wpt/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested-4.html new file mode 100644 index 00000000000..e15d891fb5b --- /dev/null +++ b/tests/wpt/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested-4.html @@ -0,0 +1,58 @@ + + + + + + + +
+
+
+
+ +
+
+ + diff --git a/tests/wpt/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested-5.html b/tests/wpt/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested-5.html new file mode 100644 index 00000000000..b36265024d5 --- /dev/null +++ b/tests/wpt/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested-5.html @@ -0,0 +1,61 @@ + + + + + + + +
+
+
+
+ +
+
+ + diff --git a/tests/wpt/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested.html b/tests/wpt/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested.html new file mode 100644 index 00000000000..50b5e7ee0ad --- /dev/null +++ b/tests/wpt/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller-nested.html @@ -0,0 +1,57 @@ + + + + + + + +
+
+
+ +
+
+ + diff --git a/tests/wpt/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller.html b/tests/wpt/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller.html new file mode 100644 index 00000000000..631710e740d --- /dev/null +++ b/tests/wpt/tests/html/semantics/embedded-content/the-iframe-element/iframe-loading-lazy-in-scroller.html @@ -0,0 +1,49 @@ + + + + + + + +
+
+ +
+ + \ No newline at end of file diff --git a/tests/wpt/tests/html/semantics/forms/the-form-element/form-indexed-element-shadow.html b/tests/wpt/tests/html/semantics/forms/the-form-element/form-indexed-element-shadow.html new file mode 100644 index 00000000000..a108ce8a93f --- /dev/null +++ b/tests/wpt/tests/html/semantics/forms/the-form-element/form-indexed-element-shadow.html @@ -0,0 +1,26 @@ + + +form.elements: indexed access reflects DOM order, not flat tree + + + + +
+
+ + + +
+
+ diff --git a/tests/wpt/tests/html/semantics/forms/the-select-element/resources/stylable-select-styles.css b/tests/wpt/tests/html/semantics/forms/the-select-element/resources/stylable-select-styles.css index 726380f940d..a7e9a87cdfa 100644 --- a/tests/wpt/tests/html/semantics/forms/the-select-element/resources/stylable-select-styles.css +++ b/tests/wpt/tests/html/semantics/forms/the-select-element/resources/stylable-select-styles.css @@ -10,8 +10,8 @@ inset: auto; min-inline-size: anchor-size(self-inline); min-block-size: 1lh; - inset-block-start: anchor(auto); - inset-inline-start: anchor(auto-same); + inset-block-start: anchor(self-end); + inset-inline-start: anchor(self-start); font-family: Arial; font-size: 13.3333px; diff --git a/tests/wpt/tests/html/semantics/forms/the-select-element/select-attribute-crash.html b/tests/wpt/tests/html/semantics/forms/the-select-element/select-attribute-crash.html new file mode 100644 index 00000000000..5330411a5dc --- /dev/null +++ b/tests/wpt/tests/html/semantics/forms/the-select-element/select-attribute-crash.html @@ -0,0 +1,18 @@ + + + + + + + + + diff --git a/tests/wpt/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-remove-popover-attribute-ref.html b/tests/wpt/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-remove-popover-attribute-ref.html new file mode 100644 index 00000000000..7aadaf51b72 --- /dev/null +++ b/tests/wpt/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-remove-popover-attribute-ref.html @@ -0,0 +1,15 @@ + + + + + Shown modal dialog where the popover attribute is removed + + + + + + + diff --git a/tests/wpt/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-remove-popover-attribute.html b/tests/wpt/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-remove-popover-attribute.html new file mode 100644 index 00000000000..3827e90c5bd --- /dev/null +++ b/tests/wpt/tests/html/semantics/interactive-elements/the-dialog-element/top-layer-remove-popover-attribute.html @@ -0,0 +1,18 @@ + + + + + + Shown modal dialog where the popover attribute is removed + + + + + + + + diff --git a/tests/wpt/tests/html/semantics/popovers/popover-open-overflow-display-2.html b/tests/wpt/tests/html/semantics/popovers/popover-open-overflow-display-2.html new file mode 100644 index 00000000000..f2388b7642e --- /dev/null +++ b/tests/wpt/tests/html/semantics/popovers/popover-open-overflow-display-2.html @@ -0,0 +1,69 @@ + + + + + + + + +
+
Absolute popover inside absolute element
+
+ + +
+
Absolute element inside absolute popover
+
+ + +
+
Fixed popover inside fixed element
+
+ + +
+
Fixed element inside fixed popover
+
+ + +
+
Absolute popover inside fixed element
+
+ + +
+
Fixed element inside absolute popover
+
+ diff --git a/tests/wpt/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-auto-dir-default.html b/tests/wpt/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-auto-dir-default.html index 3a9d90c76b3..e658500a4eb 100644 --- a/tests/wpt/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-auto-dir-default.html +++ b/tests/wpt/tests/html/semantics/text-level-semantics/the-bdi-element/bdi-auto-dir-default.html @@ -30,13 +30,13 @@ ‭ - The LRO (left-to-right override) formatting character. ‬ - The PDF (pop directional formatting) formatting character; closes LRO. In each DIV of the test: - - the first BDI, having no characters with strong direction, should inherit the parent direction; + - the first BDI, having no characters with strong direction, should be LTR by default; - the second BDI, having an LTR character first, should be LTR by default; - the third BDI, having an RTL character first, should be RTL by default.
[:)], [+- a ב], [1 ג d]...
-
[(:], [+- a ב], [1 ג d]...
+
[:)], [+- a ב], [1 ג d]...
‭[:)], [+- a ב], [d ג 1]...‬
diff --git a/tests/wpt/tests/inert/inert-iframe-hittest.html b/tests/wpt/tests/inert/inert-iframe-hittest.html index 8d7facf1723..d6c3551e996 100644 --- a/tests/wpt/tests/inert/inert-iframe-hittest.html +++ b/tests/wpt/tests/inert/inert-iframe-hittest.html @@ -9,7 +9,11 @@ - +
@@ -39,6 +43,10 @@ promise_setup(async () => { }); async function mouseDownAndGetEvents(test) { + await new test_driver.Actions() + .pointerMove(1, 1, { origin: document.body }) + .send(); + const receivedEvents = { target: [], wrapper: [], diff --git a/tests/wpt/tests/mediacapture-record/MediaRecorder-mimetype.html b/tests/wpt/tests/mediacapture-record/MediaRecorder-mimetype.html index 30df91c9587..74248d65f46 100644 --- a/tests/wpt/tests/mediacapture-record/MediaRecorder-mimetype.html +++ b/tests/wpt/tests/mediacapture-record/MediaRecorder-mimetype.html @@ -20,7 +20,7 @@ const AUDIO_CODECS_MIME_TYPES = [ 'audio/ogg; codecs="opus"', 'audio/webm; codecs="vorbis"', 'audio/webm; codecs="opus"', - 'aduio/mp4: codecs="mp4a.40.2"', + 'audio/mp4: codecs="mp4a.40.2"', ]; const VIDEO_ONLY_MIME_TYPES = [ diff --git a/tests/wpt/tests/orientation-event/motion/rounding.https.html b/tests/wpt/tests/orientation-event/motion/rounding.https.html new file mode 100644 index 00000000000..846da79dfb5 --- /dev/null +++ b/tests/wpt/tests/orientation-event/motion/rounding.https.html @@ -0,0 +1,38 @@ + + + + + + + diff --git a/tests/wpt/tests/orientation-event/orientation/null-values.https.html b/tests/wpt/tests/orientation-event/orientation/null-values.https.html index c54d73da50c..9505e009542 100644 --- a/tests/wpt/tests/orientation-event/orientation/null-values.https.html +++ b/tests/wpt/tests/orientation-event/orientation/null-values.https.html @@ -7,21 +7,32 @@ diff --git a/tests/wpt/tests/orientation-event/orientation/rounding.https.html b/tests/wpt/tests/orientation-event/orientation/rounding.https.html new file mode 100644 index 00000000000..89bfa1d53c3 --- /dev/null +++ b/tests/wpt/tests/orientation-event/orientation/rounding.https.html @@ -0,0 +1,29 @@ + + + + + + + diff --git a/tests/wpt/tests/orientation-event/resources/orientation-event-helpers.js b/tests/wpt/tests/orientation-event/resources/orientation-event-helpers.js index 01e91c62aec..dab876fc6a3 100644 --- a/tests/wpt/tests/orientation-event/resources/orientation-event-helpers.js +++ b/tests/wpt/tests/orientation-event/resources/orientation-event-helpers.js @@ -203,6 +203,17 @@ function generateOrientationData(alpha, beta, gamma, absolute) { return orientationData; } +function assertValueIsCoarsened(value) { + // Checks that the precision of the value is at most 0.1. + // https://www.w3.org/TR/orientation-event/ specification defines that all + // measurements are required to be coarsened to 0.1 degrees, 0.1 m/s^2 or + // 0.1 deg/s. + const resolution = 0.1; + const coarsenedValue = Math.round(value / resolution) * resolution; + assert_approx_equals(value, coarsenedValue, Number.EPSILON, + `Expected ${value}'s precision to be at most ${resolution}`); +} + function assertEventEquals(actualEvent, expectedEvent) { // If two doubles differ by less than this amount, we can consider them // to be effectively equal. diff --git a/tests/wpt/tests/performance-timeline/not-restored-reasons/abort-block-bfcache.window.js b/tests/wpt/tests/performance-timeline/not-restored-reasons/abort-block-bfcache.window.js index 8488dd60ccf..09a73509b8a 100644 --- a/tests/wpt/tests/performance-timeline/not-restored-reasons/abort-block-bfcache.window.js +++ b/tests/wpt/tests/performance-timeline/not-restored-reasons/abort-block-bfcache.window.js @@ -14,8 +14,8 @@ async_test(t => { window.stop(); } else { const nrr = performance.getEntriesByType('navigation')[0].notRestoredReasons; + assert_equals(nrr.reasons[0].reason, "parser-aborted"); assert_equals(nrr.reasons.length, 1); - assert_equals(nrr.reasons[0], "parser-aborted"); t.done(); } }, "aborting a parser should block bfcache."); diff --git a/tests/wpt/tests/performance-timeline/not-restored-reasons/performance-navigation-timing-navigation-failure.tentative.window.js b/tests/wpt/tests/performance-timeline/not-restored-reasons/performance-navigation-timing-navigation-failure.tentative.window.js index 4022e6e59f1..5812ebb2b36 100644 --- a/tests/wpt/tests/performance-timeline/not-restored-reasons/performance-navigation-timing-navigation-failure.tentative.window.js +++ b/tests/wpt/tests/performance-timeline/not-restored-reasons/performance-navigation-timing-navigation-failure.tentative.window.js @@ -22,5 +22,5 @@ promise_test(async t => { // Check the BFCache result and the reported reasons. await assertBFCacheEligibility(rc1, /*shouldRestoreFromBFCache=*/ false); - await assertNotRestoredFromBFCache(rc1, ['error-document']); + await assertNotRestoredFromBFCache(rc1, ['navigation-failure']); }); \ No newline at end of file diff --git a/tests/wpt/tests/pointerevents/META.yml b/tests/wpt/tests/pointerevents/META.yml index 1962feaf8af..e6dbf9deecf 100644 --- a/tests/wpt/tests/pointerevents/META.yml +++ b/tests/wpt/tests/pointerevents/META.yml @@ -1,6 +1,6 @@ spec: https://w3c.github.io/pointerevents/ suggested_reviewers: - - Steditor - - plehegar - - RByers - - NavidZ + - patrickhlauke + - flackr + - mustaqahmed + - smaug---- diff --git a/tests/wpt/tests/preload/prefetch-document.html b/tests/wpt/tests/preload/prefetch-document.html index bdb12bd58a0..9f9810be46c 100644 --- a/tests/wpt/tests/preload/prefetch-document.html +++ b/tests/wpt/tests/preload/prefetch-document.html @@ -10,49 +10,6 @@ - \ No newline at end of file + diff --git a/tests/wpt/tests/selection/contenteditable/modifying-selection-with-non-primary-mouse-button.tentative.html b/tests/wpt/tests/selection/contenteditable/modifying-selection-with-non-primary-mouse-button.tentative.html index cb2e44295a9..79fc52ac7db 100644 --- a/tests/wpt/tests/selection/contenteditable/modifying-selection-with-non-primary-mouse-button.tentative.html +++ b/tests/wpt/tests/selection/contenteditable/modifying-selection-with-non-primary-mouse-button.tentative.html @@ -128,6 +128,11 @@ promise_test(async () => { resetEditor(); editor.focus(); selection.collapse(span1.firstChild, 2); + let contextmenuFired = false; + function onContextMenu() { + contextmenuFired = true; + } + document.addEventListener("contextmenu", onContextMenu, {capture: true}); let actions = new test_driver.Actions(); await actions .pointerMove(0, 0) @@ -137,13 +142,26 @@ promise_test(async () => { .pointerUp({button: getButtonType(actions)}) .keyUp("\uE008") .send(); + document.removeEventListener("contextmenu", onContextMenu, {capture: true}); - assert_equals(selection.anchorNode, span1.firstChild, - "Selection#anchorNode should keep in the first element"); - assert_equals(selection.anchorOffset, 2, - "Selection#anchorNode should keep at 2 of the first element"); - assert_equals(selection.focusNode, span2.firstChild, - `Selection#focusNode should be in the second element which was clicked by ${button} button`); + if (button != "secondary" || contextmenuFired) { + assert_equals(selection.anchorNode, span1.firstChild, + "Selection#anchorNode should keep in the first element"); + assert_equals(selection.anchorOffset, 2, + "Selection#anchorNode should keep at 2 of the first element"); + assert_equals(selection.focusNode, span2.firstChild, + `Selection#focusNode should be in the second element which was clicked by ${button} button`); + } else { + // Special case for Firefox. Firefox users can forcibly open context menu + // with pressing shift key. In this case, users may want the secondary + // button click to work as without Shift key press. + assert_true(selection.isCollapsed, + `Selection should be collapsed after ${button} button click because contextmenu was not opened with Shift key`); + assert_equals(selection.focusNode, span2.firstChild, + `Selection should be collapsed in the second element which was clicked by ${ + button + } button because contextmenu was not opened with Shift key`); + } }, `Shift + ${button} click should extend the selection`); promise_test(async () => { diff --git a/tests/wpt/tests/shadow-dom/declarative/declarative-shadow-dom-basic.html b/tests/wpt/tests/shadow-dom/declarative/declarative-shadow-dom-basic.html index 8bc6bec5f50..4f174b8e5f7 100644 --- a/tests/wpt/tests/shadow-dom/declarative/declarative-shadow-dom-basic.html +++ b/tests/wpt/tests/shadow-dom/declarative/declarative-shadow-dom-basic.html @@ -54,6 +54,49 @@ test(() => { t.getAttribute('shadowrootmode', 'CLOSED'); }, 'Shadowrootmode reflection, setter'); +test(() => { + const t = document.createElement('template'); + t.setAttribute('shadowrootdelegatesfocus',''); + assert_equals(t.shadowRootDelegatesFocus,true,'The shadowRootDelegatesFocus IDL should reflect the content attribute'); + t.setAttribute('shadowrootdelegatesfocus','foobar'); + assert_equals(t.shadowRootDelegatesFocus,true,'The value doesn\'t matter'); + t.removeAttribute('shadowrootdelegatesfocus'); + assert_equals(t.shadowRootDelegatesFocus,false,'No shadowRootDelegatesFocus attribute maps to false'); +}, 'Shadowrootdelegatesfocus reflection'); + +test(() => { + const t = document.createElement('template'); + assert_equals(t.getAttribute('shadowrootdelegatesfocus'), null); + t.shadowRootDelegatesFocus = true; + assert_equals(t.getAttribute('shadowrootdelegatesfocus'), ''); + assert_equals(t.shadowRootDelegatesFocus, true); + t.shadowRootDelegatesFocus = false; + assert_equals(t.getAttribute('shadowrootdelegatesfocus'), null); + assert_equals(t.shadowRootDelegatesFocus, false); +}, 'Shadowrootdelegatesfocus reflection, setter'); + + +test(() => { + const t = document.createElement('template'); + t.setAttribute('shadowrootclonable',''); + assert_equals(t.shadowRootClonable,true,'The shadowRootClonable IDL should reflect the content attribute'); + t.setAttribute('shadowrootclonable','foobar'); + assert_equals(t.shadowRootClonable,true,'The value doesn\'t matter'); + t.removeAttribute('shadowrootclonable'); + assert_equals(t.shadowRootClonable,false,'No shadowRootClonable attribute maps to false'); +}, 'Shadowrootclonable reflection'); + +test(() => { + const t = document.createElement('template'); + assert_equals(t.getAttribute('shadowrootclonable'), null); + t.shadowRootClonable = true; + assert_equals(t.getAttribute('shadowrootclonable'), ''); + assert_equals(t.shadowRootClonable, true); + t.shadowRootClonable = false; + assert_equals(t.getAttribute('shadowrootclonable'), null); + assert_equals(t.shadowRootClonable, false); +}, 'Shadowrootclonable reflection, setter'); + test(() => { const div = document.createElement('div'); div.setHTMLUnsafe(` diff --git a/tests/wpt/tests/shadow-dom/declarative/declarative-shadow-dom-repeats-2.html b/tests/wpt/tests/shadow-dom/declarative/declarative-shadow-dom-repeats-2.html new file mode 100644 index 00000000000..74b14b8d8ff --- /dev/null +++ b/tests/wpt/tests/shadow-dom/declarative/declarative-shadow-dom-repeats-2.html @@ -0,0 +1,36 @@ + +Duplicate declarative shadow trees + + + +
+ + + +
+ +
+ + + +
+ + diff --git a/tests/wpt/tests/shadow-dom/declarative/declarative-shadow-dom-repeats.html b/tests/wpt/tests/shadow-dom/declarative/declarative-shadow-dom-repeats.html index 69f5c0f077a..9cee41f2f31 100644 --- a/tests/wpt/tests/shadow-dom/declarative/declarative-shadow-dom-repeats.html +++ b/tests/wpt/tests/shadow-dom/declarative/declarative-shadow-dom-repeats.html @@ -22,13 +22,19 @@ @@ -40,39 +46,48 @@ test((t) => { test((t) => { assert_throws_dom("NotSupportedError",() => { open1.attachShadow({mode: "closed"}); - },'Mismatched shadow root type should throw'); + },'Mismatched shadow root mode should throw'); const initialShadow = open1.shadowRoot; const shadow = open1.attachShadow({mode: "open"}); // Shouldn't throw assert_equals(shadow,initialShadow,'Same shadow should be returned'); assert_equals(shadow.textContent,'','Shadow should be empty'); -},'Calling attachShadow() on declarative shadow root must match type'); +},'Calling attachShadow() on declarative shadow root must match mode');
-