diff --git a/tests/wpt/metadata-layout-2020/FileAPI/url/url-in-tags-revoke.window.js.ini b/tests/wpt/metadata-layout-2020/FileAPI/url/url-in-tags-revoke.window.js.ini index 76b44d9e9cf..3605e8f3fc9 100644 --- a/tests/wpt/metadata-layout-2020/FileAPI/url/url-in-tags-revoke.window.js.ini +++ b/tests/wpt/metadata-layout-2020/FileAPI/url/url-in-tags-revoke.window.js.ini @@ -4,7 +4,7 @@ expected: TIMEOUT [Opening a blob URL in a new window immediately before revoking it works.] - expected: FAIL + expected: TIMEOUT [Fetching a blob URL immediately before revoking it works in an iframe.] expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/floats/hit-test-floats-004.html.ini b/tests/wpt/metadata-layout-2020/css/CSS2/floats/hit-test-floats-004.html.ini deleted file mode 100644 index 4bfb0c2053a..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/floats/hit-test-floats-004.html.ini +++ /dev/null @@ -1,4 +0,0 @@ -[hit-test-floats-004.html] - [Miss float below something else] - expected: FAIL - diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/floats/hit-test-floats-005.html.ini b/tests/wpt/metadata-layout-2020/css/CSS2/floats/hit-test-floats-005.html.ini new file mode 100644 index 00000000000..baa9f1a7541 --- /dev/null +++ b/tests/wpt/metadata-layout-2020/css/CSS2/floats/hit-test-floats-005.html.ini @@ -0,0 +1,4 @@ +[hit-test-floats-005.html] + [Miss clipped float] + expected: FAIL + diff --git a/tests/wpt/metadata-layout-2020/css/css-backgrounds/border-image-slice-005.htm.ini b/tests/wpt/metadata-layout-2020/css/css-backgrounds/border-image-slice-005.htm.ini deleted file mode 100644 index df5cf5244c0..00000000000 --- a/tests/wpt/metadata-layout-2020/css/css-backgrounds/border-image-slice-005.htm.ini +++ /dev/null @@ -1,2 +0,0 @@ -[border-image-slice-005.htm] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/css-backgrounds/border-image-slice-007.htm.ini b/tests/wpt/metadata-layout-2020/css/css-backgrounds/border-image-slice-007.htm.ini deleted file mode 100644 index 2670f31ca12..00000000000 --- a/tests/wpt/metadata-layout-2020/css/css-backgrounds/border-image-slice-007.htm.ini +++ /dev/null @@ -1,2 +0,0 @@ -[border-image-slice-007.htm] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/css-images/image-orientation/svg-image-orientation-none.html.ini b/tests/wpt/metadata-layout-2020/css/css-images/image-orientation/svg-image-orientation-none.html.ini deleted file mode 100644 index 6f19466fb16..00000000000 --- a/tests/wpt/metadata-layout-2020/css/css-images/image-orientation/svg-image-orientation-none.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[svg-image-orientation-none.html] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/css-images/image-orientation/svg-image-orientation.html.ini b/tests/wpt/metadata-layout-2020/css/css-images/image-orientation/svg-image-orientation.html.ini deleted file mode 100644 index 9e4d35bad36..00000000000 --- a/tests/wpt/metadata-layout-2020/css/css-images/image-orientation/svg-image-orientation.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[svg-image-orientation.html] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/css-text-decor/text-decoration-thickness-single.html.ini b/tests/wpt/metadata-layout-2020/css/css-text-decor/text-decoration-thickness-single.html.ini new file mode 100644 index 00000000000..545045c98e9 --- /dev/null +++ b/tests/wpt/metadata-layout-2020/css/css-text-decor/text-decoration-thickness-single.html.ini @@ -0,0 +1,2 @@ +[text-decoration-thickness-single.html] + expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/css-transforms/perspective-transforms-equivalence.html.ini b/tests/wpt/metadata-layout-2020/css/css-transforms/perspective-transforms-equivalence.html.ini deleted file mode 100644 index 49b7aea325b..00000000000 --- a/tests/wpt/metadata-layout-2020/css/css-transforms/perspective-transforms-equivalence.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[perspective-transforms-equivalence.html] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/css-transforms/transform-scale-hittest.html.ini b/tests/wpt/metadata-layout-2020/css/css-transforms/transform-scale-hittest.html.ini index f8e7e539aae..4a1e8110f6f 100644 --- a/tests/wpt/metadata-layout-2020/css/css-transforms/transform-scale-hittest.html.ini +++ b/tests/wpt/metadata-layout-2020/css/css-transforms/transform-scale-hittest.html.ini @@ -2,6 +2,3 @@ [Hit test intersecting scaled box] expected: FAIL - [Hit test within unscaled box] - expected: FAIL - diff --git a/tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPosition.html.ini b/tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPosition.html.ini index 23c61ede1a1..c131078eace 100644 --- a/tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPosition.html.ini +++ b/tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPosition.html.ini @@ -17,6 +17,3 @@ [test the top of layer] expected: FAIL - [test some point of the element: top left corner] - expected: FAIL - diff --git a/tests/wpt/metadata-layout-2020/css/cssom-view/elementsFromPoint-iframes.html.ini b/tests/wpt/metadata-layout-2020/css/cssom-view/elementsFromPoint-iframes.html.ini index 171592fc08f..6ef8bb1049f 100644 --- a/tests/wpt/metadata-layout-2020/css/cssom-view/elementsFromPoint-iframes.html.ini +++ b/tests/wpt/metadata-layout-2020/css/cssom-view/elementsFromPoint-iframes.html.ini @@ -2,3 +2,6 @@ [elementsFromPoint on the root document for points in iframe elements] expected: FAIL + [elementsFromPoint on inner documents] + expected: FAIL + diff --git a/tests/wpt/metadata-layout-2020/css/cssom/flex-serialization.html.ini b/tests/wpt/metadata-layout-2020/css/cssom/flex-serialization.html.ini new file mode 100644 index 00000000000..621ae91ce8d --- /dev/null +++ b/tests/wpt/metadata-layout-2020/css/cssom/flex-serialization.html.ini @@ -0,0 +1,4 @@ +[flex-serialization.html] + [CSSOM - Flex serialization] + expected: FAIL + diff --git a/tests/wpt/metadata-layout-2020/fetch/content-type/response.window.js.ini b/tests/wpt/metadata-layout-2020/fetch/content-type/response.window.js.ini index 13b7fd49451..a4bf3bc1094 100644 --- a/tests/wpt/metadata-layout-2020/fetch/content-type/response.window.js.ini +++ b/tests/wpt/metadata-layout-2020/fetch/content-type/response.window.js.ini @@ -309,30 +309,18 @@ [Response: combined response Content-Type: text/html;" \\" text/plain ";charset=GBK] expected: NOTRUN - [ - \ No newline at end of file + diff --git a/tests/wpt/web-platform-tests/css/css-images/image-orientation/image-orientation-from-image.html b/tests/wpt/web-platform-tests/css/css-images/image-orientation/image-orientation-from-image.html index 9e27bd79051..14b929c0895 100644 --- a/tests/wpt/web-platform-tests/css/css-images/image-orientation/image-orientation-from-image.html +++ b/tests/wpt/web-platform-tests/css/css-images/image-orientation/image-orientation-from-image.html @@ -6,7 +6,7 @@ - + + + +

Test passes if the underline thickness is 10px thick.

+
XXXX
+ + diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-thickness-single.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-thickness-single.html new file mode 100644 index 00000000000..b62a4280407 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-thickness-single.html @@ -0,0 +1,25 @@ + + + + + Test case for text-decoration-thickness + + + + + + + + +

Test passes if the underline thickness is 10px thick.

+
XXXX
+ + diff --git a/tests/wpt/web-platform-tests/css/css-transforms/perspective-transforms-equivalence.html b/tests/wpt/web-platform-tests/css/css-transforms/perspective-transforms-equivalence.html index 2f2ae21f87f..818555f6116 100644 --- a/tests/wpt/web-platform-tests/css/css-transforms/perspective-transforms-equivalence.html +++ b/tests/wpt/web-platform-tests/css/css-transforms/perspective-transforms-equivalence.html @@ -9,7 +9,7 @@ Perspective with different transforms can have small anti-aliasing pixel differences, so the test should fuzzy patch to the ref. --> - + + + + + diff --git a/tests/wpt/web-platform-tests/css/selectors/focus-visible-002-manual.html b/tests/wpt/web-platform-tests/css/selectors/focus-visible-002.html similarity index 89% rename from tests/wpt/web-platform-tests/css/selectors/focus-visible-002-manual.html rename to tests/wpt/web-platform-tests/css/selectors/focus-visible-002.html index f86082df8b8..19c937a7abb 100644 --- a/tests/wpt/web-platform-tests/css/selectors/focus-visible-002-manual.html +++ b/tests/wpt/web-platform-tests/css/selectors/focus-visible-002.html @@ -8,6 +8,9 @@ + + +

There should be no red.

-
+
+
diff --git a/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-fieldset-and-legend-elements/fieldset-containing-block.html b/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-fieldset-and-legend-elements/fieldset-containing-block.html index e7529946a49..cefb3584eae 100644 --- a/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-fieldset-and-legend-elements/fieldset-containing-block.html +++ b/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-fieldset-and-legend-elements/fieldset-containing-block.html @@ -7,7 +7,29 @@ fieldset { position: relative; border: none; padding: 0; margin: 0; } legend { padding: 0; width: 100px; height: 50px; background: lime; } div { position: absolute; top: 0; width: 100px; height: 50px; background: lime; } .behind { height:100px; top: 108px; background: red; } + +.fixed-container { + filter: invert(); + overflow: hidden; + width: 200px; + height: 200px; +} +.fixed { + position: fixed; + width: 400px; + height: 100px; + background: linear-gradient(to right, #ff00ff 50%, #00ffff 50%); +} +.has-fixed { + width: 0px; + height: 0px; +}

There should be no red.

+ +
+
+
+
diff --git a/tests/wpt/web-platform-tests/html/semantics/forms/textfieldselection/selection-not-application-textarea.html b/tests/wpt/web-platform-tests/html/semantics/forms/textfieldselection/selection-not-application-textarea.html index 3116cd93523..e8e82791880 100644 --- a/tests/wpt/web-platform-tests/html/semantics/forms/textfieldselection/selection-not-application-textarea.html +++ b/tests/wpt/web-platform-tests/html/semantics/forms/textfieldselection/selection-not-application-textarea.html @@ -11,8 +11,15 @@ var el = document.createElement("textarea"); assert_equals(el.selectionStart, 0, "initial selectionStart"); assert_equals(el.selectionEnd, 0, "initial selectionEnd"); - assert_equals(el.selectionDirection, "none", "initial selectionDirection"); + // The initial selection direction must be "none" if the platform supports that + // direction, or "forward" otherwise. + assert_in_array(el.selectionDirection, ["none", "forward"]); + const initialDirection = el.selectionDirection; + el.selectionDirection = "none"; + assert_equals(el.selectionDirection, initialDirection); + + el.value = "foo"; el.selectionStart = 1; el.selectionEnd = 1; el.selectionDirection = "forward"; diff --git a/tests/wpt/web-platform-tests/html/semantics/forms/textfieldselection/selection-not-application.html b/tests/wpt/web-platform-tests/html/semantics/forms/textfieldselection/selection-not-application.html index a7d7f1c5518..aa98a030a83 100644 --- a/tests/wpt/web-platform-tests/html/semantics/forms/textfieldselection/selection-not-application.html +++ b/tests/wpt/web-platform-tests/html/semantics/forms/textfieldselection/selection-not-application.html @@ -63,8 +63,11 @@ }); applicableTypes.forEach(function(type) { - var el = document.createElement("input"); - if (type) el.type = type; + const el = document.createElement("input"); + if (type) { + el.type = type; + } + const initialDirection = el.selectionDirection; test(() => { assert_equals(el.selectionStart, 0); @@ -78,6 +81,11 @@ assert_in_array(el.selectionDirection, ["forward", "none"]); }, `selectionDirection on an input[type=${type}] returns a value`); + test(() => { + el.selectionDirection = "none"; + assert_equals(el.selectionDirection, initialDirection); + }, `assigning selectionDirection "none" on an input[type=${type}] should give the initial direction`); + test(() => { el.selectionStart = 1; }, `assigning selectionStart on an input[type=${type}] doesn't throw an exception`); diff --git a/tests/wpt/web-platform-tests/html/semantics/forms/textfieldselection/selection-start-end.html b/tests/wpt/web-platform-tests/html/semantics/forms/textfieldselection/selection-start-end.html index 4bcecf234cc..919d1a4d658 100644 --- a/tests/wpt/web-platform-tests/html/semantics/forms/textfieldselection/selection-start-end.html +++ b/tests/wpt/web-platform-tests/html/semantics/forms/textfieldselection/selection-start-end.html @@ -144,6 +144,31 @@ } }, "selectionEnd edge-case values"); + test(() => { + for (const el of createTestElements(testValue)) { + el.selectionStart = 200; + assert_equals(el.selectionStart, testValue.length); + el.remove(); + } + }, "selectionStart should be clamped by the current value length"); + + test(() => { + for (const el of createTestElements(testValue)) { + el.selectionStart = 300; + assert_equals(el.selectionEnd, testValue.length); + el.remove(); + } + }, "selectionEnd should be clamped by the current value length"); + + test(() => { + for (const el of createTestElements(testValue)) { + el.setSelectionRange(200, 300); + assert_equals(el.selectionStart, testValue.length); + assert_equals(el.selectionEnd, testValue.length); + el.remove(); + } + }, "setSelectionRange should be clamped by the current value length"); + test(() => { for (let el of createTestElements(testValue)) { const start = 1; diff --git a/tests/wpt/web-platform-tests/lint.ignore b/tests/wpt/web-platform-tests/lint.ignore index bfbb2965738..86c71544396 100644 --- a/tests/wpt/web-platform-tests/lint.ignore +++ b/tests/wpt/web-platform-tests/lint.ignore @@ -708,9 +708,9 @@ WEB-PLATFORM.TEST:signed-exchange/resources/generate-test-sxgs.sh # Web Bundle files have hard-coded URLs WEB-PLATFORM.TEST:web-bundle/resources/generate-test-wbns.sh +WEB-PLATFORM.TEST:web-bundle/resources/nested/*.wbn WEB-PLATFORM.TEST:web-bundle/resources/wbn/*.wbn -WEB-PLATFORM.TEST:web-bundle/subresource-loading/subresource-loading-from-web-bundle.tentative.html -WEB-PLATFORM.TEST:web-bundle/subresource-loading/subresource-loading-path-restriction.tentative.html +WEB-PLATFORM.TEST:web-bundle/subresource-loading/*.html # Tests that depend on resources in /gen/ in Chromium: # https://github.com/web-platform-tests/wpt/issues/16455 diff --git a/tests/wpt/web-platform-tests/serial/serialPort_loopback-manual.https.html b/tests/wpt/web-platform-tests/serial/serialPort_loopback-manual.https.html index 9e7801d8332..201a2dedba8 100644 --- a/tests/wpt/web-platform-tests/serial/serialPort_loopback-manual.https.html +++ b/tests/wpt/web-platform-tests/serial/serialPort_loopback-manual.https.html @@ -92,90 +92,6 @@ await port.close(); }, 'Canceling the reader discards buffered data.'); - - manual_loopback_serial_test(async (t, port) => { - await port.open({baudRate: 115200, bufferSize: 1024}); - - // Create something much larger than bufferSize above. - const data = new Uint8Array(16 * 1024); - for (let i = 0; i < data.byteLength; ++i) - data[i] = (i / 1024) & 0xff; - - // Completely write |data| to the port without waiting for it to be - // received. - const writer = port.writable.getWriter(); - writer.write(data); - await writer.close(); - - const reader = port.readable.getReader(); - const chunks = []; - let actualLength = 0; - while (true) { - try { - const {value, done} = await reader.read(); - if (value) { - actualLength += value.byteLength; - chunks.push(value); - } - if (done) { - assert_unreached("Unexpected end of stream."); - break; - } - } catch (e) { - assert_equals(e.name, 'BufferOverrunError'); - break; - } - } - reader.releaseLock(); - - const buffer = new Uint8Array(actualLength); - chunks.reduce((offset, chunk) => { - buffer.set(chunk, offset); - return offset + chunk.byteLength; - }, 0); - - assert_greater_than(actualLength, 0); - compareArrays(buffer, data.slice(0, actualLength)); - - await port.close(); - }, 'Overflowing the receive buffer triggers an error.'); - - manual_loopback_serial_test(async (t, port) => { - await port.open({baudRate: 115200, bufferSize: 1024}); - - let reader = port.readable.getReader(); - let readPromise = (async () => { - // A single zero byte will be read before the break is detected. - const {value, done} = await reader.read(); - compareArrays(value, new Uint8Array([0])); - assert_false(done); - - try { - const {value, done} = await reader.read(); - assert_unreached(`Expected break, got ${value.byteLength} bytes`); - } catch (e) { - assert_equals(e.constructor, DOMException); - assert_equals(e.name, 'BreakError'); - } - })(); - - await port.setSignals({break: true}); - await readPromise; - await port.setSignals({break: false}); - - const writer = port.writable.getWriter(); - // |data| is small enough to be completely transmitted. - let data = new Uint8Array([1, 2, 3, 4, 5, 6, 7, 8]); - await writer.write(data); - writer.releaseLock(); - - reader = port.readable.getReader(); - const buffer = await readWithLength(reader, data.byteLength);; - compareArrays(buffer, data); - reader.releaseLock(); - - await port.close(); - }, 'Break is detected.'); diff --git a/tests/wpt/web-platform-tests/serial/serialPort_loopback_BreakError-manual.https.html b/tests/wpt/web-platform-tests/serial/serialPort_loopback_BreakError-manual.https.html new file mode 100644 index 00000000000..22b15316e26 --- /dev/null +++ b/tests/wpt/web-platform-tests/serial/serialPort_loopback_BreakError-manual.https.html @@ -0,0 +1,55 @@ + + + + + + + + + + + +

+ These tests require a connected serial device configured to act as a + "loopback" device, with the transmit and receive pins wired together. +

+ + + diff --git a/tests/wpt/web-platform-tests/serial/serialPort_loopback_BufferOverrunError-manual.https.html b/tests/wpt/web-platform-tests/serial/serialPort_loopback_BufferOverrunError-manual.https.html new file mode 100644 index 00000000000..e90a5b01613 --- /dev/null +++ b/tests/wpt/web-platform-tests/serial/serialPort_loopback_BufferOverrunError-manual.https.html @@ -0,0 +1,65 @@ + + + + + + + + + + + +

+ These tests require a connected serial device configured to act as a + "loopback" device, with the transmit and receive pins wired together. +

+ + + diff --git a/tests/wpt/web-platform-tests/web-bundle/resources/generate-test-wbns.sh b/tests/wpt/web-platform-tests/web-bundle/resources/generate-test-wbns.sh index 7100e6a7772..8fc28bb9db7 100755 --- a/tests/wpt/web-platform-tests/web-bundle/resources/generate-test-wbns.sh +++ b/tests/wpt/web-platform-tests/web-bundle/resources/generate-test-wbns.sh @@ -55,3 +55,12 @@ gen-bundle \ -primaryURL $wpt_test_http_origin/web-bundle/resources/wbn/resource.js \ -dir path-restriction/ \ -o wbn/path-restriction.wbn + +# Create a bundle, nested-main.wbn, which includes nested-sub.wbn. +cp -a wbn/subresource.wbn nested/nested-sub.wbn +gen-bundle \ + -version b1 \ + -baseURL $wpt_test_http_origin/web-bundle/resources/wbn/ \ + -primaryURL $wpt_test_http_origin/web-bundle/resources/wbn/resource.js \ + -dir nested/ \ + -o wbn/nested-main.wbn diff --git a/tests/wpt/web-platform-tests/web-bundle/resources/nested/nested-sub.wbn b/tests/wpt/web-platform-tests/web-bundle/resources/nested/nested-sub.wbn new file mode 100644 index 00000000000..eabd994ff8b Binary files /dev/null and b/tests/wpt/web-platform-tests/web-bundle/resources/nested/nested-sub.wbn differ diff --git a/tests/wpt/web-platform-tests/web-bundle/resources/wbn/nested-main.wbn b/tests/wpt/web-platform-tests/web-bundle/resources/wbn/nested-main.wbn new file mode 100644 index 00000000000..1f927814831 Binary files /dev/null and b/tests/wpt/web-platform-tests/web-bundle/resources/wbn/nested-main.wbn differ diff --git a/tests/wpt/web-platform-tests/web-bundle/subresource-loading/subresource-loading-nested-bundle.tentative.html b/tests/wpt/web-platform-tests/web-bundle/subresource-loading/subresource-loading-nested-bundle.tentative.html new file mode 100644 index 00000000000..acca096bfbd --- /dev/null +++ b/tests/wpt/web-platform-tests/web-bundle/subresource-loading/subresource-loading-nested-bundle.tentative.html @@ -0,0 +1,46 @@ + +A nested bundle is not supported + + + + + + + diff --git a/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletprocessor-param-getter-overridden.https.html b/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletprocessor-param-getter-overridden.https.html new file mode 100644 index 00000000000..e3fb6e533df --- /dev/null +++ b/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletprocessor-param-getter-overridden.https.html @@ -0,0 +1,59 @@ + + + + + Test if AudioWorkletProcessor with invalid parameters array getter + + + + + + + + + diff --git a/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/processors/invalid-param-array-processor.js b/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/processors/invalid-param-array-processor.js new file mode 100644 index 00000000000..e4a5dc39ba1 --- /dev/null +++ b/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/processors/invalid-param-array-processor.js @@ -0,0 +1,47 @@ +/** + * @class InvalidParamArrayProcessor + * @extends AudioWorkletProcessor + * + * This processor intentionally returns an array with an invalid size when the + * processor's getter is queried. + */ +let singleton = undefined; +let secondFetch = false; +let useDescriptor = false; +let processCounter = 0; + +class InvalidParamArrayProcessor extends AudioWorkletProcessor { + static get parameterDescriptors() { + if (useDescriptor) + return [{name: 'invalidParam'}]; + useDescriptor = true; + return []; + } + + constructor() { + super(); + if (singleton === undefined) + singleton = this; + return singleton; + } + + process(inputs, outputs, parameters) { + const output = outputs[0]; + for (let channel = 0; channel < output.length; ++channel) + output[channel].fill(1); + return false; + } +} + +// This overridden getter is invoked under the hood before process() gets +// called. After this gets called, process() method above will be invalidated, +// and mark the worklet node non-functional. (i.e. in an error state) +Object.defineProperty(Object.prototype, 'invalidParam', {'get': () => { + if (secondFetch) + return new Float32Array(256); + secondFetch = true; + return new Float32Array(128); +}}); + +registerProcessor('invalid-param-array-1', InvalidParamArrayProcessor); +registerProcessor('invalid-param-array-2', InvalidParamArrayProcessor); diff --git a/tests/wpt/webgl/meta/conformance2/rendering/draw-buffers.html.ini b/tests/wpt/webgl/meta/conformance2/rendering/draw-buffers.html.ini index f575f232a13..48356327d0e 100644 --- a/tests/wpt/webgl/meta/conformance2/rendering/draw-buffers.html.ini +++ b/tests/wpt/webgl/meta/conformance2/rendering/draw-buffers.html.ini @@ -257,3 +257,6 @@ [WebGL test #48: attachment 3 should be 0,255,0,255\nat (0, 0) expected: 0,255,0,255 was 0,57,0,0] expected: FAIL + [WebGL test #44: attachment 7 should be 0,255,0,255\nat (0, 0) expected: 0,255,0,255 was 255,0,0,0] + expected: FAIL +