2019-07-15  Rob Buis  <rbuis@igalia.com>

        MathML WPT test for RadicalDegreeBottomRaisePercent fails
        https://bugs.webkit.org/show_bug.cgi?id=183631

        Reviewed by Frédéric Wang.

        Adjust test expectation.

        * web-platform-tests/mathml/presentation-markup/radicals/root-parameters-1-expected.txt:

2019-07-15  Yusuke Suzuki  <ysuzuki@apple.com>

        [JSC] Improve wasm wpt test results by fixing miscellaneous issues
        https://bugs.webkit.org/show_bug.cgi?id=199783

        Reviewed by Mark Lam.

        Import web-platform-tests/wasm/jsapi. Some of tests are failing just because imported wpt tests are old.
        They are fixed in the upstream. When upgrading wpt tests, we can mark them PASS.

        * resources/import-expectations.json:
        * web-platform-tests/wasm/jsapi/assertions.js: Added.
        (assert_function_name):
        (assert_function_length):
        * web-platform-tests/wasm/jsapi/bad-imports.js: Added.
        (test_bad_imports):
        * web-platform-tests/wasm/jsapi/constructor/instantiate-bad-imports.any-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/constructor/instantiate-bad-imports.any.html: Added.
        * web-platform-tests/wasm/jsapi/constructor/instantiate-bad-imports.any.js: Added.
        (test_bad_imports):
        * web-platform-tests/wasm/jsapi/constructor/instantiate-bad-imports.any.worker-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/constructor/instantiate-bad-imports.any.worker.html: Added.
        * web-platform-tests/wasm/jsapi/constructor/w3c-import.log: Added.
        * web-platform-tests/wasm/jsapi/global/constructor.any-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/global/constructor.any.html: Added.
        * web-platform-tests/wasm/jsapi/global/constructor.any.js: Added.
        (assert_Global):
        (test):
        (test.get assert_array_equals):
        (string_appeared_here.test):
        (string_appeared_here.toString):
        (string_appeared_here.valueOf):
        (string_appeared_here.name.format_value):
        * web-platform-tests/wasm/jsapi/global/constructor.any.worker-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/global/constructor.any.worker.html: Added.
        * web-platform-tests/wasm/jsapi/global/toString.any-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/global/toString.any.html: Added.
        * web-platform-tests/wasm/jsapi/global/toString.any.js: Added.
        (test):
        * web-platform-tests/wasm/jsapi/global/toString.any.worker-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/global/toString.any.worker.html: Added.
        * web-platform-tests/wasm/jsapi/global/value-set.any-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/global/value-set.any.html: Added.
        * web-platform-tests/wasm/jsapi/global/value-set.any.js: Added.
        (test):
        (string_appeared_here.name.of.immutableOptions.test):
        (string_appeared_here.name.of.mutableOptions.test):
        * web-platform-tests/wasm/jsapi/global/value-set.any.worker-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/global/value-set.any.worker.html: Added.
        * web-platform-tests/wasm/jsapi/global/valueOf.any-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/global/valueOf.any.html: Added.
        * web-platform-tests/wasm/jsapi/global/valueOf.any.js: Added.
        (test):
        * web-platform-tests/wasm/jsapi/global/valueOf.any.worker-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/global/valueOf.any.worker.html: Added.
        * web-platform-tests/wasm/jsapi/global/w3c-import.log: Added.
        * web-platform-tests/wasm/jsapi/instance/constructor-bad-imports.any-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/instance/constructor-bad-imports.any.html: Added.
        * web-platform-tests/wasm/jsapi/instance/constructor-bad-imports.any.js: Added.
        (test_bad_imports):
        * web-platform-tests/wasm/jsapi/instance/constructor-bad-imports.any.worker-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/instance/constructor-bad-imports.any.worker.html: Added.
        * web-platform-tests/wasm/jsapi/instance/constructor.any-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/instance/constructor.any.html: Added.
        * web-platform-tests/wasm/jsapi/instance/constructor.any.js: Added.
        (assert_exported_function):
        * web-platform-tests/wasm/jsapi/instance/constructor.any.worker-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/instance/constructor.any.worker.html: Added.
        * web-platform-tests/wasm/jsapi/instance/exports.any-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/instance/exports.any.html: Added.
        * web-platform-tests/wasm/jsapi/instance/exports.any.js: Added.
        (setup):
        (test):
        * web-platform-tests/wasm/jsapi/instance/exports.any.worker-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/instance/exports.any.worker.html: Added.
        * web-platform-tests/wasm/jsapi/instance/toString.any-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/instance/toString.any.html: Added.
        * web-platform-tests/wasm/jsapi/instance/toString.any.js: Added.
        (test):
        * web-platform-tests/wasm/jsapi/instance/toString.any.worker-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/instance/toString.any.worker.html: Added.
        * web-platform-tests/wasm/jsapi/instance/w3c-import.log: Added.
        * web-platform-tests/wasm/jsapi/interface.any-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/interface.any.html: Added.
        * web-platform-tests/wasm/jsapi/interface.any.js: Added.
        (test_operations):
        (test):
        (const.name.of.interfaces.test):
        * web-platform-tests/wasm/jsapi/interface.any.worker-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/interface.any.worker.html: Added.
        * web-platform-tests/wasm/jsapi/memory/buffer.any-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/memory/buffer.any.html: Added.
        * web-platform-tests/wasm/jsapi/memory/buffer.any.js: Added.
        (test):
        * web-platform-tests/wasm/jsapi/memory/buffer.any.worker-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/memory/buffer.any.worker.html: Added.
        * web-platform-tests/wasm/jsapi/memory/constructor.any-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/memory/constructor.any.html: Added.
        * web-platform-tests/wasm/jsapi/memory/constructor.any.js: Added.
        (assert_Memory):
        (test):
        (const.value.of.outOfRangeValues.test):
        (test.get new):
        (test.get assert_array_equals):
        * web-platform-tests/wasm/jsapi/memory/constructor.any.worker-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/memory/constructor.any.worker.html: Added.
        * web-platform-tests/wasm/jsapi/memory/grow.any-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/memory/grow.any.html: Added.
        * web-platform-tests/wasm/jsapi/memory/grow.any.js: Added.
        (assert_ArrayBuffer):
        (test):
        (valueOf):
        (const.value.of.outOfRangeValues.test):
        * web-platform-tests/wasm/jsapi/memory/grow.any.worker-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/memory/grow.any.worker.html: Added.
        * web-platform-tests/wasm/jsapi/memory/toString.any-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/memory/toString.any.html: Added.
        * web-platform-tests/wasm/jsapi/memory/toString.any.js: Added.
        (test):
        * web-platform-tests/wasm/jsapi/memory/toString.any.worker-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/memory/toString.any.worker.html: Added.
        * web-platform-tests/wasm/jsapi/memory/w3c-import.log: Added.
        * web-platform-tests/wasm/jsapi/module/constructor.any-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/module/constructor.any.html: Added.
        * web-platform-tests/wasm/jsapi/module/constructor.any.js: Added.
        (setup):
        (test):
        * web-platform-tests/wasm/jsapi/module/constructor.any.worker-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/module/constructor.any.worker.html: Added.
        * web-platform-tests/wasm/jsapi/module/customSections.any-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/module/customSections.any.html: Added.
        * web-platform-tests/wasm/jsapi/module/customSections.any.js: Added.
        (assert_ArrayBuffer):
        (assert_sections):
        (setup):
        (test):
        * web-platform-tests/wasm/jsapi/module/customSections.any.worker-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/module/customSections.any.worker.html: Added.
        * web-platform-tests/wasm/jsapi/module/exports.any-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/module/exports.any.html: Added.
        * web-platform-tests/wasm/jsapi/module/exports.any.js: Added.
        (setup):
        (assert_ModuleExportDescriptor):
        (assert_exports):
        (test):
        * web-platform-tests/wasm/jsapi/module/exports.any.worker-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/module/exports.any.worker.html: Added.
        * web-platform-tests/wasm/jsapi/module/imports.any-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/module/imports.any.html: Added.
        * web-platform-tests/wasm/jsapi/module/imports.any.js: Added.
        (assert_ModuleImportDescriptor):
        (assert_imports):
        (setup):
        (test):
        * web-platform-tests/wasm/jsapi/module/imports.any.worker-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/module/imports.any.worker.html: Added.
        * web-platform-tests/wasm/jsapi/module/toString.any-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/module/toString.any.html: Added.
        * web-platform-tests/wasm/jsapi/module/toString.any.js: Added.
        (test):
        * web-platform-tests/wasm/jsapi/module/toString.any.worker-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/module/toString.any.worker.html: Added.
        * web-platform-tests/wasm/jsapi/module/w3c-import.log: Added.
        * web-platform-tests/wasm/jsapi/table/assertions.js: Added.
        (assert_equal_to_array):
        * web-platform-tests/wasm/jsapi/table/constructor.any-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/table/constructor.any.html: Added.
        * web-platform-tests/wasm/jsapi/table/constructor.any.js: Added.
        (assert_Table):
        (test):
        (const.value.of.outOfRangeValues.test):
        (test.get const):
        * web-platform-tests/wasm/jsapi/table/constructor.any.worker-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/table/constructor.any.worker.html: Added.
        * web-platform-tests/wasm/jsapi/table/get-set.any-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/table/get-set.any.html: Added.
        * web-platform-tests/wasm/jsapi/table/get-set.any.js: Added.
        (setup):
        (test):
        (test.set assert_equal_to_array):
        (test.const.fn):
        (valueOf):
        (const.value.of.outOfRangeValues.test):
        * web-platform-tests/wasm/jsapi/table/get-set.any.worker-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/table/get-set.any.worker.html: Added.
        * web-platform-tests/wasm/jsapi/table/grow.any-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/table/grow.any.html: Added.
        * web-platform-tests/wasm/jsapi/table/grow.any.js: Added.
        (nulls):
        (test):
        (valueOf):
        (const.value.of.outOfRangeValues.test):
        * web-platform-tests/wasm/jsapi/table/grow.any.worker-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/table/grow.any.worker.html: Added.
        * web-platform-tests/wasm/jsapi/table/length.any-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/table/length.any.html: Added.
        * web-platform-tests/wasm/jsapi/table/length.any.js: Added.
        (test):
        * web-platform-tests/wasm/jsapi/table/length.any.worker-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/table/length.any.worker.html: Added.
        * web-platform-tests/wasm/jsapi/table/toString.any-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/table/toString.any.html: Added.
        * web-platform-tests/wasm/jsapi/table/toString.any.js: Added.
        (test):
        * web-platform-tests/wasm/jsapi/table/toString.any.worker-expected.txt: Added.
        * web-platform-tests/wasm/jsapi/table/toString.any.worker.html: Added.
        * web-platform-tests/wasm/jsapi/table/w3c-import.log: Added.
        * web-platform-tests/wasm/jsapi/w3c-import.log: Added.
        * web-platform-tests/wasm/jsapi/wasm-constants.js: Added.
        (bytes):
        (bytesWithHeader):
        (makeSig):
        (makeSig_v_x):
        (makeSig_v_xx):
        (makeSig_r_v):
        (makeSig_r_x):
        (makeSig_r_xx):
        (assertTraps):
        (assertWasmThrows):
        * web-platform-tests/wasm/jsapi/wasm-module-builder.js: Added.
        (Binary.prototype.emit_u8):
        (Binary.prototype.emit_u16):
        (Binary.prototype.emit_u32):
        (Binary.prototype.emit_u32v):
        (Binary.prototype.emit_bytes):
        (Binary.prototype.emit_string):
        (Binary.prototype.emit_header):
        (Binary.prototype.emit_section):
        (Binary):
        (WasmFunctionBuilder):
        (WasmFunctionBuilder.prototype.exportAs):
        (WasmFunctionBuilder.prototype.exportFunc):
        (WasmFunctionBuilder.prototype.addBody):
        (WasmFunctionBuilder.prototype.addLocals):
        (WasmFunctionBuilder.prototype.end):
        (WasmGlobalBuilder):
        (WasmGlobalBuilder.prototype.exportAs):
        (WasmModuleBuilder):
        (WasmModuleBuilder.prototype.addStart):
        (WasmModuleBuilder.prototype.addMemory):
        (WasmModuleBuilder.prototype.addExplicitSection):
        (WasmModuleBuilder.prototype.addType):
        (WasmModuleBuilder.prototype.addGlobal):
        (WasmModuleBuilder.prototype.addFunction):
        (WasmModuleBuilder.prototype.addImport):
        (WasmModuleBuilder.prototype.addImportedGlobal):
        (WasmModuleBuilder.prototype.addImportedMemory):
        (WasmModuleBuilder.prototype.addImportedTable):
        (WasmModuleBuilder.prototype.addExport):
        (WasmModuleBuilder.prototype.addExportOfKind):
        (WasmModuleBuilder.prototype.addDataSegment):
        (WasmModuleBuilder.prototype.exportMemoryAs):
        (WasmModuleBuilder.prototype.addFunctionTableInit):
        (WasmModuleBuilder.prototype.appendToTable):
        (WasmModuleBuilder.prototype.setFunctionTableLength):
        (WasmModuleBuilder.prototype.toArray):
        (WasmModuleBuilder.prototype.toBuffer):
        (WasmModuleBuilder.prototype.instantiate):

2019-07-09  Cathie Chen  <cathiechen@igalia.com>

        Support writing-mode and direction for scrollIntoViewOptions.
        https://bugs.webkit.org/show_bug.cgi?id=161611

        Reviewed by Frédéric Wang and Simon Fraser.

        * web-platform-tests/css/cssom-view/scrollIntoView-horizontal-tb-writing-mode-and-rtl-direction-expected.txt:
        * web-platform-tests/css/cssom-view/scrollIntoView-vertical-lr-writing-mode-and-rtl-direction-expected.txt:
        * web-platform-tests/css/cssom-view/scrollIntoView-vertical-lr-writing-mode-expected.txt:
        * web-platform-tests/css/cssom-view/scrollIntoView-vertical-rl-writing-mode-expected.txt:

2019-07-06  Cathie Chen  <cathiechen@igalia.com>

        Import css/cssom-view testcases from WPT.
        https://bugs.webkit.org/show_bug.cgi?id=199509

        Reviewed by Frédéric Wang.

        * resources/import-expectations.json:
        * web-platform-tests/css/cssom-view/CaretPosition-001.html:
        * web-platform-tests/css/cssom-view/DOMRectList.html:
        * web-platform-tests/css/cssom-view/GetBoundingRect.html:
        * web-platform-tests/css/cssom-view/HTMLBody-ScrollArea_quirksmode.html:
        * web-platform-tests/css/cssom-view/MediaQueryList-001.html:
        * web-platform-tests/css/cssom-view/MediaQueryList-with-empty-string.html:
        * web-platform-tests/css/cssom-view/Screen-pixelDepth-Screen-colorDepth001.html:
        * web-platform-tests/css/cssom-view/cssom-getBoundingClientRect-001.html:
        * web-platform-tests/css/cssom-view/cssom-getBoundingClientRect-002.html:
        * web-platform-tests/css/cssom-view/cssom-getBoxQuads-001.html:
        * web-platform-tests/css/cssom-view/cssom-getClientRects-002.html:
        * web-platform-tests/css/cssom-view/cssom-getClientRects.html:
        * web-platform-tests/css/cssom-view/cssom-view-img-attributes-001.html:
        * web-platform-tests/css/cssom-view/cssom-view-window-screen-interface.html:
        * web-platform-tests/css/cssom-view/dom-element-scroll.html:
        * web-platform-tests/css/cssom-view/elementFromPoint-001.html:
        * web-platform-tests/css/cssom-view/elementFromPoint-002.html:
        * web-platform-tests/css/cssom-view/elementFromPoint-003.html:
        * web-platform-tests/css/cssom-view/elementFromPoint-dynamic-anon-box.html:
        * web-platform-tests/css/cssom-view/elementFromPoint-mixed-font-sizes.html:
        * web-platform-tests/css/cssom-view/elementFromPoint-parameters.html:
        * web-platform-tests/css/cssom-view/elementFromPoint-subpixel-expected.txt: Added.
        * web-platform-tests/css/cssom-view/elementFromPoint-subpixel.html: Added.
        * web-platform-tests/css/cssom-view/elementFromPoint.html:
        * web-platform-tests/css/cssom-view/elementFromPosition.html:
        * web-platform-tests/css/cssom-view/elementScroll-002.html:
        * web-platform-tests/css/cssom-view/elementScroll.html:
        * web-platform-tests/css/cssom-view/elementsFromPoint-iframes.html:
        * web-platform-tests/css/cssom-view/elementsFromPoint-inline-htb-ltr-expected.txt: Added.
        * web-platform-tests/css/cssom-view/elementsFromPoint-inline-htb-ltr.html: Added.
        * web-platform-tests/css/cssom-view/elementsFromPoint-inline-htb-rtl-expected.txt: Added.
        * web-platform-tests/css/cssom-view/elementsFromPoint-inline-htb-rtl.html: Added.
        * web-platform-tests/css/cssom-view/elementsFromPoint-inline-vlr-ltr-expected.txt: Added.
        * web-platform-tests/css/cssom-view/elementsFromPoint-inline-vlr-ltr.html: Added.
        * web-platform-tests/css/cssom-view/elementsFromPoint-inline-vlr-rtl-expected.txt: Added.
        * web-platform-tests/css/cssom-view/elementsFromPoint-inline-vlr-rtl.html: Added.
        * web-platform-tests/css/cssom-view/elementsFromPoint-inline-vrl-ltr-expected.txt: Added.
        * web-platform-tests/css/cssom-view/elementsFromPoint-inline-vrl-ltr.html: Added.
        * web-platform-tests/css/cssom-view/elementsFromPoint-inline-vrl-rtl-expected.txt: Added.
        * web-platform-tests/css/cssom-view/elementsFromPoint-inline-vrl-rtl.html: Added.
        * web-platform-tests/css/cssom-view/elementsFromPoint-invalid-cases.html:
        * web-platform-tests/css/cssom-view/elementsFromPoint-shadowroot.html:
        * web-platform-tests/css/cssom-view/elementsFromPoint-simple.html:
        * web-platform-tests/css/cssom-view/elementsFromPoint-svg-text.html:
        * web-platform-tests/css/cssom-view/elementsFromPoint-svg.html:
        * web-platform-tests/css/cssom-view/elementsFromPoint-table.html:
        * web-platform-tests/css/cssom-view/elementsFromPoint.html:
        * web-platform-tests/css/cssom-view/getClientRects-br-htb-ltr-expected.txt: Added.
        * web-platform-tests/css/cssom-view/getClientRects-br-htb-ltr.html: Added.
        * web-platform-tests/css/cssom-view/getClientRects-br-htb-rtl-expected.txt: Added.
        * web-platform-tests/css/cssom-view/getClientRects-br-htb-rtl.html: Added.
        * web-platform-tests/css/cssom-view/getClientRects-br-vlr-ltr-expected.txt: Added.
        * web-platform-tests/css/cssom-view/getClientRects-br-vlr-ltr.html: Added.
        * web-platform-tests/css/cssom-view/getClientRects-br-vlr-rtl-expected.txt: Added.
        * web-platform-tests/css/cssom-view/getClientRects-br-vlr-rtl.html: Added.
        * web-platform-tests/css/cssom-view/getClientRects-br-vrl-ltr-expected.txt: Added.
        * web-platform-tests/css/cssom-view/getClientRects-br-vrl-ltr.html: Added.
        * web-platform-tests/css/cssom-view/getClientRects-br-vrl-rtl-expected.txt: Added.
        * web-platform-tests/css/cssom-view/getClientRects-br-vrl-rtl.html: Added.
        * web-platform-tests/css/cssom-view/getClientRects-inline-expected.html: Added.
        * web-platform-tests/css/cssom-view/getClientRects-inline.html: Added.
        * web-platform-tests/css/cssom-view/historical.html:
        * web-platform-tests/css/cssom-view/htmlelement-offset-width-001.html:
        * web-platform-tests/css/cssom-view/inheritance-expected.txt: Added.
        * web-platform-tests/css/cssom-view/inheritance.html: Added.
        * web-platform-tests/css/cssom-view/interfaces.html:
        * web-platform-tests/css/cssom-view/long_scroll_composited-expected.html: Added.
        * web-platform-tests/css/cssom-view/long_scroll_composited.html: Added.
        * web-platform-tests/css/cssom-view/matchMedia-display-none-iframe-expected.txt: Added.
        * web-platform-tests/css/cssom-view/matchMedia-display-none-iframe.html: Added.
        * web-platform-tests/css/cssom-view/matchMedia.xht:
        * web-platform-tests/css/cssom-view/matchMediaAddListener.html:
        * web-platform-tests/css/cssom-view/mouseEvent.html:
        * web-platform-tests/css/cssom-view/negativeMargins.html:
        * web-platform-tests/css/cssom-view/offsetParent_element_test.html:
        * web-platform-tests/css/cssom-view/offsetTopLeft-empty-inline-expected.txt: Added.
        * web-platform-tests/css/cssom-view/offsetTopLeft-empty-inline-offset-expected.txt: Added.
        * web-platform-tests/css/cssom-view/offsetTopLeft-empty-inline-offset.html: Added.
        * web-platform-tests/css/cssom-view/offsetTopLeft-empty-inline.html: Added.
        * web-platform-tests/css/cssom-view/offsetTopLeft-inline-expected.html: Added.
        * web-platform-tests/css/cssom-view/offsetTopLeft-inline.html: Added.
        * web-platform-tests/css/cssom-view/offsetTopLeft-leading-space-inline-expected.txt: Added.
        * web-platform-tests/css/cssom-view/offsetTopLeft-leading-space-inline.html: Added.
        * web-platform-tests/css/cssom-view/offsetTopLeft-trailing-space-inline-expected.txt: Added.
        * web-platform-tests/css/cssom-view/offsetTopLeft-trailing-space-inline.html: Added.
        * web-platform-tests/css/cssom-view/offsetTopLeftInScrollableParent.html:
        * web-platform-tests/css/cssom-view/outer-svg-expected.txt: Added.
        * web-platform-tests/css/cssom-view/outer-svg.html: Added.
        * web-platform-tests/css/cssom-view/resize-event-on-initial-layout-expected.txt: Added.
        * web-platform-tests/css/cssom-view/resize-event-on-initial-layout.html: Added.
        * web-platform-tests/css/cssom-view/screenLeftTop-expected.txt: Added.
        * web-platform-tests/css/cssom-view/screenLeftTop.html: Added.
        * web-platform-tests/css/cssom-view/scroll-behavior-default-css.html:
        * web-platform-tests/css/cssom-view/scroll-behavior-element.html:
        * web-platform-tests/css/cssom-view/scroll-behavior-main-frame-root.html:
        * web-platform-tests/css/cssom-view/scroll-behavior-main-frame-window.html:
        * web-platform-tests/css/cssom-view/scroll-behavior-scrollintoview-nested.html:
        * web-platform-tests/css/cssom-view/scroll-behavior-smooth-positions.html:
        * web-platform-tests/css/cssom-view/scroll-behavior-smooth.html:
        * web-platform-tests/css/cssom-view/scroll-behavior-subframe-root.html:
        * web-platform-tests/css/cssom-view/scroll-behavior-subframe-window.html:
        * web-platform-tests/css/cssom-view/scroll-no-layout-box.html:
        * web-platform-tests/css/cssom-view/scrollIntoView-horizontal-tb-writing-mode-and-rtl-direction-expected.txt: Added.
        * web-platform-tests/css/cssom-view/scrollIntoView-horizontal-tb-writing-mode-and-rtl-direction.html: Added.
        * web-platform-tests/css/cssom-view/scrollIntoView-horizontal-tb-writing-mode-expected.txt: Added.
        * web-platform-tests/css/cssom-view/scrollIntoView-horizontal-tb-writing-mode.html: Added.
        * web-platform-tests/css/cssom-view/scrollIntoView-scrollMargin.html:
        * web-platform-tests/css/cssom-view/scrollIntoView-scrollPadding.html:
        * web-platform-tests/css/cssom-view/scrollIntoView-shadow.html:
        * web-platform-tests/css/cssom-view/scrollIntoView-smooth.html:
        * web-platform-tests/css/cssom-view/scrollIntoView-svg-shape-expected.txt: Added.
        * web-platform-tests/css/cssom-view/scrollIntoView-svg-shape.html: Added.
        * web-platform-tests/css/cssom-view/scrollIntoView-vertical-lr-writing-mode-and-rtl-direction-expected.txt: Added.
        * web-platform-tests/css/cssom-view/scrollIntoView-vertical-lr-writing-mode-and-rtl-direction.html: Added.
        * web-platform-tests/css/cssom-view/scrollIntoView-vertical-lr-writing-mode-expected.txt: Added.
        * web-platform-tests/css/cssom-view/scrollIntoView-vertical-lr-writing-mode.html: Added.
        * web-platform-tests/css/cssom-view/scrollIntoView-vertical-rl-writing-mode-expected.txt:
        * web-platform-tests/css/cssom-view/scrollIntoView-vertical-rl-writing-mode.html:
        * web-platform-tests/css/cssom-view/scrollWidthHeight.xht:
        * web-platform-tests/css/cssom-view/scrollWidthHeightWhenNotScrollable.xht:
        * web-platform-tests/css/cssom-view/scrolling-no-browsing-context.html:
        * web-platform-tests/css/cssom-view/scrolling-quirks-vs-nonquirks.html:
        * web-platform-tests/css/cssom-view/scrollingElement.html:
        * web-platform-tests/css/cssom-view/scrollintoview.html:
        * web-platform-tests/css/cssom-view/table-client-props.html:
        * web-platform-tests/css/cssom-view/table-offset-props.html:
        * web-platform-tests/css/cssom-view/table-scroll-props.html:
        * web-platform-tests/css/cssom-view/ttwf-js-cssomview-getclientrects-length.html:
        * web-platform-tests/css/cssom-view/w3c-import.log:
        * web-platform-tests/css/cssom-view/window-screen-height-immutable.html:
        * web-platform-tests/css/cssom-view/window-screen-height.html:
        * web-platform-tests/css/cssom-view/window-screen-width-immutable.html:
        * web-platform-tests/css/cssom-view/window-screen-width.html:

2019-07-05  Antoine Quint  <graouts@apple.com>

        Remove Wincorrect WPT test pointerevents/pointerevent_mouse_pointercapture_inactivate_pointer.html
        https://bugs.webkit.org/show_bug.cgi?id=199512

        Unreviewed, just removing a test that was removed from the WPT repository (https://github.com/web-platform-tests/wpt/pull/17614).

        * web-platform-tests/pointerevents/pointerevent_mouse_pointercapture_inactivate_pointer-expected.txt: Removed.
        * web-platform-tests/pointerevents/pointerevent_mouse_pointercapture_inactivate_pointer.html: Removed.
        * web-platform-tests/pointerevents/resources/pointerevent_mouse_pointercapture_inactivate_pointer-iframe.html: Removed.

2019-07-05  Antoine Quint  <graouts@apple.com>

        [Pointer Events] Respect pointer capture when dispatching mouse boundary events and updating :hover
        https://bugs.webkit.org/show_bug.cgi?id=198999
        <rdar://problem/51979477>

        Reviewed by Dean Jackson.

        Mark the progressions in 3 WPT tests.

        * web-platform-tests/pointerevents/pointerevent_boundary_events_at_implicit_release_hoverable_pointers-expected.txt:
        * web-platform-tests/pointerevents/pointerevent_mouse_capture_change_hover-expected.txt:
        * web-platform-tests/pointerevents/pointerevent_setpointercapture_relatedtarget-expected.txt:

2019-07-01  Truitt Savell  <tsavell@apple.com>

        Unreviewed, rolling out r246844.

        Broke 12 tests in imported/w3c/web-platform-
        tests/pointerevents/

        Reverted changeset:

        "[Pointer Events] Respect pointer capture when dispatching
        mouse boundary events and updating :hover"
        https://bugs.webkit.org/show_bug.cgi?id=198999
        https://trac.webkit.org/changeset/246844

2019-06-26  Antoine Quint  <graouts@apple.com>

        [Pointer Events] Respect pointer capture when dispatching mouse boundary events and updating :hover
        https://bugs.webkit.org/show_bug.cgi?id=198999
        <rdar://problem/51979477>

        Reviewed by Dean Jackson.

        Mark the progressions in 3 WPT tests.

        * web-platform-tests/pointerevents/pointerevent_boundary_events_at_implicit_release_hoverable_pointers-expected.txt:
        * web-platform-tests/pointerevents/pointerevent_mouse_capture_change_hover-expected.txt:
        * web-platform-tests/pointerevents/pointerevent_setpointercapture_relatedtarget-expected.txt:

2019-06-24  Antoine Quint  <graouts@apple.com>

        [Pointer Events WPT] Unskip imported/w3c/web-platform-tests/pointerevents/pointerlock/pointerevent_coordinates_when_locked.html
        https://bugs.webkit.org/show_bug.cgi?id=197007

        Reviewed by Dean Jackson.

        Update the test from the Web Platform Tests repository following the fix for https://github.com/web-platform-tests/wpt/issues/16406.

        * web-platform-tests/pointerevents/pointerlock/pointerevent_coordinates_when_locked-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerlock/pointerevent_coordinates_when_locked.html:

2019-06-24  Antoine Quint  <graouts@apple.com>

        [Pointer Events WPT] Unskip imported/w3c/web-platform-tests/pointerevents/pointerevent_lostpointercapture_is_first.html
        https://bugs.webkit.org/show_bug.cgi?id=197005

        Reviewed by Dean Jackson.

        * web-platform-tests/pointerevents/pointerevent_lostpointercapture_is_first-expected.txt: Added.
        * web-platform-tests/resources/testdriver-vendor.js:
        (dispatchMouseActions): We need to disable dragMode for the eventSender or else the "pointermove" events in the test will
        not be dispatched as there is no mouseUp() call in the test's event sequence.

2019-06-24  Antoine Quint  <graouts@apple.com>

        [Pointer Events] Respect pointer capture when dispatching mouse boundary events and updating :hover
        https://bugs.webkit.org/show_bug.cgi?id=198999
        <rdar://problem/51979477>

        Unreviewed.

        Rolling back all changes made for this bug (r246728 + r246716 + r246674) as it regressed one test
        (imported/w3c/web-platform-tests/pointerevents/pointerevent_mouse_pointercapture_in_frame.html).

        * web-platform-tests/pointerevents/pointerevent_boundary_events_at_implicit_release_hoverable_pointers-expected.txt:
        * web-platform-tests/pointerevents/pointerevent_click_during_capture-expected.txt:
        * web-platform-tests/pointerevents/pointerevent_mouse_capture_change_hover-expected.txt:
        * web-platform-tests/pointerevents/pointerevent_setpointercapture_relatedtarget-expected.txt:

2019-06-23  Antoine Quint  <graouts@apple.com>

        [Pointer Events WPT] Unflake imported/w3c/web-platform-tests/pointerevents/pointerevent_mouse_pointercapture_in_frame.html
        https://bugs.webkit.org/show_bug.cgi?id=197058

        Unreviewed test gardening.

        * web-platform-tests/pointerevents/pointerevent_mouse_pointercapture_in_frame-expected.txt:

2019-06-20  Antoine Quint  <graouts@apple.com>

        [Pointer Events] Respect pointer capture when dispatching mouse boundary events and updating :hover
        https://bugs.webkit.org/show_bug.cgi?id=198999

        Reviewed by Dean Jackson.

        Record progressions in two WPT tests and mark updated failures in two other WPT tests.

        * web-platform-tests/pointerevents/pointerevent_boundary_events_at_implicit_release_hoverable_pointers-expected.txt:
        * web-platform-tests/pointerevents/pointerevent_click_during_capture-expected.txt:
        * web-platform-tests/pointerevents/pointerevent_mouse_capture_change_hover-expected.txt:
        * web-platform-tests/pointerevents/pointerevent_setpointercapture_relatedtarget-expected.txt:

2019-06-19  Rob Buis  <rbuis@igalia.com>

        Make preload/link-header-preload-imagesrcset.html work on DPR != 1
        https://bugs.webkit.org/show_bug.cgi?id=198533

        Reviewed by Youenn Fablet.

        Make the test take DPR into account.

        * web-platform-tests/preload/dynamic-adding-preload-imagesrcset.html:
        * web-platform-tests/preload/link-header-preload-imagesrcset.html:

2019-06-14  Ali Juma  <ajuma@chromium.org>

        IntersectionObserver rootMargin detection fails when `root` is an element
        https://bugs.webkit.org/show_bug.cgi?id=198784

        Reviewed by Simon Fraser.

        Import https://github.com/web-platform-tests/wpt/pull/17323.

        * web-platform-tests/intersection-observer/root-margin-root-element-expected.txt: Added.
        * web-platform-tests/intersection-observer/root-margin-root-element.html: Added.

2019-06-13  Youenn Fablet  <youenn@apple.com>

        Import WPT websockets tests
        https://bugs.webkit.org/show_bug.cgi?id=198774

        Reviewed by Geoffrey Garen.

        * resources/import-expectations.json:
        * resources/resource-files.json:
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/abort.sub.window-expected.txt:
        Rebasing since we now have some websockets specific handlers.
        * web-platform-tests/websockets: Added.

2019-06-13  Youenn Fablet  <youenn@apple.com>

        Update service worker test and expectation after revision 246363
        https://bugs.webkit.org/show_bug.cgi?id=198808

        Reviewed by Geoffrey Garen.

        * web-platform-tests/service-workers/service-worker/fetch-event-async-respond-with.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/fetch-event-async-respond-with.https.html:
        Make sure the fetch load finishes so that removing the frame does not cancel the fetch.

2019-06-12  Youenn Fablet  <youenn@apple.com>

        Update WPT service workers test up to 0df7c68
        https://bugs.webkit.org/show_bug.cgi?id=198720

        Reviewed by Eric Carlson.

        * web-platform-tests/service-workers: Resynced.

2019-06-11  Devin Rousso  <drousso@apple.com>

        Sort the computed styles list
        https://bugs.webkit.org/show_bug.cgi?id=198743

        Reviewed by Simon Fraser

        * web-platform-tests/infrastructure/assumptions/html-elements-expected.txt:

2019-06-11  Daniel Bates  <dabates@apple.com>

        Import Content Security Policy Web Platform Tests
        https://bugs.webkit.org/show_bug.cgi?id=198676
        <rdar://problem/51533785>

        Reviewed by Youenn Fablet.

        Import tests as of 3840f46213d9a991acc9288e3863530f7502c05e (origin/master).

        * resources/import-expectations.json:
        * resources/resource-files.json:
        * web-platform-tests/content-security-policy/META.yml: Added.
        * web-platform-tests/content-security-policy/README.css: Added.
        (.code):
        (.codeTitle):
        (.highlight1):
        (.highlight2):
        (body):
        * web-platform-tests/content-security-policy/README.html: Added.
        * web-platform-tests/content-security-policy/base-uri/base-uri-allow.sub-expected.txt: Added.
        * web-platform-tests/content-security-policy/base-uri/base-uri-allow.sub.html: Added.
        * web-platform-tests/content-security-policy/base-uri/base-uri-deny.sub-expected.txt: Added.
        * web-platform-tests/content-security-policy/base-uri/base-uri-deny.sub.html: Added.
        * web-platform-tests/content-security-policy/base-uri/base-uri_iframe_sandbox.sub-expected.txt: Added.
        * web-platform-tests/content-security-policy/base-uri/base-uri_iframe_sandbox.sub.html: Added.
        * web-platform-tests/content-security-policy/base-uri/report-uri-does-not-respect-base-uri.sub-expected.txt: Added.
        * web-platform-tests/content-security-policy/base-uri/report-uri-does-not-respect-base-uri.sub.html: Added.
        * web-platform-tests/content-security-policy/base-uri/report-uri-does-not-respect-base-uri.sub.html.sub.headers: Added.
        * web-platform-tests/content-security-policy/base-uri/w3c-import.log: Added.
        * web-platform-tests/content-security-policy/blob/blob-urls-do-not-match-self.sub-expected.txt: Added.
        * web-platform-tests/content-security-policy/blob/blob-urls-do-not-match-self.sub.html: Added.
        * web-platform-tests/content-security-policy/blob/blob-urls-match-blob.sub-expected.txt: Added.
        * web-platform-tests/content-security-policy/blob/blob-urls-match-blob.sub.html: Added.
        * web-platform-tests/content-security-policy/blob/self-doesnt-match-blob.sub-expected.txt: Added.
        * web-platform-tests/content-security-policy/blob/self-doesnt-match-blob.sub.html: Added.
        * web-platform-tests/content-security-policy/blob/star-doesnt-match-blob.sub-expected.txt: Added.
        * web-platform-tests/content-security-policy/blob/star-doesnt-match-blob.sub.html: Added.
        * web-platform-tests/content-security-policy/blob/w3c-import.log: Added.
        * web-platform-tests/content-security-policy/child-src/child-src-about-blank-allowed-by-default.sub-expected.txt: Added.
        * web-platform-tests/content-security-policy/child-src/child-src-about-blank-allowed-by-default.sub.html: Added.
        * web-platform-tests/content-security-policy/child-src/child-src-about-blank-allowed-by-scheme.sub-expected.txt: Added.
        * web-platform-tests/content-security-policy/child-src/child-src-about-blank-allowed-by-scheme.sub.html: Added.
        * web-platform-tests/content-security-policy/child-src/child-src-allowed.sub-expected.txt: Added.
        * web-platform-tests/content-security-policy/child-src/child-src-allowed.sub.html: Added.
        [...]
        * web-platform-tests/content-security-policy/worker-src/service-worker-src-script-fallback.https.sub.html: Added.
        * web-platform-tests/content-security-policy/worker-src/service-worker-src-self-fallback.https.sub-expected.txt: Added.
        * web-platform-tests/content-security-policy/worker-src/service-worker-src-self-fallback.https.sub.html: Added.
        * web-platform-tests/content-security-policy/worker-src/shared-child.sub.html: Added.
        * web-platform-tests/content-security-policy/worker-src/shared-fallback.sub.html: Added.
        * web-platform-tests/content-security-policy/worker-src/shared-list.sub.html: Added.
        * web-platform-tests/content-security-policy/worker-src/shared-none.sub.html: Added.
        * web-platform-tests/content-security-policy/worker-src/shared-self.sub.html: Added.
        * web-platform-tests/content-security-policy/worker-src/shared-worker-src-child-fallback-blocked.sub.html: Added.
        * web-platform-tests/content-security-policy/worker-src/shared-worker-src-child-fallback.sub.html: Added.
        * web-platform-tests/content-security-policy/worker-src/shared-worker-src-default-fallback.sub.html: Added.
        * web-platform-tests/content-security-policy/worker-src/shared-worker-src-script-fallback.sub.html: Added.
        * web-platform-tests/content-security-policy/worker-src/shared-worker-src-self-fallback.sub.html: Added.
        * web-platform-tests/content-security-policy/worker-src/w3c-import.log: Added.

2019-06-09  Rob Buis  <rbuis@igalia.com>

        Add wildcard to Access-Control-Allow-Methods and Access-Control-Allow-Headers
        https://bugs.webkit.org/show_bug.cgi?id=165508

        Reviewed by Frédéric Wang.

        * web-platform-tests/fetch/api/cors/cors-preflight-star.any-expected.txt:
        * web-platform-tests/fetch/api/cors/cors-preflight-star.any.worker-expected.txt:

2019-06-07  Joonghun Park  <jh718.park@samsung.com>

        Implement tab-size with units
        https://bugs.webkit.org/show_bug.cgi?id=179022

        Reviewed by Simon Fraser.

        This change is ported from Blink.
        The committed revision is https://src.chromium.org/viewvc/blink?revision=189430&view=revision.

        Additionally, this patch lets css "number" value be allowed as tab-size's property value,
        not css "integer" value,
        according to https://drafts.csswg.org/css-text-3/#tab-size-property.

        * web-platform-tests/css/css-text/inheritance-expected.txt:
        * web-platform-tests/css/css-text/parsing/tab-size-valid-expected.txt:
        * web-platform-tests/css/css-values/calc-numbers-expected.txt: Added.
        * web-platform-tests/css/css-values/calc-numbers.html: Added.

2019-06-05  Antoine Quint  <graouts@apple.com>

        [Pointer Events] Fire pointerout and pointerleave events after firing pointercancel
        https://bugs.webkit.org/show_bug.cgi?id=198560

        Reviewed by Dean Jackson.

        Mark WPT progressions. Notably, the iOS-specific tests now have 100% PASS rate.

        * web-platform-tests/pointerevents/pointerevent_mouse_capture_change_hover-expected.txt:
        * web-platform-tests/pointerevents/pointerevent_pointercancel_touch-expected.txt:
        * web-platform-tests/pointerevents/pointerevent_pointerleave_after_pointercancel_touch-expected.txt:
        * web-platform-tests/pointerevents/pointerevent_pointerout_after_pointercancel_touch-expected.txt:

2019-06-05  Javier Fernandez  <jfernandez@igalia.com>

        Update the CSS Text WPT test suite
        https://bugs.webkit.org/show_bug.cgi?id=197929

        Reviewed by Myles C. Maxfield.

        Import the last changes in the CSS Text suite.

        * web-platform-tests/css/css-text/line-break/line-break-anywhere-001.html:
        * web-platform-tests/css/css-text/line-break/line-break-anywhere-002.html:
        * web-platform-tests/css/css-text/line-break/line-break-anywhere-013-expected.html: Added.
        * web-platform-tests/css/css-text/line-break/line-break-anywhere-013.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/word-break/word-break-break-all-024.html.
        * web-platform-tests/css/css-text/line-break/line-break-anywhere-014-expected.html: Added.
        * web-platform-tests/css/css-text/line-break/line-break-anywhere-014.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/word-break/word-break-break-all-024.html.
        * web-platform-tests/css/css-text/line-break/line-break-anywhere-015-expected.html: Added.
        * web-platform-tests/css/css-text/line-break/line-break-anywhere-015.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/word-break/word-break-break-all-024.html.
        * web-platform-tests/css/css-text/line-break/line-break-anywhere-016-expected.html: Added.
        * web-platform-tests/css/css-text/line-break/line-break-anywhere-016.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/word-break/word-break-break-all-024.html.
        * web-platform-tests/css/css-text/line-break/w3c-import.log:
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-break-word-008.html:
        * web-platform-tests/css/css-text/white-space/break-spaces-009.html:
        * web-platform-tests/css/css-text/white-space/break-spaces-010-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-010.html: Added.
        * web-platform-tests/css/css-text/white-space/w3c-import.log:
        * web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-004-expected.html:
        * web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-004.html:
        * web-platform-tests/css/css-text/white-space/white-space-pre-wrap-trailing-spaces-002-expected.html:
        * web-platform-tests/css/css-text/white-space/white-space-pre-wrap-trailing-spaces-002.html:
        * web-platform-tests/css/css-text/white-space/white-space-pre-wrap-trailing-spaces-003-expected.html:
        * web-platform-tests/css/css-text/white-space/white-space-pre-wrap-trailing-spaces-003.html:
        * web-platform-tests/css/css-text/word-break/w3c-import.log:
        * web-platform-tests/css/css-text/word-break/word-break-break-all-017.html:
        * web-platform-tests/css/css-text/word-break/word-break-break-all-023.html:
        * web-platform-tests/css/css-text/word-break/word-break-break-all-024.html:
        * web-platform-tests/css/css-text/word-break/word-break-break-all-025-expected.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-025.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/word-break/word-break-break-all-024.html.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-026-expected.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-026.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/word-break/word-break-break-all-024.html.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-027-expected.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-027.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/word-break/word-break-break-all-024.html.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-028-expected.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-028.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/word-break/word-break-break-all-024.html.

2019-06-01  Antoine Quint  <graouts@apple.com>

        [Pointer Events] Add support for chorded button interactions
        https://bugs.webkit.org/show_bug.cgi?id=198462

        Reviewed by Dean Jackson.

        Mark the progression for web-platform-tests/pointerevents/pointerevent_mouse_capture_change_hover.html which
        proves the correct implementation of the chorded button interactions section of the Pointer Events spec. To do that,
        we also had to make use of the "button" parameter used in WPT tests action sequences, which allows the test to indicate
        which mouse button is pressed. Finally, there is now a change in the pointerevent_pointermove_on_chorded_mouse_button.html
        results, another source change is required to get this test to fully pass.

        * web-platform-tests/pointerevents/pointerevent_mouse_capture_change_hover-expected.txt:
        * web-platform-tests/pointerevents/pointerevent_pointermove_on_chorded_mouse_button-expected.txt:
        * web-platform-tests/resources/testdriver-vendor.js:
        (dispatchMouseActions):

2019-06-04  Antoine Quint  <graouts@apple.com>

        [Pointer Events] Only allow pointer capture if the pointer is in the active buttons state
        https://bugs.webkit.org/show_bug.cgi?id=198479

        Reviewed by Dean Jackson.

        Mark WPT progression.

        * web-platform-tests/pointerevents/pointerevent_setpointercapture_inactive_button_mouse-expected.txt:

2019-06-03  Rob Buis  <rbuis@igalia.com>

        Implement imagesrcset and imagesizes attributes on link rel=preload
        https://bugs.webkit.org/show_bug.cgi?id=192950

        Reviewed by Youenn Fablet.

        Import relevant tests for this feature.

        * web-platform-tests/preload/dynamic-adding-preload-imagesrcset-expected.txt: Added.
        * web-platform-tests/preload/dynamic-adding-preload-imagesrcset.html: Added.
        * web-platform-tests/preload/link-header-preload-expected.txt: Added.
        * web-platform-tests/preload/link-header-preload-imagesrcset-expected.txt: Added.
        * web-platform-tests/preload/link-header-preload-imagesrcset.html: Added.
        * web-platform-tests/preload/link-header-preload-imagesrcset.html.headers: Added.
        * web-platform-tests/preload/link-header-preload-nonce-expected.txt: Added.
        * web-platform-tests/preload/link-header-preload-nonce.html: Added.
        * web-platform-tests/preload/link-header-preload-nonce.html.headers: Added.
        * web-platform-tests/preload/link-header-preload.html: Added.
        * web-platform-tests/preload/link-header-preload.html.headers: Added.
        * web-platform-tests/preload/onload-event-expected.txt: Added.
        * web-platform-tests/preload/onload-event.html: Added.
        * web-platform-tests/preload/preload-csp.sub-expected.txt:
        * web-platform-tests/preload/preload-csp.sub.html:
        * web-platform-tests/preload/preload-default-csp.sub-expected.txt:
        * web-platform-tests/preload/preload-default-csp.sub.html:
        * web-platform-tests/preload/preload-with-type-expected.txt: Added.
        * web-platform-tests/preload/preload-with-type.html: Added.
        * web-platform-tests/preload/resources/A4.ogv: Added.
        * web-platform-tests/preload/resources/A4.ogv.sub.headers: Added.
        * web-platform-tests/preload/resources/cross-origin-module.py: Added.
        (main):
        * web-platform-tests/preload/resources/dummy-preloads-subresource.css: Added.
        * web-platform-tests/preload/resources/dummy-preloads-subresource.css.sub.headers: Added.
        * web-platform-tests/preload/resources/empty.html: Added.
        * web-platform-tests/preload/resources/empty.html.sub.headers: Added.
        * web-platform-tests/preload/resources/foo.vtt.sub.headers: Added.
        * web-platform-tests/preload/resources/module1.js: Added.
        * web-platform-tests/preload/resources/module2.js: Added.
        * web-platform-tests/preload/resources/preload_helper.js:
        (verifyNumberOfResourceTimingEntries):
        (numberOfResourceTimingEntries):

2019-05-31  Joonghun Park  <jh718.park@samsung.com>

        Always min-width should win over max-width.
        https://bugs.webkit.org/show_bug.cgi?id=198032

        Reviewed by Darin Adler.

        In the spec, https://www.w3.org/TR/CSS21/visudet.html#min-max-widths,
        the following algorithm describes how the two properties influence
        the used value of the 'width' property.

        1. The tentative used width is calculated (without 'min-width' and 'max-width')
        following the rules under "Calculating widths and margins" above.
        2. If the tentative used width is greater than 'max-width',
        the rules above are applied again, but this time using the computed value of 'max-width'
        as the computed value for 'width'.
        3. If the resulting width is smaller than 'min-width', the rules above are applied again,
        but this time using the value of 'min-width' as the computed value for 'width'.

        * web-platform-tests/css/css-sizing/min-width-max-width-precedence-expected.txt: Added.
        * web-platform-tests/css/css-sizing/min-width-max-width-precedence.html: Added.

2019-05-29  Said Abou-Hallawa  <sabouhallawa@apple.com>

        REGRESSION (r244182) [Mac WK2] Layout Test imported/w3c/web-platform-tests/visual-viewport/viewport-resize-event-on-load-overflowing-page.html is a flaky failure
        https://bugs.webkit.org/show_bug.cgi?id=197286

        Reviewed by Simon Fraser.

        This is a time sensitive test. It expects to receive a resize event within
        two frames after the page load. Scheduling the page update through the 
        RenderingUpdate made updating the page for the first time happens not 
        immediately after the page load but after an additional frame.

        So we need to wait for this additional frame before checking whether the
        'resize' event was fired.

        * web-platform-tests/visual-viewport/viewport-resize-event-on-load-overflowing-page.html:

2019-05-29  Antoine Quint  <graouts@apple.com>

        [Pointer Events] toElement and fromElement should be null
        https://bugs.webkit.org/show_bug.cgi?id=198338

        Reviewed by Dean Jackson.

        Mark WPT progressions now that we return the correct values for toElement and fromElement.

        * web-platform-tests/pointerevents/pointerevent_pointerenter_does_not_bubble-expected.txt:
        * web-platform-tests/pointerevents/pointerevent_pointerleave_does_not_bubble-expected.txt:

2019-05-28  Shawn Roberts  <sroberts@apple.com>

        Unreviewed, rolling out r245475.

        Newly imported test is flaky. Features need flags.

        Reverted changeset:

        "Implement imagesrcset and imagesizes attributes on link
        rel=preload"
        https://bugs.webkit.org/show_bug.cgi?id=192950
        https://trac.webkit.org/changeset/245475

2019-05-28  Antoine Quint  <graouts@apple.com>

        [Pointer Events WPT] Unflake imported/w3c/web-platform-tests/pointerevents/pointerevent_suppress_compat_events_on_drag_mouse.html
        https://bugs.webkit.org/show_bug.cgi?id=197008

        Reviewed by Jon Lee.

        We raised an issue on the WPT test which was testing the event timestamp in an invalid manner (see https://github.com/w3c/pointerevents/issues/284
        and https://github.com/web-platform-tests/wpt/issues/170160). As a result this test now passes reliably, so we can update the expected out and
        the TestExpectations.

        * web-platform-tests/pointerevents/pointerevent_suppress_compat_events_on_drag_mouse-expected.txt:
        * web-platform-tests/pointerevents/pointerevent_suppress_compat_events_on_drag_mouse.html:

2019-05-27  Oriol Brufau  <obrufau@igalia.com>

        [css-grid] Preserve repeat() notation when serializing declared values
        https://bugs.webkit.org/show_bug.cgi?id=197840

        Reviewed by Manuel Rego Casasnovas.

        Import WPT test.

        * web-platform-tests/css/css-grid/grid-definition/grid-support-repeat-002-expected.txt: Added.
        * web-platform-tests/css/css-grid/grid-definition/grid-support-repeat-002.html: Added.
        * web-platform-tests/css/css-grid/grid-definition/w3c-import.log:

2019-05-24  Joonghun Park  <jh718.park@samsung.com>

        Make computed width of non-replaced inline return computed style.
        https://bugs.webkit.org/show_bug.cgi?id=197814

        Reviewed by Antti Koivisto.

        Currently, Computed width of non-replaced inline incorrectly returns "auto"
        instead of the computed value.
        This patch changes the behavior according to
        https://drafts.csswg.org/cssom/#resolved-value as below.

        'If the property applies to the element or pseudo-element
        and the resolved value of the display property is not none or contents,
        then the resolved value is the used value.
        Otherwise the resolved value is the computed value.'

        * web-platform-tests/html/semantics/embedded-content/the-object-element/object-attributes-expected.txt:

2019-05-22  Ali Juma  <ajuma@chromium.org>

        Intersection Observer: bounding client rect is wrong for an inline element
        https://bugs.webkit.org/show_bug.cgi?id=198009

        Reviewed by Simon Fraser.

        Import test added upstream in
        https://github.com/web-platform-tests/wpt/commit/cf40205c68f739ae23429439de13d125e3df9f7a

        * web-platform-tests/intersection-observer/inline-with-block-child-client-rect-expected.txt: Added.
        * web-platform-tests/intersection-observer/inline-with-block-child-client-rect.html: Added.

2019-05-22  Antoine Quint  <graouts@apple.com>

        [iOS] Compatibility mouse events aren't prevented by calling preventDefault() on pointerdown
        https://bugs.webkit.org/show_bug.cgi?id=198124
        <rdar://problem/50410863>

        Reviewed by Tim Horton.

        We add basic support to run a test that wasn't specifically designed for a touch-based interaction such that the test
        at imported/w3c/web-platform-tests/pointerevents/pointerevent_suppress_compat_events_on_click.html may run on iOS. The
        trick here is to add a pause after a touch ends to avoid the likelihood or two tap gestures triggering a double tap.

        * web-platform-tests/resources/testdriver-vendor.js:

2019-05-22  Youenn Fablet  <youenn@apple.com>

        Implement Feature policy self/none/* parsing
        https://bugs.webkit.org/show_bug.cgi?id=198078

        Reviewed by Eric Carlson.

        * web-platform-tests/mediacapture-streams/MediaStream-feature-policy-none.https-expected.txt: Added.
        * web-platform-tests/mediacapture-streams/MediaStream-feature-policy-none.https.html: Added.

2019-05-21  Antoine Quint  <graouts@apple.com>

        [macOS] Compatibility mouse events aren't prevented by calling preventDefault() on pointerdown
        https://bugs.webkit.org/show_bug.cgi?id=198072
        <rdar://problem/50983361>

        Reviewed by Dean Jackson.

        Mark the WPT test progression after fixing this bug.

        * web-platform-tests/pointerevents/pointerevent_suppress_compat_events_on_click-expected.txt:

2019-05-21  Antoine Quint  <graouts@apple.com>

        [Pointer Events] Do not dispatch pointermove events when the pointer is not down in WPT testdriver
        https://bugs.webkit.org/show_bug.cgi?id=198071

        Reviewed by Dean Jackson.

        WPT actions sequences may move the pointer prior to pressing it down. In this case, we need to make sure we don't
        end up queuing a "moved" touch and instead save the pointer position for when the pointer is pressed. It's important
        to also generate a different touch id for each time we pause or end a touch sequence. This allows a few more WPT
        touch tests to pass without any source change in our Pointer Events implementation.

        * web-platform-tests/pointerevents/pointerevent_pointerleave_after_pointercancel_touch-expected.txt:
        * web-platform-tests/pointerevents/pointerevent_pointerout_after_pointercancel_touch-expected.txt:
        * web-platform-tests/pointerevents/pointerevent_touch-action-auto-css_touch-expected.txt:
        * web-platform-tests/pointerevents/pointerevent_touch-action-inherit_highest-parent-none_touch-expected.txt:
        * web-platform-tests/pointerevents/pointerevent_touch-action-pan-x-pan-y_touch-expected.txt:
        * web-platform-tests/resources/testdriver-vendor.js:

2019-05-17  Rob Buis  <rbuis@igalia.com>

        Implement imagesrcset and imagesizes attributes on link rel=preload
        https://bugs.webkit.org/show_bug.cgi?id=192950

        Reviewed by Youenn Fablet.

        Import relevant tests for this feature.

        * web-platform-tests/preload/dynamic-adding-preload-imagesrcset-expected.txt: Added.
        * web-platform-tests/preload/dynamic-adding-preload-imagesrcset.html: Added.
        * web-platform-tests/preload/link-header-preload-delay-onload-expected.txt: Added.
        * web-platform-tests/preload/link-header-preload-delay-onload.html: Added.
        * web-platform-tests/preload/link-header-preload-delay-onload.html.headers: Added.
        * web-platform-tests/preload/link-header-preload-expected.txt: Added.
        * web-platform-tests/preload/link-header-preload-imagesrcset-expected.txt: Added.
        * web-platform-tests/preload/link-header-preload-imagesrcset.html: Added.
        * web-platform-tests/preload/link-header-preload-imagesrcset.html.headers: Added.
        * web-platform-tests/preload/link-header-preload-nonce-expected.txt: Added.
        * web-platform-tests/preload/link-header-preload-nonce.html: Added.
        * web-platform-tests/preload/link-header-preload-nonce.html.headers: Added.
        * web-platform-tests/preload/link-header-preload.html: Added.
        * web-platform-tests/preload/link-header-preload.html.headers: Added.
        * web-platform-tests/preload/onload-event-expected.txt: Added.
        * web-platform-tests/preload/onload-event.html: Added.
        * web-platform-tests/preload/preload-csp.sub-expected.txt:
        * web-platform-tests/preload/preload-csp.sub.html:
        * web-platform-tests/preload/preload-default-csp.sub-expected.txt:
        * web-platform-tests/preload/preload-default-csp.sub.html:
        * web-platform-tests/preload/preload-with-type-expected.txt: Added.
        * web-platform-tests/preload/preload-with-type.html: Added.
        * web-platform-tests/preload/resources/A4.ogv: Added.
        * web-platform-tests/preload/resources/A4.ogv.sub.headers: Added.
        * web-platform-tests/preload/resources/cross-origin-module.py: Added.
        (main):
        * web-platform-tests/preload/resources/dummy-preloads-subresource.css: Added.
        * web-platform-tests/preload/resources/dummy-preloads-subresource.css.sub.headers: Added.
        * web-platform-tests/preload/resources/empty.html: Added.
        * web-platform-tests/preload/resources/empty.html.sub.headers: Added.
        * web-platform-tests/preload/resources/foo.vtt.sub.headers: Added.
        * web-platform-tests/preload/resources/module1.js: Added.
        * web-platform-tests/preload/resources/module2.js: Added.
        * web-platform-tests/preload/resources/preload_helper.js:
        (verifyNumberOfResourceTimingEntries):
        (numberOfResourceTimingEntries):
        (verifyLoadedAndNoDoubleDownload):
        * web-platform-tests/preload/single-download-preload-expected.txt:
        * web-platform-tests/preload/single-download-preload.html:

2019-05-14  Oriol Brufau  <obrufau@igalia.com>

        [css-grid] Update grid when changing auto repeat type
        https://bugs.webkit.org/show_bug.cgi?id=197849

        Reviewed by Javier Fernandez.

        Import WPT test.

        * web-platform-tests/css/css-grid/grid-definition/grid-change-auto-repeat-tracks-expected.txt: Added.
        * web-platform-tests/css/css-grid/grid-definition/grid-change-auto-repeat-tracks.html: Added.
        * web-platform-tests/css/css-grid/grid-definition/w3c-import.log:

2019-05-14  Manuel Rego Casasnovas  <rego@igalia.com>

        [css-grid] Use max size to compute auto repeat tracks
        https://bugs.webkit.org/show_bug.cgi?id=197854

        Reviewed by Javier Fernandez.

        Imported WPT tests for this bug.

        * web-platform-tests/css/css-grid/grid-definition/grid-auto-repeat-max-size-001-expected.txt: Added.
        * web-platform-tests/css/css-grid/grid-definition/grid-auto-repeat-max-size-001.html: Added.
        * web-platform-tests/css/css-grid/grid-definition/grid-auto-repeat-max-size-002-expected.txt: Added.
        * web-platform-tests/css/css-grid/grid-definition/grid-auto-repeat-max-size-002.html: Added.
        * web-platform-tests/css/css-grid/grid-definition/grid-auto-repeat-min-max-size-001-expected.txt: Added.
        * web-platform-tests/css/css-grid/grid-definition/grid-auto-repeat-min-max-size-001.html: Added.
        * web-platform-tests/css/css-grid/grid-definition/grid-auto-repeat-min-size-001-expected.txt: Added.
        * web-platform-tests/css/css-grid/grid-definition/grid-auto-repeat-min-size-001.html: Added.
        * web-platform-tests/css/css-grid/grid-definition/grid-auto-repeat-min-size-002-expected.txt: Added.
        * web-platform-tests/css/css-grid/grid-definition/grid-auto-repeat-min-size-002.html: Added.
        * web-platform-tests/css/css-grid/grid-definition/w3c-import.log:

2019-05-14  Joonghun Park  <jh718.park@samsung.com>

        Implement page-break-* and -webkit-column-break-* as legacy-shorthands.
        https://bugs.webkit.org/show_bug.cgi?id=197656

        Reviewed by Darin Adler.

        According to https://drafts.csswg.org/css-cascade-4/#legacy-shorthand,
        implement page-break-* and -webkit-column-break-* as legacy-shorthands for break-*.

        This change also serialize page-break-* properties
        to CSSStyleDeclaration,
        per https://drafts.csswg.org/css-break/#page-break-properties.

        * web-platform-tests/css/cssom/serialize-values-expected.txt:

2019-05-14  Javier Fernandez  <jfernandez@igalia.com>

        Implement "line-break: anywhere"
        https://bugs.webkit.org/show_bug.cgi?id=181169
        <rdar://problem/48507088>

        Reviewed by Myles C. Maxfield.

        New tests to verify the new line-break: anywhere feature and how
        it behaves different to 'word-break: break-all'.

        * web-platform-tests/css/css-text/line-break/line-break-anywhere-001.html:
        * web-platform-tests/css/css-text/line-break/line-break-anywhere-002.html:
        * web-platform-tests/css/css-text/line-break/line-break-anywhere-003-expected.html: Added.
        * web-platform-tests/css/css-text/line-break/line-break-anywhere-003.html: Added.
        * web-platform-tests/css/css-text/line-break/line-break-anywhere-004-expected.html: Added.
        * web-platform-tests/css/css-text/line-break/line-break-anywhere-004.html: Added.
        * web-platform-tests/css/css-text/line-break/line-break-anywhere-005-expected.html: Added.
        * web-platform-tests/css/css-text/line-break/line-break-anywhere-005.html: Added.
        * web-platform-tests/css/css-text/line-break/line-break-anywhere-006-expected.html: Added.
        * web-platform-tests/css/css-text/line-break/line-break-anywhere-006.html: Added.
        * web-platform-tests/css/css-text/line-break/line-break-anywhere-007-expected.html: Added.
        * web-platform-tests/css/css-text/line-break/line-break-anywhere-007.html: Added.
        * web-platform-tests/css/css-text/line-break/line-break-anywhere-008-expected.html: Added.
        * web-platform-tests/css/css-text/line-break/line-break-anywhere-008.html: Added.
        * web-platform-tests/css/css-text/line-break/line-break-anywhere-009-expected.html: Added.
        * web-platform-tests/css/css-text/line-break/line-break-anywhere-009.html: Added.
        * web-platform-tests/css/css-text/line-break/line-break-anywhere-010-expected.html: Added.
        * web-platform-tests/css/css-text/line-break/line-break-anywhere-010.html: Added.
        * web-platform-tests/css/css-text/line-break/line-break-anywhere-011-expected.html: Added.
        * web-platform-tests/css/css-text/line-break/line-break-anywhere-011.html: Added.
        * web-platform-tests/css/css-text/line-break/line-break-anywhere-012-expected.html: Added.
        * web-platform-tests/css/css-text/line-break/line-break-anywhere-012.html: Added.
        * web-platform-tests/css/css-text/parsing/line-break-valid-expected.txt:
        * web-platform-tests/css/css-text/word-break/word-break-break-all-016-expected.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-016.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-017-expected.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-017.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-018-expected.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-018.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-019-expected.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-019.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-021-expected.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-021.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-022-expected.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-022.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-023-expected.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-023.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-024-expected.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-024.html: Added.

2019-05-07  Antoine Quint  <graouts@apple.com>

        [Pointer Events] isPrimary property of pointercancel events should match previous events for that pointer
        https://bugs.webkit.org/show_bug.cgi?id=197665

        Reviewed by Dean Jackson.

        Record WPT progressions.

        * web-platform-tests/pointerevents/pointerevent_pointercancel_touch-expected.txt:

2019-05-07  Youenn Fablet  <youenn@apple.com>

        Import WPT referrer-policy tests
        https://bugs.webkit.org/show_bug.cgi?id=197321

        Reviewed by Alex Christensen.

        * resources/import-expectations.json:
        * web-platform-tests/common/: Refreshed.
        * web-platform-tests/custom-elements/custom-element-registry/per-global-expected.txt:
        * web-platform-tests/html/browsers/the-window-object/named-access-on-the-window-object/navigated-named-objects.window-expected.txt:
        * web-platform-tests/referrer-policy/: Added.

2019-05-03  Youenn Fablet  <youenn@apple.com>

        LayoutTest imported/w3c/web-platform-tests/xhr/event-upload-progress-crossorigin.htm is a flaky failure
        https://bugs.webkit.org/show_bug.cgi?id=182849
        <rdar://problem/50353372>

        Reviewed by Alex Christensen.

        Modernize the test and add an assertion that the body is transmitted after a redirection.

        * web-platform-tests/xhr/event-upload-progress-crossorigin.htm:

2019-05-03  Joonghun Park  <jh718.park@samsung.com>

        Resolve the percentage values of inset properties against proper box.
        https://bugs.webkit.org/show_bug.cgi?id=189549

        Reviewed by Antti Koivisto.

        Before this CL, sticky element's layout was executed relative to
        a box's overflow container,
        but the value returned by getComputedStyle was resolved against
        its containing block.

        So, the computed value and the actual value used in layout
        was different before this change.

        * web-platform-tests/css/cssom/getComputedStyle-insets-sticky-container-for-abspos-expected.txt: Copied from LayoutTests/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-insets-sticky-expected.txt.
        * web-platform-tests/css/cssom/getComputedStyle-insets-sticky-container-for-abspos.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-insets-sticky.html.
        * web-platform-tests/css/cssom/getComputedStyle-insets-sticky-expected.txt:
        * web-platform-tests/css/cssom/getComputedStyle-insets-sticky.html:
        * web-platform-tests/css/cssom/getComputedStyle-sticky-pos-percent-expected.txt: Added.
        * web-platform-tests/css/cssom/getComputedStyle-sticky-pos-percent.html: Added.
        * web-platform-tests/css/cssom/support/getComputedStyle-insets.js:
        (runTestsWithWM):

2019-05-02  Frederic Wang  <fwang@igalia.com>

        [GTK][WPE] Disable "thin", "thick", "medium" values of mfrac@linethickness at runtime
        https://bugs.webkit.org/show_bug.cgi?id=196142

        This patch introduces some experimental runtime flag to let users
        disable MathML features that are removed from MathML Core [1]. For now,
        these features are only disabled on GTK and WPE ports. This patch also
        adds a condition to disable "thin", "thick", "medium" values of
        mfrac@linethickness at runtime as agreed in [2].

        [1] https://mathml-refresh.github.io/mathml-core/
        [2] https://github.com/mathml-refresh/mathml/issues/4

        Reviewed by Rob Buis.

        * web-platform-tests/mathml/presentation-markup/fractions/frac-linethickness-001.html:
        Explicitly enable deprecated features in this test. It should be moved
        back to WebKit's test suite if/when it is updated in the upstream WPT
        repository so also add a reminder for the next synchronization.

2019-05-01  Darin Adler  <darin@apple.com>

        WebKit has too much of its own UTF-8 code and should rely more on ICU's UTF-8 support
        https://bugs.webkit.org/show_bug.cgi?id=195535

        Reviewed by Alexey Proskuryakov.

        * web-platform-tests/encoding/textdecoder-utf16-surrogates-expected.txt:
        Updated expected results to have the Unicode replacement character in cases where the
        text contains unpaired surrogates. The tests are still doing the same operations, and
        still getting the same results, but the text output no longer includes illegal UTF-8.

2019-05-01  Shawn Roberts  <sroberts@apple.com>

        Unreviewed, rolling out r244821.

        Causing

        Reverted changeset:

        "WebKit has too much of its own UTF-8 code and should rely
        more on ICU's UTF-8 support"
        https://bugs.webkit.org/show_bug.cgi?id=195535
        https://trac.webkit.org/changeset/244821

2019-05-01  Youenn Fablet  <youenn@apple.com>

        Kept alive loaders should use the redirected request in case of redirections
        https://bugs.webkit.org/show_bug.cgi?id=197337

        Reviewed by Alex Christensen.

        * web-platform-tests/fetch/api/basic/keepalive-expected.txt:

2019-04-29  Darin Adler  <darin@apple.com>

        WebKit has too much of its own UTF-8 code and should rely more on ICU's UTF-8 support
        https://bugs.webkit.org/show_bug.cgi?id=195535

        Reviewed by Alexey Proskuryakov.

        * web-platform-tests/encoding/textdecoder-utf16-surrogates-expected.txt:
        Updated expected results to have the Unicode replacement character in cases where the
        text contains unpaired surrogates. The tests are still doing the same operations, and
        still getting the same results, but the text output no longer includes illegal UTF-8.

2019-04-30  Youenn Fablet  <youenn@apple.com>

        [macOS WK1] ASSERTION FAILED: formData in WebCore::ResourceRequest::doUpdateResourceHTTPBody()
        https://bugs.webkit.org/show_bug.cgi?id=196864
        <rdar://problem/49854497>

        Reviewed by Alex Christensen.

        * web-platform-tests/xhr/send-redirect-post-upload-expected.txt:

2019-04-30  Youenn Fablet  <youenn@apple.com>

        Update WPT service-worker resource-timing test to use hosts[alt]
        https://bugs.webkit.org/show_bug.cgi?id=197329

        Reviewed by Chris Dumez.

        Set alt server as 127.0.0.1.
        Use hosts[alt][] instead of domains[www] to trigger a cross origin load.

        * resources/config.json:
        * web-platform-tests/service-workers/service-worker/resource-timing.https-expected.txt: Removed.
        * web-platform-tests/service-workers/service-worker/resource-timing.sub.https-expected.txt: Added.
        * web-platform-tests/service-workers/service-worker/resource-timing.sub.https.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resource-timing.https.html.
        * web-platform-tests/service-workers/service-worker/resources/resource-timing-iframe.sub.html:

2019-04-29  Javier Fernandez  <jfernandez@igalia.com>

        line should not be broken before the first space after a word
        https://bugs.webkit.org/show_bug.cgi?id=197278

        Reviewed by Myles C. Maxfield.

        Added new Web Platform Tests to cover the cases discussed [1] with the CSS WG.

        [1] https://github.com/w3c/csswg-drafts/issues/3701

        * web-platform-tests/css/css-text/white-space/break-spaces-before-first-char-001-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-before-first-char-001.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-before-first-char-002-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-before-first-char-002.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-before-first-char-003-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-before-first-char-003.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-before-first-char-004-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-before-first-char-004.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-before-first-char-005-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-before-first-char-005.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-before-first-char-006-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-before-first-char-006.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-before-first-char-007-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-before-first-char-007.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-before-first-char-008-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-before-first-char-008.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-before-first-char-009-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-before-first-char-009.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-before-first-char-010-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-before-first-char-010.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-before-first-char-011-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-before-first-char-011.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-before-first-char-012-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-before-first-char-012.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-before-first-char-013-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-before-first-char-013.html: Added.

2019-04-29  Javier Fernandez  <jfernandez@igalia.com>

        Update the CSS Text WPT test suite
        https://bugs.webkit.org/show_bug.cgi?id=197326

        Unreviewed test gardening.

        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-break-word-007.html:
        * web-platform-tests/css/css-text/overflow-wrap/w3c-import.log:
        * web-platform-tests/css/css-text/parsing/text-transform-valid.html:
        * web-platform-tests/css/css-text/parsing/word-break-invalid-expected.txt:
        * web-platform-tests/css/css-text/parsing/word-break-invalid.html:
        * web-platform-tests/css/css-text/parsing/word-break-valid-expected.txt:
        * web-platform-tests/css/css-text/parsing/word-break-valid.html:
        * web-platform-tests/css/css-text/text-transform/w3c-import.log:
        * web-platform-tests/css/css-text/white-space/break-spaces-003-expected.html:
        * web-platform-tests/css/css-text/white-space/break-spaces-003.html:
        * web-platform-tests/css/css-text/white-space/break-spaces-004.html:
        * web-platform-tests/css/css-text/white-space/break-spaces-005-expected.html:
        * web-platform-tests/css/css-text/white-space/break-spaces-005.html:
        * web-platform-tests/css/css-text/white-space/break-spaces-006-expected.html:
        * web-platform-tests/css/css-text/white-space/break-spaces-006.html:
        * web-platform-tests/css/css-text/white-space/break-spaces-007-expected.html:
        * web-platform-tests/css/css-text/white-space/break-spaces-007.html:
        * web-platform-tests/css/css-text/white-space/break-spaces-008-expected.html:
        * web-platform-tests/css/css-text/white-space/break-spaces-008.html:
        * web-platform-tests/css/css-text/white-space/break-spaces-009-expected.html:
        * web-platform-tests/css/css-text/white-space/break-spaces-009.html:
        * web-platform-tests/css/css-text/white-space/pre-wrap-008-expected.html:
        * web-platform-tests/css/css-text/white-space/pre-wrap-008.html:
        * web-platform-tests/css/css-text/white-space/pre-wrap-015.html:
        * web-platform-tests/css/css-text/white-space/pre-wrap-016.html:
        * web-platform-tests/css/css-text/white-space/textarea-break-spaces-001-expected.html:
        * web-platform-tests/css/css-text/white-space/w3c-import.log:

2019-04-28  Youenn Fablet  <youenn@apple.com>

        Fix imported/w3c/web-platform-tests/fetch/api/request/request-keepalive.html assert_throws call
        https://bugs.webkit.org/show_bug.cgi?id=197338

        Reviewed by Darin Adler.


2019-04-26  Youenn Fablet  <youenn@apple.com>

        Use normal loading path for ping loads
        https://bugs.webkit.org/show_bug.cgi?id=196807

        Reviewed by Alex Christensen.

        * web-platform-tests/beacon/headers/header-content-type-expected.txt:
        * web-platform-tests/fetch/api/request/request-keepalive-expected.txt:

2019-04-26  Youenn Fablet  <youenn@apple.com>

        [Mac WK2 iOS Sim] Layout Test imported/w3c/web-platform-tests/webrtc/RTCRtpReceiver-getSynchronizationSources.https.html is a flaky failure
        https://bugs.webkit.org/show_bug.cgi?id=196633
        <rdar://problem/49627667>

        Reviewed by Alex Christensen.

        * web-platform-tests/webrtc/RTCRtpReceiver-getSynchronizationSources.https-expected.txt:

2019-04-22  Youenn Fablet  <youenn@apple.com>

        Cache API should return Abort error in case of putting an aborted fetch
        https://bugs.webkit.org/show_bug.cgi?id=196757

        Reviewed by Darin Adler.

        * web-platform-tests/service-workers/cache-storage/serviceworker/cache-abort.https-expected.txt:
        * web-platform-tests/service-workers/cache-storage/window/cache-abort.https-expected.txt:
        * web-platform-tests/service-workers/cache-storage/worker/cache-abort.https-expected.txt:

2019-04-19  Antoine Quint  <graouts@apple.com>

        [Pointer Events WPT] Provide iOS testdriver
        https://bugs.webkit.org/show_bug.cgi?id=197101
        <rdar://problem/50044834>

        Reviewed by Dean Jackson.

        Add support for the "none" action source and for the "touch" pointer type. This allows us to run the touch-specific
        WPT tests for Pointer Events and add some baseline expectations for those tests.

        * web-platform-tests/pointerevents/pointerevent_change-touch-action-onpointerdown_touch-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_pointercancel_touch-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_pointerleave_after_pointercancel_touch-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_pointerout_after_pointercancel_touch-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_releasepointercapture_onpointercancel_touch-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_touch-action-auto-css_touch-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_touch-action-inherit_highest-parent-none_touch-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_touch-action-pan-x-pan-y_touch-expected.txt: Added.
        * web-platform-tests/resources/testdriver-vendor.js:
        (logDebug): Take a callback so that we don't run code for the purpose of logging unless we're in debug mode.
        (dispatchMouseActions):
        (dispatchTouchActions): Use testRunner.runUIScript() to compile an event stream based on the input from the WPT tests.
        (window.test_driver_internal.action_sequence): Handle the "none" source to insert "pause" commands in the pointer source.

2019-04-18  Sihui Liu  <sihui_liu@apple.com>

        Blob type cannot be stored correctly in IDB when IDBObjectStore has autoIncrement and keyPath options
        https://bugs.webkit.org/show_bug.cgi?id=196128
        <rdar://problem/49562115>

        Reviewed by Geoffrey Garen.

        Updated test expectations to PASS.

        * web-platform-tests/IndexedDB/nested-cloning-large-expected.txt:
        * web-platform-tests/IndexedDB/nested-cloning-large-multiple-expected.txt:
        * web-platform-tests/IndexedDB/nested-cloning-small-expected.txt:

2019-04-18  Antoine Quint  <graouts@apple.com>

        [Pointer Events WPT] Unskip imported/w3c/web-platform-tests/pointerevents/pointerevent_lostpointercapture_for_disconnected_node.html
        https://bugs.webkit.org/show_bug.cgi?id=197004

        Reviewed by Antti Koivisto.

        * web-platform-tests/pointerevents/pointerevent_lostpointercapture_for_disconnected_node-expected.txt: Added.

2019-04-17  Antoine Quint  <graouts@apple.com>

        [Pointer Events WPT] Unskip imported/w3c/web-platform-tests/pointerevents/pointerevent_on_event_handlers.html
        https://bugs.webkit.org/show_bug.cgi?id=197006

        Reviewed by Antti Koivisto.

        * web-platform-tests/pointerevents/pointerevent_on_event_handlers-expected.txt: Added.

2019-04-17  Antoine Quint  <graouts@apple.com>

        [Pointer Events WPT] Update WPT tests and provide macOS testdriver
        https://bugs.webkit.org/show_bug.cgi?id=197011
        <rdar://problem/49976553>

        Reviewed by Dean Jackson.

        We update the WPT tests from the latest state of the WPT GitHub repository and provide a testdriver to dispatch mouse events on macOS.

        * web-platform-tests/payment-request/payment-request-canmakepayment-method.https-expected.txt: Update expectations now that an (incomplete)
        test driver is available.
        * web-platform-tests/pointerevents/META.yml:
        * web-platform-tests/pointerevents/compat/pointerevent_touch-action_two-finger_interaction-manual.html: Added.
        * web-platform-tests/pointerevents/extension/idlharness.window-expected.txt: Removed.
        * web-platform-tests/pointerevents/extension/idlharness.window.html: Removed.
        * web-platform-tests/pointerevents/extension/pointerevent_coalesced_events_attributes-manual.html: Added.
        * web-platform-tests/pointerevents/extension/pointerevent_constructor.html:
        * web-platform-tests/pointerevents/extension/pointerevent_getCoalescedEvents_when_pointerlocked-manual.html: Added.
        * web-platform-tests/pointerevents/extension/pointerevent_getPredictedEvents_when_pointerlocked-manual.html: Added.
        * web-platform-tests/pointerevents/extension/pointerevent_pointerrawmove-manual.html: Added.
        * web-platform-tests/pointerevents/extension/pointerevent_pointerrawmove_in_pointerlock-manual.html: Added.
        * web-platform-tests/pointerevents/extension/pointerevent_predicted_events_attributes-manual.html: Added.
        * web-platform-tests/pointerevents/extension/pointerevent_touch-action-pan-down-css_touch-manual.html: Added.
        * web-platform-tests/pointerevents/extension/pointerevent_touch-action-pan-left-css_touch-manual.html: Added.
        * web-platform-tests/pointerevents/extension/pointerevent_touch-action-pan-right-css_touch-manual.html: Added.
        * web-platform-tests/pointerevents/extension/pointerevent_touch-action-pan-up-css_touch-manual.html: Added.
        * web-platform-tests/pointerevents/extension/w3c-import.log: Removed.
        * web-platform-tests/pointerevents/html/pointerevent_drag_interaction-manual.html: Added.
        * web-platform-tests/pointerevents/idlharness.window-expected.txt: Removed.
        * web-platform-tests/pointerevents/idlharness.window.html: Removed.
        * web-platform-tests/pointerevents/pointerevent_attributes_hoverable_pointers-manual-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_attributes_hoverable_pointers-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_attributes_nohover_pointers-manual-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_attributes_nohover_pointers-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_boundary_events_at_implicit_release_hoverable_pointers-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_boundary_events_at_implicit_release_hoverable_pointers.html: Added.
        * web-platform-tests/pointerevents/pointerevent_boundary_events_in_capturing-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_capture_mouse-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_capture_mouse.html: Added.
        * web-platform-tests/pointerevents/pointerevent_capture_suppressing_mouse-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_change-touch-action-onpointerdown_touch.html: Added.
        * web-platform-tests/pointerevents/pointerevent_click_during_capture-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_click_during_capture.html: Added.
        * web-platform-tests/pointerevents/pointerevent_disabled_form_control-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_element_haspointercapture-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_element_haspointercapture_release_pending_capture-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_fractional_coordinates-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_lostpointercapture_for_disconnected_node.html: Added.
        * web-platform-tests/pointerevents/pointerevent_lostpointercapture_is_first.html: Added.
        * web-platform-tests/pointerevents/pointerevent_mouse_capture_change_hover-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_mouse_capture_change_hover.html: Added.
        * web-platform-tests/pointerevents/pointerevent_mouse_pointercapture_in_frame-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_mouse_pointercapture_in_frame.html: Added.
        * web-platform-tests/pointerevents/pointerevent_mouse_pointercapture_inactivate_pointer-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_mouse_pointercapture_inactivate_pointer.html: Added.
        * web-platform-tests/pointerevents/pointerevent_multiple_primary_pointers_boundary_events-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_on_event_handlers-expected.txt: Removed.
        * web-platform-tests/pointerevents/pointerevent_pointerId_scope-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_pointercancel_touch.html: Added.
        * web-platform-tests/pointerevents/pointerevent_pointerenter_does_not_bubble-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_pointerenter_does_not_bubble.html: Added.
        * web-platform-tests/pointerevents/pointerevent_pointerleave_after_pointercancel_touch.html: Added.
        * web-platform-tests/pointerevents/pointerevent_pointerleave_descendant_over-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_pointerleave_descendant_over.html: Added.
        * web-platform-tests/pointerevents/pointerevent_pointerleave_descendants-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_pointerleave_descendants.html: Added.
        * web-platform-tests/pointerevents/pointerevent_pointerleave_does_not_bubble-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_pointerleave_does_not_bubble.html: Added.
        * web-platform-tests/pointerevents/pointerevent_pointerleave_pen-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_pointermove-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_pointermove.html: Added.
        * web-platform-tests/pointerevents/pointerevent_pointermove_isprimary_same_as_pointerdown-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_pointermove_isprimary_same_as_pointerdown.html: Added.
        * web-platform-tests/pointerevents/pointerevent_pointermove_on_chorded_mouse_button-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_pointermove_on_chorded_mouse_button.html: Added.
        * web-platform-tests/pointerevents/pointerevent_pointerout_after_pointercancel_touch.html: Added.
        * web-platform-tests/pointerevents/pointerevent_pointerout_pen.html: Added.
        * web-platform-tests/pointerevents/pointerevent_pointerout_received_once-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_pointerout_received_once.html: Added.
        * web-platform-tests/pointerevents/pointerevent_releasepointercapture_events_to_original_target-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_releasepointercapture_invalid_pointerid-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_releasepointercapture_invalid_pointerid.html: Added.
        * web-platform-tests/pointerevents/pointerevent_releasepointercapture_onpointercancel_touch.html: Added.
        * web-platform-tests/pointerevents/pointerevent_releasepointercapture_onpointerup_mouse-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_releasepointercapture_onpointerup_mouse.html: Added.
        * web-platform-tests/pointerevents/pointerevent_releasepointercapture_release_right_after_capture-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_root_computed_style-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_root_computed_style.html: Added.
        * web-platform-tests/pointerevents/pointerevent_root_hit_test-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_root_hit_test.html: Added.
        * web-platform-tests/pointerevents/pointerevent_sequence_at_implicit_release_on_click-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_sequence_at_implicit_release_on_drag-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_setpointercapture_disconnected-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_setpointercapture_disconnected.html: Added.
        * web-platform-tests/pointerevents/pointerevent_setpointercapture_inactive_button_mouse-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_setpointercapture_inactive_button_mouse.html: Added.
        * web-platform-tests/pointerevents/pointerevent_setpointercapture_invalid_pointerid-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_setpointercapture_invalid_pointerid.html: Added.
        * web-platform-tests/pointerevents/pointerevent_setpointercapture_override_pending_capture_element-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_setpointercapture_relatedtarget-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_setpointercapture_relatedtarget.html: Added.
        * web-platform-tests/pointerevents/pointerevent_setpointercapture_to_same_element_twice-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_support.js:
        * web-platform-tests/pointerevents/pointerevent_suppress_compat_events_on_click-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_suppress_compat_events_on_click.html: Added.
        * web-platform-tests/pointerevents/pointerevent_suppress_compat_events_on_drag_mouse-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_suppress_compat_events_on_drag_mouse.html: Added.
        * web-platform-tests/pointerevents/pointerevent_touch-action-auto-css_touch.html: Added.
        * web-platform-tests/pointerevents/pointerevent_touch-action-button-test_touch-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_touch-action-inherit_child-auto-child-none_touch-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_touch-action-inherit_child-none_touch-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_touch-action-inherit_child-pan-x-child-pan-x_touch-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_touch-action-inherit_child-pan-x-child-pan-y_touch-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_touch-action-inherit_highest-parent-none_touch.html: Added.
        * web-platform-tests/pointerevents/pointerevent_touch-action-inherit_parent-none_touch-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_touch-action-keyboard-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_touch-action-mouse-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_touch-action-none-css_touch-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_touch-action-pan-x-css_touch-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_touch-action-pan-x-pan-y-pan-y_touch-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_touch-action-pan-x-pan-y_touch.html: Added.
        * web-platform-tests/pointerevents/pointerevent_touch-action-pan-y-css_touch-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_touch-action-rotated-divs_touch-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_touch-action-span-test_touch-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_touch-action-svg-test_touch-manual.html: Added.
        * web-platform-tests/pointerevents/pointerevent_touch-action-table-test_touch-manual.html: Added.
        * web-platform-tests/pointerevents/pointerlock/pointerevent_coordinates_when_locked.html: Added.
        * web-platform-tests/pointerevents/pointerlock/pointerevent_movementxy-manual.html: Added.
        * web-platform-tests/pointerevents/pointerlock/pointerevent_movementxy_when_locked-manual.html: Added.
        * web-platform-tests/pointerevents/pointerlock/pointerevent_pointerlock_after_pointercapture-manual.html: Added.
        * web-platform-tests/pointerevents/pointerlock/pointerevent_pointerlock_supercedes_capture-manual.html: Added.
        * web-platform-tests/pointerevents/pointerlock/pointerevent_pointermove_in_pointerlock-manual.html: Added.
        * web-platform-tests/pointerevents/pointerlock/pointerevent_pointermove_on_chorded_mouse_button_when_locked-manual.html: Added.
        * web-platform-tests/pointerevents/pointerlock/resources/pointerevent_pointermove_in_pointerlock-iframe.html: Added.
        * web-platform-tests/pointerevents/pointerlock/resources/w3c-import.log: Removed.
        * web-platform-tests/pointerevents/resources/pointerevent_mouse_pointercapture-iframe.html: Added.
        * web-platform-tests/pointerevents/resources/pointerevent_mouse_pointercapture_inactivate_pointer-iframe.html: Added.
        * web-platform-tests/pointerevents/resources/pointerevent_pointerrawmove_in_pointerlock-iframe.html: Added.
        * web-platform-tests/pointerevents/resources/w3c-import.log: Removed.
        * web-platform-tests/pointerevents/w3c-import.log: Removed.
        * web-platform-tests/resources/testdriver-actions.js: Added.
        * web-platform-tests/resources/testdriver-vendor.js: Added.
        (logDebug):
        (dispatchMouseActions):
        (window.test_driver_internal.action_sequence):
        * web-platform-tests/resources/testdriver.js: Added.

2019-04-17  Rob Buis  <rbuis@igalia.com>

        XMLHttpRequest has the wrong fallback encoding
        https://bugs.webkit.org/show_bug.cgi?id=191741

        Reviewed by Alex Christensen.

        Update improved test expectations and sync unsupported-encodings.any.js and
        replacement-encodings.any.js tests.

        * web-platform-tests/encoding/replacement-encodings.any-expected.txt: Copied from LayoutTests/imported/w3c/web-platform-tests/encoding/replacement-encodings-expected.txt.
        * web-platform-tests/encoding/replacement-encodings.any.html: Added.
        * web-platform-tests/encoding/replacement-encodings.any.js: Renamed from LayoutTests/imported/w3c/web-platform-tests/encoding/replacement-encodings.html.
        * web-platform-tests/encoding/replacement-encodings.any.worker-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/encoding/replacement-encodings-expected.txt.
        * web-platform-tests/encoding/replacement-encodings.any.worker.html: Added.
        * web-platform-tests/encoding/unsupported-encodings-expected.txt: Removed.
        * web-platform-tests/encoding/unsupported-encodings.any-expected.txt: Added.
        * web-platform-tests/encoding/unsupported-encodings.any.html: Added.
        * web-platform-tests/encoding/unsupported-encodings.any.js: Added.
        * web-platform-tests/encoding/unsupported-encodings.any.worker-expected.txt: Added.
        * web-platform-tests/encoding/unsupported-encodings.any.worker.html: Added.
        * web-platform-tests/encoding/unsupported-encodings.html: Removed.
        * web-platform-tests/xhr/overridemimetype-edge-cases.window-expected.txt:
        * web-platform-tests/xhr/responsetext-decoding-expected.txt:

2019-04-17  Cathie Chen  <cathiechen@igalia.com>

        Update the test result of resize-observer/eventloop.html.
        https://bugs.webkit.org/show_bug.cgi?id=197001

        Reviewed by Frédéric Wang.

        * web-platform-tests/resize-observer/eventloop-expected.txt:

2019-04-12  Ryosuke Niwa  <rniwa@webkit.org>

        Throw TypeError when custom element constructor returns a wrong element or tries to create itself
        https://bugs.webkit.org/show_bug.cgi?id=196892

        Reviewed by Dean Jackson.

        Update the tests according to https://github.com/web-platform-tests/wpt/pull/16328.

        * web-platform-tests/custom-elements/upgrading/Node-cloneNode-expected.txt:
        * web-platform-tests/custom-elements/upgrading/Node-cloneNode.html:
        * web-platform-tests/custom-elements/upgrading/upgrading-parser-created-element-expected.txt:
        * web-platform-tests/custom-elements/upgrading/upgrading-parser-created-element.html:

2019-04-12  Rob Buis  <rbuis@igalia.com>

        Import WPT preload tests
        https://bugs.webkit.org/show_bug.cgi?id=196439

        Reviewed by Youenn Fablet.

        * web-platform-tests/preload/avoid-delaying-onload-link-preload-expected.txt: Added.
        * web-platform-tests/preload/avoid-delaying-onload-link-preload.html: Added.
        * web-platform-tests/preload/delaying-onload-link-preload-after-discovery-expected.txt: Added.
        * web-platform-tests/preload/delaying-onload-link-preload-after-discovery.html: Added.
        * web-platform-tests/preload/dynamic-adding-preload-expected.txt: Added.
        * web-platform-tests/preload/dynamic-adding-preload.html: Added.
        * web-platform-tests/preload/preload-csp.sub-expected.txt: Added.
        * web-platform-tests/preload/preload-csp.sub.html: Added.
        * web-platform-tests/preload/preload-default-csp.sub-expected.txt: Added.
        * web-platform-tests/preload/preload-default-csp.sub.html: Added.
        * web-platform-tests/preload/resources/dummy.css: Added.
        * web-platform-tests/preload/resources/dummy.css.sub.headers: Added.
        * web-platform-tests/preload/resources/dummy.js: Added.
        * web-platform-tests/preload/resources/dummy.js.sub.headers: Added.
        * web-platform-tests/preload/resources/dummy.xml: Added.
        * web-platform-tests/preload/resources/dummy.xml.sub.headers: Added.
        * web-platform-tests/preload/resources/foo.vtt: Added.
        * web-platform-tests/preload/resources/preload_helper.js: Added.
        (verifyPreloadAndRTSupport):
        (getAbsoluteURL):
        (verifyNumberOfResourceTimingEntries):
        (verifyLoadedAndNoDoubleDownload):
        * web-platform-tests/preload/resources/sound_5.oga: Added.
        * web-platform-tests/preload/resources/square.png: Added.
        * web-platform-tests/preload/resources/white.mp4: Added.
        * web-platform-tests/preload/single-download-late-used-preload-expected.txt: Added.
        * web-platform-tests/preload/single-download-late-used-preload.html: Added.
        * web-platform-tests/preload/single-download-preload-expected.txt: Added.
        * web-platform-tests/preload/single-download-preload.html: Added.

2019-04-12  Manuel Rego Casasnovas  <rego@igalia.com>

        [css-flex][css-grid] Fix synthesized baseline
        https://bugs.webkit.org/show_bug.cgi?id=196312

        Reviewed by Javier Fernandez.

        Imported some tests from WPT css-align test suite that are fixed with this patch.

        * resources/import-expectations.json:
        * web-platform-tests/css/css-align/baseline-rules/synthesized-baseline-flexbox-001-expected.txt: Added.
        * web-platform-tests/css/css-align/baseline-rules/synthesized-baseline-flexbox-001.html: Added.
        * web-platform-tests/css/css-align/baseline-rules/synthesized-baseline-grid-001-expected.txt: Added.
        * web-platform-tests/css/css-align/baseline-rules/synthesized-baseline-grid-001.html: Added.
        * web-platform-tests/css/css-align/baseline-rules/synthesized-baseline-inline-block-001-expected.txt: Added.
        * web-platform-tests/css/css-align/baseline-rules/synthesized-baseline-inline-block-001.html: Added.
        * web-platform-tests/css/css-align/baseline-rules/w3c-import.log: Added.

2019-04-11  Youenn Fablet  <youenn@apple.com>

        Support RTCDataChannel blob binaryType
        https://bugs.webkit.org/show_bug.cgi?id=196821

        Reviewed by Eric Carlson.

        * web-platform-tests/webrtc/RTCDataChannel-send-expected.txt:

2019-04-10  Said Abou-Hallawa  <sabouhallawa@apple.com>

        requestAnimationFrame should execute before the next frame
        https://bugs.webkit.org/show_bug.cgi?id=177484

        Reviewed by Simon Fraser.

        Add trace points for the page RenderingUpdate.

        * web-platform-tests/resize-observer/resources/resizeTestHelper.js:
        Change ResizeTestHelper.TIMEOUT to be 1 second instead of 100 ms which
        is too short for layout tests.

2019-04-09  Youenn Fablet  <youenn@apple.com>

        Refresh WPT service worker expectations
        https://bugs.webkit.org/show_bug.cgi?id=196732

        Reviewed by Alex Christensen.

        * web-platform-tests/service-workers/cache-storage/serviceworker/cache-abort.https-expected.txt:
        * web-platform-tests/service-workers/cache-storage/window/cache-abort.https-expected.txt:
        * web-platform-tests/service-workers/cache-storage/worker/cache-abort.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/client-navigate.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/clients-matchall-include-uncontrolled.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/fetch-canvas-tainting-image-cache.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/multipart-image.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/navigation-redirect.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/performance-timeline.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/resource-timing.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/respond-with-body-accessed-response.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/sandboxed-iframe-fetch-event.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/update-after-navigation-fetch-event.https-expected.txt:

2019-04-08  Javier Fernandez  <jfernandez@igalia.com>

        Implement white-space:break-spaces value
        https://bugs.webkit.org/show_bug.cgi?id=177327

        Reviewed by Myles Maxfield and Zalan Bujtas.

        Imoprted a few aditional tests from the CSS Text WPT suite that are relevant for this change.

        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-break-word-008-expected.html: Added.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-break-word-008.html: Added.
        * web-platform-tests/css/css-text/overflow-wrap/w3c-import.log:
        * web-platform-tests/css/css-text/parsing/white-space-valid-expected.txt:
        * web-platform-tests/css/css-text/white-space/break-spaces-003-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-003.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-009-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-009.html: Added.
        * web-platform-tests/css/css-text/white-space/w3c-import.log:

2019-04-05  Caitlin Potter  <caitp@igalia.com>

        [JSC] throw if 'ownKeys' Proxy trap result contains duplicate keys
        https://bugs.webkit.org/show_bug.cgi?id=185211

        Reviewed by Saam Barati.

        This is for the normative spec change in https://github.com/tc39/ecma262/pull/833

        Change some test expectations which were previously expected to fail.

        * web-platform-tests/fetch/api/headers/headers-record-expected.txt:

2019-04-04  Commit Queue  <commit-queue@webkit.org>

        Unreviewed, rolling out r243807 and r243824.
        https://bugs.webkit.org/show_bug.cgi?id=196611

        Test added is a flaky timeout on iOS Simulator, 3 tests
        unskipped are flaky failures (Requested by ShawnRoberts on
        #webkit).

        Reverted changesets:

        "Blob type cannot be stored correctly in IDB when
        IDBObjectStore has autoIncrement and keyPath options"
        https://bugs.webkit.org/show_bug.cgi?id=196128
        https://trac.webkit.org/changeset/243807

        "Follow up fix for r243807: Use MarkedArgumentBuffer instead
        of Vector for JSValue"
        https://bugs.webkit.org/show_bug.cgi?id=196547
        https://trac.webkit.org/changeset/243824

2019-04-03  Chris Dumez  <cdumez@apple.com>

        HTML fragment serialization should not strip whitespace from URL attribute values
        https://bugs.webkit.org/show_bug.cgi?id=196551

        Reviewed by Ryosuke Niwa.

        Rebaseline WPT test now that all checks are passing. This test was already passing
        in Gecko and Blink.

        * web-platform-tests/domparsing/innerhtml-mxss.sub-expected.txt:

2019-04-03  Chris Dumez  <cdumez@apple.com>

        [XML Parser] Insert the error message block when stopping parsing and an error occurred
        https://bugs.webkit.org/show_bug.cgi?id=196546

        Reviewed by Alexey Proskuryakov.

        Rebaseline WPT test now that all checks are passing. Both Gecko and Blink already passed
        these checks.

        * web-platform-tests/domparsing/DOMParser-parseFromString-xml-parsererror-expected.txt:

2019-04-03  Chris Dumez  <cdumez@apple.com>

        Re-sync web-platform-tests/domparsing from upstream
        https://bugs.webkit.org/show_bug.cgi?id=196544

        Reviewed by Alex Christensen.

        Re-sync web-platform-tests/domparsing from upstream 3bfdeb8976fc5.

        * web-platform-tests/domparsing/*: Updated
        * web-platform-tests/interfaces/DOM-Parsing.idl: Added.

2019-04-03  Sihui Liu  <sihui_liu@apple.com>

        Blob type cannot be stored correctly in IDB when IDBObjectStore has autoIncrement and keyPath options
        https://bugs.webkit.org/show_bug.cgi?id=196128

        Reviewed by Geoffrey Garen.

        Updated test expectations to PASS.

        * web-platform-tests/IndexedDB/nested-cloning-large-expected.txt:
        * web-platform-tests/IndexedDB/nested-cloning-large-multiple-expected.txt:
        * web-platform-tests/IndexedDB/nested-cloning-small-expected.txt:

2019-04-02  Chris Dumez  <cdumez@apple.com>

        HTML Parser: Remove conditional parsing of <noembed> content
        https://bugs.webkit.org/show_bug.cgi?id=196514

        Reviewed by Geoffrey Garen.

        Resync WPT after https://github.com/web-platform-tests/wpt/pull/15471 to gain
        test coverage. Both Gecko and Blink are passing the new check, only WebKit was
        failing.

        * web-platform-tests/domparsing/DOMParser-parseFromString-html-expected.txt:
        * web-platform-tests/domparsing/DOMParser-parseFromString-html.html:

2019-04-02  Chris Dumez  <cdumez@apple.com>

        XMLHttpRequestUpload's loadstart event not correct initialized
        https://bugs.webkit.org/show_bug.cgi?id=196174
        <rdar://problem/49191412>

        Reviewed by Alex Christensen.

        * web-platform-tests/xhr/event-error-order.sub.html:
        Update test after https://github.com/web-platform-tests/wpt/pull/13365

        * web-platform-tests/xhr/abort-during-upload-expected.txt:
        * web-platform-tests/xhr/event-error-order.sub-expected.txt:
        * web-platform-tests/xhr/event-loadstart-upload-expected.txt:
        * web-platform-tests/xhr/event-timeout-order-expected.txt:
        * web-platform-tests/xhr/send-response-event-order-expected.txt:
        Rebaseline several WPT tests that are now passing.

2019-04-02  Chris Dumez  <cdumez@apple.com>

        [WK2] Add support for Window's beforeprint / afterprint events
        https://bugs.webkit.org/show_bug.cgi?id=196478

        Reviewed by Alex Christensen.

        Rebaseline WPT tests now that more checks are passing.

        * web-platform-tests/html/browsers/the-window-object/security-window/window-security.https-expected.txt:
        * web-platform-tests/html/browsers/the-window-object/security-window/window-security.sub-expected.txt:
        * web-platform-tests/html/browsers/the-window-object/window-properties.https-expected.txt:
        * web-platform-tests/html/dom/interfaces-expected.txt:
        * web-platform-tests/html/webappapis/scripting/events/body-exposed-window-event-handlers-expected.txt:
        * web-platform-tests/html/webappapis/scripting/events/event-handler-attributes-body-window-expected.txt:

2019-04-02  Chris Dumez  <cdumez@apple.com>

        [Fetch API] Allow used body replacement in Request constructor
        https://bugs.webkit.org/show_bug.cgi?id=183703
        <rdar://problem/49425609>

        Reviewed by Youenn Fablet.

        Rebaseline WPT test now that one more check is passing.

        * web-platform-tests/fetch/api/request/request-disturbed-expected.txt:

2019-04-02  Chris Dumez  <cdumez@apple.com>

        Unreviewed, rolling out r243551.

        Seems to have broken file uploads to SoundCloud

        Reverted changeset:

        "XMLHttpRequestUpload's loadstart event not correct
        initialized"
        https://bugs.webkit.org/show_bug.cgi?id=196174
        https://trac.webkit.org/changeset/243551

2019-04-01  Chris Dumez  <cdumez@apple.com>

        Attr nodes are not cloned properly
        https://bugs.webkit.org/show_bug.cgi?id=196466

        Reviewed by Ryosuke Niwa.

        Rebaseline WPT test now that one more check is passing.

        * web-platform-tests/dom/nodes/Document-importNode-expected.txt:

2019-04-01  Chris Dumez  <cdumez@apple.com>

        Support "noreferrer" for window.open()
        https://bugs.webkit.org/show_bug.cgi?id=194533

        Reviewed by Geoffrey Garen.

        Rebaseline WPT test now that all checks are passing.

        * web-platform-tests/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/open-features-tokenization-noreferrer-expected.txt:

2019-04-01  Emilio Cobos Álvarez  <emilio@crisal.io>

        Be less strict about closing blocks in attribute and functional pseudo-element selectors.
        https://bugs.webkit.org/show_bug.cgi?id=142167

        Reviewed by Antti Koivisto.

        * web-platform-tests/dom/nodes/selectors.js: Add tests for ::slotted

2019-03-29  Chris Dumez  <cdumez@apple.com>

        Make someWindow.frames, .self, .window always return someWindow
        https://bugs.webkit.org/show_bug.cgi?id=195406

        Reviewed by Alex Christensen.

        Rebaseline WPT test now that all its checks are passing.

        * web-platform-tests/html/browsers/the-window-object/self-et-al.window-expected.txt:

2019-03-29  Javier Fernandez  <jfernandez@igalia.com>

        Update the CSS Text WPT test suite
        https://bugs.webkit.org/show_bug.cgi?id=196397

        Reviewed by Manuel Rego Casasnovas.

        Updated several tests from the CSS Text test suite.

        * resources/resource-files.json:
        * web-platform-tests/css/css-text/META.yml:
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-break-word-006.html:
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-break-word-007.html:
        * web-platform-tests/css/css-text/white-space/break-spaces-004.html:
        * web-platform-tests/css/css-text/white-space/break-spaces-005.html:
        * web-platform-tests/css/css-text/white-space/break-spaces-006.html:
        * web-platform-tests/css/css-text/white-space/break-spaces-007.html:
        * web-platform-tests/css/css-text/white-space/break-spaces-008.html:
        * web-platform-tests/css/css-text/white-space/pre-wrap-008.html:
        * web-platform-tests/css/css-text/white-space/pre-wrap-015.html:
        * web-platform-tests/css/css-text/white-space/pre-wrap-016.html:
        * web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-001-expected.html:
        * web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-001.html:
        * web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-002-expected.html:
        * web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-002.html:
        * web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-003-expected.html:
        * web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-003.html:
        * web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-004-expected.html:
        * web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-004.html:
        * web-platform-tests/css/css-text/word-break/w3c-import.log:
        * web-platform-tests/css/css-text/word-break/word-break-break-all-010.html:
        * web-platform-tests/css/css-text/word-break/word-break-break-all-011.html:
        * web-platform-tests/css/css-text/word-break/word-break-break-all-012.html:
        * web-platform-tests/css/css-text/word-break/word-break-break-all-013.html:
        * web-platform-tests/css/css-text/word-break/word-break-break-all-015.html:
        * web-platform-tests/css/css-text/word-break/word-break-break-word-overflow-wrap-interactions-expected.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-break-word-overflow-wrap-interactions.html: Added.

2019-03-29  Chris Dumez  <cdumez@apple.com>

        Set window.closed immediately when close() is invoked
        https://bugs.webkit.org/show_bug.cgi?id=195409

        Reviewed by Alex Christensen.

        Rebaseline WPT tests now that more checks are passing.

        * web-platform-tests/html/browsers/the-window-object/close-method.window-expected.txt:
        * web-platform-tests/html/browsers/the-window-object/closed-attribute.window-expected.txt:

2019-03-29  Chris Dumez  <cdumez@apple.com>

        Unreviewed, rebaseline WPT test after r243638.

        * web-platform-tests/html/browsers/the-window-object/named-access-on-the-window-object/navigated-named-objects.window-expected.txt:

2019-03-29  Cathie Chen  <cathiechen@igalia.com>

        Implement ResizeObserver.
        https://bugs.webkit.org/show_bug.cgi?id=157743

        Reviewed by Simon Fraser.

        Set ResizeObserverEnabled for test runner and update expectations.

        * web-platform-tests/interfaces/ResizeObserver.idl: Added.
        * web-platform-tests/resize-observer/eventloop-expected.txt:
        * web-platform-tests/resize-observer/eventloop.html:
        * web-platform-tests/resize-observer/idlharness.window-expected.txt:
        * web-platform-tests/resize-observer/idlharness.window.html:
        * web-platform-tests/resize-observer/notify-expected.txt:
        * web-platform-tests/resize-observer/notify.html:
        * web-platform-tests/resize-observer/observe-expected.txt:
        * web-platform-tests/resize-observer/observe.html:
        * web-platform-tests/resize-observer/svg-expected.txt:
        * web-platform-tests/resize-observer/svg.html:

2019-03-28  Chris Dumez  <cdumez@apple.com>

        Support <object>.contentWindow
        https://bugs.webkit.org/show_bug.cgi?id=195562

        Reviewed by Sam Weinig.

        Rebaseline WPT tests now that more checks are passing or failing later on.

        * web-platform-tests/html/browsers/the-window-object/accessing-other-browsing-contexts/indexed-browsing-contexts-03-expected.txt:
        * web-platform-tests/html/dom/interfaces-expected.txt:
        * web-platform-tests/html/semantics/embedded-content/the-object-element/object-attributes-expected.txt:

2019-03-28  Chris Dumez  <cdumez@apple.com>

        Re-sync web-platform-tests/html/browsers/the-window-object/ from upstream
        https://bugs.webkit.org/show_bug.cgi?id=196379

        Reviewed by Ryosuke Niwa.

        Re-sync web-platform-tests/html/browsers/the-window-object/ from upstream 3bfdeb8976fc.

        * web-platform-tests/html/browsers/the-window-object/*: Updated.

2019-03-28  Chris Dumez  <cdumez@apple.com>

        Unreviewed, rebaseline web-platform-tests/html/dom/interfaces.html

        * web-platform-tests/html/dom/interfaces-expected.txt:

2019-03-27  Chris Dumez  <cdumez@apple.com>

        XMLHttpRequestUpload's loadstart event not correct initialized
        https://bugs.webkit.org/show_bug.cgi?id=196174
        <rdar://problem/49191412>

        Reviewed by Alex Christensen.

        * web-platform-tests/xhr/event-error-order.sub.html:
        Update test after https://github.com/web-platform-tests/wpt/pull/13365

        * web-platform-tests/xhr/abort-during-upload-expected.txt:
        * web-platform-tests/xhr/event-error-order.sub-expected.txt:
        * web-platform-tests/xhr/event-loadstart-upload-expected.txt:
        * web-platform-tests/xhr/event-timeout-order-expected.txt:
        * web-platform-tests/xhr/send-response-event-order-expected.txt:
        Rebaseline several WPT tests that are now passing.

2019-03-25  Javier Fernandez  <jfernandez@igalia.com>

        A single leading space is not considered as a word break even when word-break: break-all is set
        https://bugs.webkit.org/show_bug.cgi?id=195361

        Reviewed by Ryosuke Niwa.

        Imported additonal WPT from the CSS Text Suite that verify the
        change doesn't regress in any case, specially for the word-break:
        break-word feature.

        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-break-word-007-expected.html: Added.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-break-word-007.html: Added.
        * web-platform-tests/css/css-text/overflow-wrap/w3c-import.log:
        * web-platform-tests/css/css-text/white-space/pre-wrap-008-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/pre-wrap-008.html: Added.
        * web-platform-tests/css/css-text/white-space/w3c-import.log:
        * web-platform-tests/css/css-text/word-break/w3c-import.log:
        * web-platform-tests/css/css-text/word-break/word-break-break-all-015-expected.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-015.html: Added.

2019-03-25  Rob Buis  <rbuis@igalia.com>

        Reflect HTMLLinkElement.as according to the spec
        https://bugs.webkit.org/show_bug.cgi?id=196189

        Reviewed by Youenn Fablet.

        Update improved test result and import reflected-as-value.html.

        * web-platform-tests/html/dom/reflection-metadata-expected.txt:
        * web-platform-tests/preload/reflected-as-value-expected.txt: Added.
        * web-platform-tests/preload/reflected-as-value.html: Added.

2019-03-25  Manuel Rego Casasnovas  <rego@igalia.com>

        [css-grid] Fix grid container baseline alignment for orthogonal items
        https://bugs.webkit.org/show_bug.cgi?id=196141

        Reviewed by Javier Fernandez.

        Imported test from WPT. This patch is making some of the test cases pass but not all.
        Some are still failing in WebKit as it never uses the central baseline on vertical writing modes (bug #94410),
        also "text-orientation" is not supported yet in WebKit (bug #196139),
        even the prefixed version "-webkit-text-orientation" doesn't fix anything in this test case.

        * web-platform-tests/css/css-grid/alignment/grid-container-baseline-001-expected.txt: Added.
        * web-platform-tests/css/css-grid/alignment/grid-container-baseline-001.html: Added.
        * web-platform-tests/css/css-grid/alignment/w3c-import.log:

2019-03-22  Alicia Boya García  <aboya@igalia.com>

        [MSE][GStreamer] Don't construct segments on PlaybackPipeline::flush
        https://bugs.webkit.org/show_bug.cgi?id=195867

        Reviewed by Xabier Rodriguez-Calvar.

        These tests check that video and audio are roughly in sync with each
        other and with the reported player position during MSE playback.

        * web-platform-tests/media-source/mediasource-correct-frames-after-reappend-expected.txt: Added.
        * web-platform-tests/media-source/mediasource-correct-frames-after-reappend.html: Added.
        * web-platform-tests/media-source/mediasource-correct-frames-expected.txt: Added.
        * web-platform-tests/media-source/mediasource-correct-frames.html: Added.
        * web-platform-tests/media-source/mp4/test-boxes-audio.mp4: Added.
        * web-platform-tests/media-source/mp4/test-boxes-video.mp4: Added.

2019-03-21  Sihui Liu  <sihui_liu@apple.com>

        Fix key path extraction code in IndexedDB to check own property
        https://bugs.webkit.org/show_bug.cgi?id=196099

        Reviewed by Ryosuke Niwa.

        Updated test expectations to PASS.

        * web-platform-tests/IndexedDB/key-conversion-exceptions-expected.txt:
        * web-platform-tests/IndexedDB/keygenerator-inject-expected.txt:
        * web-platform-tests/IndexedDB/keypath-exceptions-expected.txt: Added.
        * web-platform-tests/IndexedDB/wasm-module-value-expected.txt:

2019-03-21  Sihui Liu  <sihui_liu@apple.com>

        Fix three IDB WPT tests
        https://bugs.webkit.org/show_bug.cgi?id=196099

        Reviewed by Ryosuke Niwa.

        Updated test expectations to PASS.

        * web-platform-tests/IndexedDB/key-conversion-exceptions-expected.txt:
        * web-platform-tests/IndexedDB/keygenerator-inject-expected.txt:
        * web-platform-tests/IndexedDB/keypath-exceptions-expected.txt: Added.

2019-03-21  Youenn Fablet  <youenn@apple.com>

        Fix one of RTCRtpTransceiver-stop.html test title
        https://bugs.webkit.org/show_bug.cgi?id=196090

        Reviewed by Brent Fulgham.

        * web-platform-tests/webrtc/RTCRtpTransceiver-stop-expected.txt:
        * web-platform-tests/webrtc/RTCRtpTransceiver-stop.html:

2019-03-19  Ryosuke Niwa  <rniwa@webkit.org>

        appendChild should throw when inserting an ancestor of a template into its content adopted to another document
        https://bugs.webkit.org/show_bug.cgi?id=195984

        Reviewed by Darin Adler.

        Rebaselined the test that is not fully passing.

        * web-platform-tests/html/semantics/scripting-1/the-template-element/template-element/template-content-hierarcy-expected.txt:

2019-03-20  Oriol Brufau  <obrufau@igalia.com>

        [css-grid] Always consider baseline shim for the minimum contribution
        https://bugs.webkit.org/show_bug.cgi?id=195964

        Reviewed by Javier Fernandez.

        Import WPT tests.

        * web-platform-tests/css/css-grid/layout-algorithm/grid-minimum-contribution-baseline-shim-expected.txt: Added.
        * web-platform-tests/css/css-grid/layout-algorithm/grid-minimum-contribution-baseline-shim-vertical-lr-expected.txt: Added.
        * web-platform-tests/css/css-grid/layout-algorithm/grid-minimum-contribution-baseline-shim-vertical-lr.html: Added.
        * web-platform-tests/css/css-grid/layout-algorithm/grid-minimum-contribution-baseline-shim-vertical-rl-expected.txt: Added.
        * web-platform-tests/css/css-grid/layout-algorithm/grid-minimum-contribution-baseline-shim-vertical-rl.html: Added.
        * web-platform-tests/css/css-grid/layout-algorithm/grid-minimum-contribution-baseline-shim.html: Added.
        * web-platform-tests/css/css-grid/layout-algorithm/w3c-import.log:

2019-03-16  Youenn Fablet  <youenn@apple.com>

        Update WPT WebRTC tests up to a22a149
        https://bugs.webkit.org/show_bug.cgi?id=195831

        Reviewed by Eric Carlson.

        * web-platform-tests/webrtc: Resynced.

2019-03-16  Sihui Liu  <sihui_liu@apple.com>

        Layout tests imported/w3c/web-platform-tests/IndexedDB/*-exception-order.html are failing
        https://bugs.webkit.org/show_bug.cgi?id=195650

        Reviewed by Ryosuke Niwa.

        Updated test expectations to PASS.

        * web-platform-tests/IndexedDB/idbdatabase-createObjectStore-exception-order-expected.txt:
        * web-platform-tests/IndexedDB/idbdatabase-transaction-exception-order-expected.txt:
        * web-platform-tests/IndexedDB/idbindex-query-exception-order-expected.txt:
        * web-platform-tests/IndexedDB/idbobjectstore-delete-exception-order-expected.txt:
        * web-platform-tests/IndexedDB/idbobjectstore-query-exception-order-expected.txt:

2019-03-12  Sihui Liu  <sihui_liu@apple.com>

        Layout Test imported/w3c/web-platform-tests/IndexedDB/fire-*-event-exception.html are failing
        https://bugs.webkit.org/show_bug.cgi?id=195581

        Updated test expectations to PASS.

        Reviewed by Brady Eidson.

        * web-platform-tests/IndexedDB/fire-error-event-exception-expected.txt:
        * web-platform-tests/IndexedDB/fire-success-event-exception-expected.txt:
        * web-platform-tests/IndexedDB/fire-upgradeneeded-event-exception-expected.txt:

2019-03-12  Sihui Liu  <sihui_liu@apple.com>

        Layout Test imported/w3c/web-platform-tests/IndexedDB/transaction-abort-request-error.html is failing
        https://bugs.webkit.org/show_bug.cgi?id=195570

        Reviewed by Brady Eidson.

        Updated test expectation to PASS.

        * web-platform-tests/IndexedDB/transaction-abort-request-error-expected.txt:

2019-03-12  Rob Buis  <rbuis@igalia.com>

        Implement further CORS restrictions
        https://bugs.webkit.org/show_bug.cgi?id=188644

        Reviewed by Darin Adler.

        Update improved test results.

        * web-platform-tests/fetch/api/cors/cors-preflight-not-cors-safelisted.any-expected.txt:
        * web-platform-tests/fetch/api/cors/cors-preflight-not-cors-safelisted.any.worker-expected.txt:
        * web-platform-tests/fetch/api/headers/headers-no-cors.window-expected.txt:

2019-03-07  Frederic Wang  <fwang@igalia.com>

        Update WPT tests for embedded content
        https://bugs.webkit.org/show_bug.cgi?id=194770

        Reviewed by Rob Buis.

        * resources/import-expectations.json:
        * resources/resource-files.json:
        * web-platform-tests/html/semantics/embedded-content/META.yml: Added.
        * web-platform-tests/html/semantics/embedded-content/image-maps/image-map-processing-model/hash-name-reference-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/image-maps/image-map-processing-model/hash-name-reference.html: Added.
        * web-platform-tests/html/semantics/embedded-content/image-maps/image-map-processing-model/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/image-maps/w3c-import.log.
        * web-platform-tests/html/semantics/embedded-content/image-maps/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/media-elements/audio_loop_base-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/audio_loop_base.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/autoplay-allowed-by-feature-policy-attribute-redirect-on-load.https.sub-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/autoplay-allowed-by-feature-policy-attribute-redirect-on-load.https.sub.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/autoplay-allowed-by-feature-policy-attribute.https.sub-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/autoplay-allowed-by-feature-policy-attribute.https.sub.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/autoplay-allowed-by-feature-policy.https.sub-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/autoplay-allowed-by-feature-policy.https.sub.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/autoplay-allowed-by-feature-policy.https.sub.html.headers: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/autoplay-default-feature-policy.https.sub-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/autoplay-default-feature-policy.https.sub.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/autoplay-disabled-by-feature-policy.https.sub-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/autoplay-disabled-by-feature-policy.https.sub.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/autoplay-disabled-by-feature-policy.https.sub.html.headers: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/autoplay-supported-by-feature-policy-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/autoplay-supported-by-feature-policy.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/autoplay-with-broken-track-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/autoplay-with-broken-track.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/error-codes/error-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/error-codes/error.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/error-codes/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/image-maps/w3c-import.log.
        * web-platform-tests/html/semantics/embedded-content/media-elements/event_canplay.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/event_canplay_noautoplay.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/event_canplaythrough.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/event_canplaythrough_noautoplay.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/event_loadeddata.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/event_loadeddata_noautoplay.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/event_loadedmetadata.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/event_loadedmetadata_noautoplay.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/event_loadstart.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/event_loadstart_noautoplay.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/event_order_canplay_canplaythrough.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/event_order_canplay_playing.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/event_order_loadedmetadata_loadeddata.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/event_order_loadstart_progress.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/event_pause.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/event_pause_noautoplay-expected.txt:
        * web-platform-tests/html/semantics/embedded-content/media-elements/event_pause_noautoplay.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/event_play.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/event_play_noautoplay-expected.txt:
        * web-platform-tests/html/semantics/embedded-content/media-elements/event_play_noautoplay.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/event_playing.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/event_playing_noautoplay.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/event_progress.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/event_progress_noautoplay.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/event_timeupdate.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/event_timeupdate_noautoplay.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/crossOrigin-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/crossOrigin.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/activeCues.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/addCue.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/removeCue.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/constructor-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/constructor.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/autoplay-overrides-preload.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-events-networkState-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-events-networkState.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-removes-queued-error-event-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/load-removes-queued-error-event.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-insert-before-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-insert-before.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-moved-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-moved.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-remove-addEventListener.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-remove-no-listener-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-remove-no-listener.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-candidate-remove-onerror.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-audio-constructor-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-audio-constructor-no-src-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-audio-constructor-no-src.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-audio-constructor.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-in-sync-event-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-in-sync-event.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-fragment-into-document-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-fragment-into-document.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-into-document-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-into-document.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-into-iframe-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-into-iframe.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-parent-into-document-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-parent-into-document.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-in-div-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-in-div.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-in-namespace-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-in-namespace.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-networkState-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-networkState.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-not-in-document-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source-not-in-document.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-insert-source.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-load-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-load.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-pause-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-pause-networkState-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-pause-networkState.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-pause.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-play-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-play.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-from-document-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-from-document-networkState-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-from-document-networkState.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-from-document.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-src-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-remove-src.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-in-namespace-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-in-namespace.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-networkState-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-networkState.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-not-in-document-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src-not-in-document.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-invoke-set-src.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-control-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-control.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-br-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-br.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-source-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-source.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-text-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-insert-text.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source-after-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source-after.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-source.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-text-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-remove-text.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-source-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-source.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-src-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-remove-src.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-source-media-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-source-media.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resources/delayed-broken-video.py: Added.
        (main):
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/resources/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/image-maps/w3c-import.log.
        * web-platform-tests/html/semantics/embedded-content/media-elements/loading-the-media-resource/w3c-import.log: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/location-of-the-media-resource/currentSrc-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/location-of-the-media-resource/currentSrc.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/location-of-the-media-resource/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/image-maps/w3c-import.log.
        * web-platform-tests/html/semantics/embedded-content/media-elements/mime-types/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/media-elements/networkState_during_loadstart.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/networkState_during_progress-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/networkState_during_progress.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/offsets-into-the-media-resource/currentTime-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/offsets-into-the-media-resource/currentTime.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/offsets-into-the-media-resource/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/media-elements/paused_false_during_play.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/paused_true_during_pause-expected.txt:
        * web-platform-tests/html/semantics/embedded-content/media-elements/paused_true_during_pause.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/pause-remove-from-document-networkState.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/play-in-detached-document.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/media-elements/ready-states/autoplay-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/ready-states/autoplay-hidden.optional.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/ready-states/autoplay.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/ready-states/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/media-elements/readyState_during_canplay.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/readyState_during_canplaythrough.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/readyState_during_loadeddata.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/readyState_during_loadedmetadata.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/readyState_during_playing.html:
        * web-platform-tests/html/semantics/embedded-content/media-elements/seeking/seek-to-currentTime-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/seeking/seek-to-currentTime.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/seeking/seek-to-max-value-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/seeking/seek-to-max-value.htm: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/seeking/seek-to-negative-time-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/seeking/seek-to-negative-time.htm: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/seeking/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-img-element/srcset/w3c-import.log.
        * web-platform-tests/html/semantics/embedded-content/media-elements/user-interface/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/media-elements/video_loop_base-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/video_loop_base.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/resources/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/svg/intrinsicsize/intrinsicsize-svg-image.tentative-expected.html: Added.
        * web-platform-tests/html/semantics/embedded-content/svg/intrinsicsize/intrinsicsize-svg-image.tentative.html: Added.
        * web-platform-tests/html/semantics/embedded-content/svg/intrinsicsize/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-img-element/environment-changes/w3c-import.log.
        * web-platform-tests/html/semantics/embedded-content/the-area-element/resources/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/image-maps/w3c-import.log.
        * web-platform-tests/html/semantics/embedded-content/the-area-element/support/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/the-area-element/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/the-audio-element/audio_constructor-expected.txt:
        * web-platform-tests/html/semantics/embedded-content/the-audio-element/audio_constructor.html:
        * web-platform-tests/html/semantics/embedded-content/the-audio-element/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/the-embed-element/document-getters-return-null-for-cross-origin-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-embed-element/document-getters-return-null-for-cross-origin.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-04-expected.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-embed-element/embed-represent-nothing-04.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-embed-element/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/the-frame-element/document-getters-return-null-for-cross-origin-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-frame-element/document-getters-return-null-for-cross-origin.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-frame-element/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/image-maps/w3c-import.log.
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/content_document_changes_only_after_load_matures.html:
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/cross_origin_parentage.sub.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-iframe-element/cross_origin_parentage.html.
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/document-getters-return-null-for-cross-origin-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/document-getters-return-null-for-cross-origin.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe-allow-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe-allow.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe-allowfullscreen-expected.txt:
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe-allowfullscreen.html:
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe-nosrc-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe-nosrc.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_javascript_url_01-expected.txt:
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_javascript_url_01.htm:
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_remove_src-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_remove_src.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation-1-expected.txt:
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation-1.html:
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation-2-expected.txt:
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation-2.html:
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation-3-expected.txt:
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation-3.html:
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_anchor_download_allow_downloads_without_user_activation.sub.tentative-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_anchor_download_allow_downloads_without_user_activation.sub.tentative.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_anchor_download_block_downloads_without_user_activation.sub.tentative-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_anchor_download_block_downloads_without_user_activation.sub.tentative.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigation_download_allow_downloads_without_user_activation.sub.tentative-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigation_download_allow_downloads_without_user_activation.sub.tentative.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigation_download_block_downloads_without_user_activation.sub.tentative-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigation_download_block_downloads_without_user_activation.sub.tentative.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/src-repeated-in-ancestor.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/download_stash.py: Added.
        (main):
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/iframe-that-checks-contentDocument.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_download_helper.js: Added.
        (StreamDownloadFinishDelay):
        (DownloadVerifyDelay):
        (VerifyDownload):
        (AssertDownloadSuccess):
        (AssertDownloadFailure):
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/load-into-the-iframe.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/the-img-element/404-response-with-actual-image-data-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/404-response-with-actual-image-data.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/404-response-with-actual-image-data.py: Added.
        (main):
        * web-platform-tests/html/semantics/embedded-content/the-img-element/Image-constructor.html:
        * web-platform-tests/html/semantics/embedded-content/the-img-element/available-images-expected.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/available-images-onload-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/available-images-onload.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/available-images.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/current-pixel-density/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/the-img-element/decode/image-decode-iframe.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/decode/image-decode-path-changes-svg.tentative-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/decode/image-decode-path-changes-svg.tentative.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/decode/image-decode-path-changes.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/decode/image-decode-picture-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/decode/image-decode-picture.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/decode/image-decode-svg.tentative-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/decode/image-decode-svg.tentative.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/decode/image-decode-with-quick-attach-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/decode/image-decode-with-quick-attach-svg.tentative-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/decode/image-decode-with-quick-attach-svg.tentative.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/decode/image-decode-with-quick-attach.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/decode/image-decode.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/decode/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-object-element/w3c-import.log.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/environment-changes/viewport-change.html:
        * web-platform-tests/html/semantics/embedded-content/the-img-element/environment-changes/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/the-img-element/img.complete-expected.txt:
        * web-platform-tests/html/semantics/embedded-content/the-img-element/img.complete.html:
        * web-platform-tests/html/semantics/embedded-content/the-img-element/intrinsicsize/intrinsicsize-with-responsive-images.tentative-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/intrinsicsize/intrinsicsize-with-responsive-images.tentative.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/intrinsicsize/intrinsicsize-without-unsized-media.tentative.https.sub-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/intrinsicsize/intrinsicsize-without-unsized-media.tentative.https.sub.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/intrinsicsize/intrinsicsize-without-unsized-media.tentative.https.sub.html.headers: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/intrinsicsize/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/w3c-import.log.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/invalid-src.html:
        * web-platform-tests/html/semantics/embedded-content/the-img-element/ismap/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/the-img-element/null-image-source-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/null-image-source.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/relevant-mutations.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/resources/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-display-none-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-display-none.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-quirks-mode-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-quirks-mode.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-standards-mode-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-standards-mode.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-width-1000px-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-width-1000px.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute.html: Removed.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/sizes-dynamic-001-expected.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/sizes-dynamic-001.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/sizes-dynamic-002-expected.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/sizes-dynamic-002.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/support/parse-a-sizes-attribute.js: Added.
        (check):
        (onload):
        * web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/support/sizes-iframed.sub.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/sizes-iframed.sub.html.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/support/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-img-element/environment-changes/w3c-import.log.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/the-img-element/srcset/srcset-media-dynamic-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/srcset/srcset-media-dynamic.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/srcset/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/the-img-element/update-the-image-data/fail-to-resolve-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/update-the-image-data/fail-to-resolve.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/update-the-image-data/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/image-maps/w3c-import.log.
        * web-platform-tests/html/semantics/embedded-content/the-img-element/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/the-object-element/document-getters-return-null-for-cross-origin-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-object-element/document-getters-return-null-for-cross-origin.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-object-element/object-events.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-object-element/object-fallback-failed-cross-origin-navigation.sub-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-object-element/object-fallback-failed-cross-origin-navigation.sub.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-object-element/object-setcustomvalidity-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-object-element/object-setcustomvalidity.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-object-element/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/the-video-element/intrinsic_sizes-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/the-video-element/intrinsic_sizes.htm: Added.
        * web-platform-tests/html/semantics/embedded-content/the-video-element/intrinsicsize/intrinsicsize-without-unsized-media.tentative.https.sub.html: Added.
        * web-platform-tests/html/semantics/embedded-content/the-video-element/intrinsicsize/intrinsicsize-without-unsized-media.tentative.https.sub.html.headers: Added.
        * web-platform-tests/html/semantics/embedded-content/the-video-element/intrinsicsize/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/resources/w3c-import.log.
        * web-platform-tests/html/semantics/embedded-content/the-video-element/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/image-maps/w3c-import.log.

2019-03-06  Javier Fernandez  <jfernandez@igalia.com>

        Import new tests from the CSS Text 3 WPT test suite
        https://bugs.webkit.org/show_bug.cgi?id=195275

        Reviewed by Myles C. Maxfield.

        Imported new CSS Text tests from the WPT suite

        * web-platform-tests/css/css-text/META.yml: Added.
        * web-platform-tests/css/css-text/OWNERS: Removed.
        * web-platform-tests/css/css-text/boundary-shaping/boundary-shaping-001-expected.html: Added.
        * web-platform-tests/css/css-text/boundary-shaping/boundary-shaping-001.html: Added.
        * web-platform-tests/css/css-text/boundary-shaping/boundary-shaping-002-expected.html: Added.
        * web-platform-tests/css/css-text/boundary-shaping/boundary-shaping-002.html: Added.
        * web-platform-tests/css/css-text/boundary-shaping/boundary-shaping-003-expected.html: Added.
        * web-platform-tests/css/css-text/boundary-shaping/boundary-shaping-003.html: Added.
        * web-platform-tests/css/css-text/boundary-shaping/boundary-shaping-004-expected.html: Added.
        * web-platform-tests/css/css-text/boundary-shaping/boundary-shaping-004.html: Added.
        * web-platform-tests/css/css-text/boundary-shaping/boundary-shaping-005-expected.html: Added.
        * web-platform-tests/css/css-text/boundary-shaping/boundary-shaping-005.html: Added.
        * web-platform-tests/css/css-text/boundary-shaping/boundary-shaping-006-expected.html: Added.
        * web-platform-tests/css/css-text/boundary-shaping/boundary-shaping-006.html: Added.
        * web-platform-tests/css/css-text/boundary-shaping/boundary-shaping-007-expected.html: Added.
        * web-platform-tests/css/css-text/boundary-shaping/boundary-shaping-007.html: Added.
        * web-platform-tests/css/css-text/boundary-shaping/boundary-shaping-008-expected.html: Added.
        * web-platform-tests/css/css-text/boundary-shaping/boundary-shaping-008.html: Added.
        * web-platform-tests/css/css-text/boundary-shaping/boundary-shaping-009-expected.html: Added.
        * web-platform-tests/css/css-text/boundary-shaping/boundary-shaping-009.html: Added.
        * web-platform-tests/css/css-text/boundary-shaping/boundary-shaping-010-expected.html: Added.
        * web-platform-tests/css/css-text/boundary-shaping/boundary-shaping-010.html: Added.
        * web-platform-tests/css/css-text/boundary-shaping/resources/LinLibertine_Re-4.7.5.woff: Added.
        * web-platform-tests/css/css-text/boundary-shaping/resources/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/i18n/support/w3c-import.log.
        * web-platform-tests/css/css-text/boundary-shaping/w3c-import.log: Added.
        * web-platform-tests/css/css-text/hanging-punctuation/hanging-scrollable-001-expected.html: Added.
        * web-platform-tests/css/css-text/hanging-punctuation/hanging-scrollable-001.html: Added.
        * web-platform-tests/css/css-text/hanging-punctuation/w3c-import.log:
        * web-platform-tests/css/css-text/hyphens/hyphens-auto-001-expected.html: Added.
        * web-platform-tests/css/css-text/hyphens/hyphens-auto-001.html: Added.
        * web-platform-tests/css/css-text/hyphens/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/i18n/support/w3c-import.log.
        * web-platform-tests/css/css-text/i18n/META.yml: Added.
        * web-platform-tests/css/css-text/i18n/OWNERS: Removed.
        * web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-cj-loose.html:
        * web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-cj-normal.html:
        * web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-cj-strict.html:
        * web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-cpm-loose.html:
        * web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-cpm-normal.html:
        * web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-cpm-strict.html:
        * web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-hyphens-loose.html:
        * web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-hyphens-normal.html:
        * web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-hyphens-strict.html:
        * web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-in-loose.html:
        * web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-in-normal.html:
        * web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-in-strict.html:
        * web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-iteration-loose.html:
        * web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-iteration-normal.html:
        * web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-iteration-strict.html:
        * web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-po-loose.html:
        * web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-po-normal.html:
        * web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-po-strict.html:
        * web-platform-tests/css/css-text/i18n/ja/w3c-import.log:
        * web-platform-tests/css/css-text/i18n/support/w3c-import.log:
        * web-platform-tests/css/css-text/i18n/w3c-import.log:
        * web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-cpm-loose.html:
        * web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-cpm-normal.html:
        * web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-cpm-strict.html:
        * web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-hyphens-loose.html:
        * web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-hyphens-normal.html:
        * web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-hyphens-strict.html:
        * web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-in-loose.html:
        * web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-in-normal.html:
        * web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-in-strict.html:
        * web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-iteration-loose.html:
        * web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-iteration-normal.html:
        * web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-iteration-strict.html:
        * web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-po-loose.html:
        * web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-po-normal.html:
        * web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-po-strict.html:
        * web-platform-tests/css/css-text/i18n/zh/w3c-import.log:
        * web-platform-tests/css/css-text/inheritance-expected.txt: Added.
        * web-platform-tests/css/css-text/inheritance.html: Added.
        * web-platform-tests/css/css-text/letter-spacing/letter-spacing-bidi-001-expected.html: Added.
        * web-platform-tests/css/css-text/letter-spacing/letter-spacing-bidi-001.html: Added.
        * web-platform-tests/css/css-text/letter-spacing/letter-spacing-bidi-002-expected.html: Added.
        * web-platform-tests/css/css-text/letter-spacing/letter-spacing-bidi-002.html: Added.
        * web-platform-tests/css/css-text/letter-spacing/letter-spacing-end-of-line-001-expected.html: Added.
        * web-platform-tests/css/css-text/letter-spacing/letter-spacing-end-of-line-001.html: Added.
        * web-platform-tests/css/css-text/letter-spacing/letter-spacing-nesting-001-expected.html: Added.
        * web-platform-tests/css/css-text/letter-spacing/letter-spacing-nesting-001.html: Added.
        * web-platform-tests/css/css-text/letter-spacing/letter-spacing-nesting-002-expected.html: Added.
        * web-platform-tests/css/css-text/letter-spacing/letter-spacing-nesting-002.html: Added.
        * web-platform-tests/css/css-text/letter-spacing/w3c-import.log:
        * web-platform-tests/css/css-text/line-break/line-break-loose-011-expected.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-strict-011-expected.xht.
        * web-platform-tests/css/css-text/line-break/line-break-loose-011.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-strict-011.xht.
        * web-platform-tests/css/css-text/line-break/line-break-loose-012-expected.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-strict-012-expected.xht.
        * web-platform-tests/css/css-text/line-break/line-break-loose-012.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-strict-012.xht.
        * web-platform-tests/css/css-text/line-break/line-break-loose-013-expected.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-strict-013-expected.xht.
        * web-platform-tests/css/css-text/line-break/line-break-loose-013.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-strict-013.xht.
        * web-platform-tests/css/css-text/line-break/line-break-loose-014-expected.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-normal-021-expected.xht.
        * web-platform-tests/css/css-text/line-break/line-break-loose-014.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-strict-014.xht.
        * web-platform-tests/css/css-text/line-break/line-break-loose-015-expected.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-normal-022-expected.xht.
        * web-platform-tests/css/css-text/line-break/line-break-loose-015.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-strict-015.xht.
        * web-platform-tests/css/css-text/line-break/line-break-loose-016a-expected.xht: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-normal-023a-expected.xht.
        * web-platform-tests/css/css-text/line-break/line-break-loose-016a.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-strict-013.xht.
        * web-platform-tests/css/css-text/line-break/line-break-loose-016b-expected.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-strict-016b-expected.xht.
        * web-platform-tests/css/css-text/line-break/line-break-loose-016b.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-normal-023b.xht.
        * web-platform-tests/css/css-text/line-break/line-break-loose-017a-expected.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-strict-017a-expected.xht.
        * web-platform-tests/css/css-text/line-break/line-break-loose-017a.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-strict-017a.xht.
        * web-platform-tests/css/css-text/line-break/line-break-loose-017b-expected.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-normal-024b-expected.xht.
        * web-platform-tests/css/css-text/line-break/line-break-loose-017b.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-normal-024b.xht.
        * web-platform-tests/css/css-text/line-break/line-break-loose-018-expected.xht: Added.
        * web-platform-tests/css/css-text/line-break/line-break-loose-018.xht: Added.
        * web-platform-tests/css/css-text/line-break/line-break-normal-011-expected.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-strict-011-expected.xht.
        * web-platform-tests/css/css-text/line-break/line-break-normal-011.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-strict-011.xht.
        * web-platform-tests/css/css-text/line-break/line-break-normal-012-expected.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-strict-012-expected.xht.
        * web-platform-tests/css/css-text/line-break/line-break-normal-012.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-strict-012.xht.
        * web-platform-tests/css/css-text/line-break/line-break-normal-013-expected.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-strict-013-expected.xht.
        * web-platform-tests/css/css-text/line-break/line-break-normal-013.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-strict-013.xht.
        * web-platform-tests/css/css-text/line-break/line-break-normal-014-expected.xht: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-normal-021-expected.xht.
        * web-platform-tests/css/css-text/line-break/line-break-normal-014.xht: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-normal-021.xht.
        * web-platform-tests/css/css-text/line-break/line-break-normal-015-expected.xht: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-normal-022-expected.xht.
        * web-platform-tests/css/css-text/line-break/line-break-normal-015.xht: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-normal-022.xht.
        * web-platform-tests/css/css-text/line-break/line-break-normal-016a-expected.xht: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-strict-013-expected.xht.
        * web-platform-tests/css/css-text/line-break/line-break-normal-016a.xht: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-normal-023a.xht.
        * web-platform-tests/css/css-text/line-break/line-break-normal-016b-expected.xht: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-normal-023b-expected.xht.
        * web-platform-tests/css/css-text/line-break/line-break-normal-016b.xht: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-normal-023b.xht.
        * web-platform-tests/css/css-text/line-break/line-break-normal-017a-expected.xht: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-normal-024a-expected.xht.
        * web-platform-tests/css/css-text/line-break/line-break-normal-017a.xht: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-normal-024a.xht.
        * web-platform-tests/css/css-text/line-break/line-break-normal-017b-expected.xht: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-normal-024b-expected.xht.
        * web-platform-tests/css/css-text/line-break/line-break-normal-017b.xht: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-text/line-break/line-break-normal-024b.xht.
        * web-platform-tests/css/css-text/line-break/line-break-normal-018-expected.xht: Added.
        * web-platform-tests/css/css-text/line-break/line-break-normal-018.xht: Added.
        * web-platform-tests/css/css-text/line-break/line-break-strict-011-expected.xht:
        * web-platform-tests/css/css-text/line-break/line-break-strict-011.xht:
        * web-platform-tests/css/css-text/line-break/line-break-strict-012-expected.xht:
        * web-platform-tests/css/css-text/line-break/line-break-strict-012.xht:
        * web-platform-tests/css/css-text/line-break/line-break-strict-013-expected.xht:
        * web-platform-tests/css/css-text/line-break/line-break-strict-013.xht:
        * web-platform-tests/css/css-text/line-break/line-break-strict-014-expected.xht:
        * web-platform-tests/css/css-text/line-break/line-break-strict-014.xht:
        * web-platform-tests/css/css-text/line-break/line-break-strict-015-expected.xht:
        * web-platform-tests/css/css-text/line-break/line-break-strict-015.xht:
        * web-platform-tests/css/css-text/line-break/line-break-strict-016a-expected.xht:
        * web-platform-tests/css/css-text/line-break/line-break-strict-016a.xht:
        * web-platform-tests/css/css-text/line-break/line-break-strict-016b-expected.xht:
        * web-platform-tests/css/css-text/line-break/line-break-strict-016b.xht:
        * web-platform-tests/css/css-text/line-break/line-break-strict-017a-expected.xht:
        * web-platform-tests/css/css-text/line-break/line-break-strict-017a.xht:
        * web-platform-tests/css/css-text/line-break/line-break-strict-017b-expected.xht:
        * web-platform-tests/css/css-text/line-break/line-break-strict-017b.xht:
        * web-platform-tests/css/css-text/line-break/line-break-strict-018-expected.xht: Added.
        * web-platform-tests/css/css-text/line-break/line-break-strict-018.xht: Added.
        * web-platform-tests/css/css-text/line-break/w3c-import.log:
        * web-platform-tests/css/css-text/line-breaking/w3c-import.log:
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-001.html:
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-002.html:
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-003-expected.html: Removed.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-003.html: Removed.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-004.html:
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-005-expected.html: Removed.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-005.html: Removed.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-001-expected.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/pre-wrap-008-expected.html.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-001.html: Added.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-002-expected.html: Added.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-002.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-break-word-002.html.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-003-expected.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-break-word-003-expected.html.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-003.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-break-word-003.html.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-004-expected.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/pre-wrap-008-expected.html.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-004.html: Added.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-005-expected.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/pre-wrap-008-expected.html.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-005.html: Added.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-fit-content-001-expected.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-break-word-fit-content-001.html.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-fit-content-001.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-break-word-fit-content-001.html.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-span-001-expected.html: Added.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-span-001.html: Added.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-span-002-expected.txt: Added.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-anywhere-span-002.html: Added.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-break-word-002.html:
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-break-word-003-expected.html:
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-break-word-003.html:
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-break-word-004-expected.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/pre-wrap-008-expected.html.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-break-word-004.html: Added.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-break-word-005-expected.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/pre-wrap-008-expected.html.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-break-word-005.html: Added.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-break-word-006-expected.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/pre-wrap-008-expected.html.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-break-word-006.html: Added.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-break-word-fit-content-001.html:
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-break-word-span-001-expected.html: Added.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-break-word-span-001.html: Added.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-break-word-span-002-expected.txt: Added.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-break-word-span-002.html: Added.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-min-content-size-001.html:
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-min-content-size-002-expected.html: Added.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-min-content-size-002.html: Added.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-min-content-size-003-expected.html: Added.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-min-content-size-003.html: Added.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-min-content-size-004-expected.html: Added.
        * web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-min-content-size-004.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-min-content-size-001.html.
        * web-platform-tests/css/css-text/overflow-wrap/w3c-import.log:
        * web-platform-tests/css/css-text/overflow-wrap/word-wrap-001.html:
        * web-platform-tests/css/css-text/overflow-wrap/word-wrap-002.html:
        * web-platform-tests/css/css-text/overflow-wrap/word-wrap-003-expected.html: Removed.
        * web-platform-tests/css/css-text/overflow-wrap/word-wrap-003.html: Removed.
        * web-platform-tests/css/css-text/overflow-wrap/word-wrap-004.html:
        * web-platform-tests/css/css-text/overflow-wrap/word-wrap-005-expected.html: Removed.
        * web-platform-tests/css/css-text/overflow-wrap/word-wrap-005.html: Removed.
        * web-platform-tests/css/css-text/overflow-wrap/word-wrap-alias-expected.txt: Added.
        * web-platform-tests/css/css-text/overflow-wrap/word-wrap-alias.html: Added.
        * web-platform-tests/css/css-text/parsing/hanging-punctuation-invalid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/hanging-punctuation-invalid.html: Added.
        * web-platform-tests/css/css-text/parsing/hanging-punctuation-valid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/hanging-punctuation-valid.html: Added.
        * web-platform-tests/css/css-text/parsing/hyphens-invalid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/hyphens-invalid.html: Added.
        * web-platform-tests/css/css-text/parsing/hyphens-valid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/hyphens-valid.html: Added.
        * web-platform-tests/css/css-text/parsing/letter-spacing-invalid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/letter-spacing-invalid.html: Added.
        * web-platform-tests/css/css-text/parsing/letter-spacing-valid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/letter-spacing-valid.html: Added.
        * web-platform-tests/css/css-text/parsing/line-break-invalid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/line-break-invalid.html: Added.
        * web-platform-tests/css/css-text/parsing/line-break-valid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/line-break-valid.html: Added.
        * web-platform-tests/css/css-text/parsing/overflow-wrap-invalid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/overflow-wrap-invalid.html: Added.
        * web-platform-tests/css/css-text/parsing/overflow-wrap-valid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/overflow-wrap-valid.html: Added.
        * web-platform-tests/css/css-text/parsing/tab-size-invalid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/tab-size-invalid.html: Added.
        * web-platform-tests/css/css-text/parsing/tab-size-valid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/tab-size-valid.html: Added.
        * web-platform-tests/css/css-text/parsing/text-align-all-invalid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/text-align-all-invalid.html: Added.
        * web-platform-tests/css/css-text/parsing/text-align-all-valid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/text-align-all-valid.html: Added.
        * web-platform-tests/css/css-text/parsing/text-align-invalid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/text-align-invalid.html: Added.
        * web-platform-tests/css/css-text/parsing/text-align-last-invalid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/text-align-last-invalid.html: Added.
        * web-platform-tests/css/css-text/parsing/text-align-last-valid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/text-align-last-valid.html: Added.
        * web-platform-tests/css/css-text/parsing/text-align-valid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/text-align-valid.html: Added.
        * web-platform-tests/css/css-text/parsing/text-indent-invalid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/text-indent-invalid.html: Added.
        * web-platform-tests/css/css-text/parsing/text-indent-valid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/text-indent-valid.html: Added.
        * web-platform-tests/css/css-text/parsing/text-justify-invalid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/text-justify-invalid.html: Added.
        * web-platform-tests/css/css-text/parsing/text-justify-valid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/text-justify-valid.html: Added.
        * web-platform-tests/css/css-text/parsing/text-transform-invalid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/text-transform-invalid.html: Added.
        * web-platform-tests/css/css-text/parsing/text-transform-valid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/text-transform-valid.html: Added.
        * web-platform-tests/css/css-text/parsing/w3c-import.log: Added.
        * web-platform-tests/css/css-text/parsing/white-space-invalid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/white-space-invalid.html: Added.
        * web-platform-tests/css/css-text/parsing/white-space-valid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/white-space-valid.html: Added.
        * web-platform-tests/css/css-text/parsing/word-break-invalid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/word-break-invalid.html: Added.
        * web-platform-tests/css/css-text/parsing/word-break-valid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/word-break-valid.html: Added.
        * web-platform-tests/css/css-text/parsing/word-spacing-invalid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/word-spacing-invalid.html: Added.
        * web-platform-tests/css/css-text/parsing/word-spacing-valid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/word-spacing-valid.html: Added.
        * web-platform-tests/css/css-text/parsing/word-wrap-invalid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/word-wrap-invalid.html: Added.
        * web-platform-tests/css/css-text/parsing/word-wrap-valid-expected.txt: Added.
        * web-platform-tests/css/css-text/parsing/word-wrap-valid.html: Added.
        * web-platform-tests/css/css-text/support/support/w3c-import.log:
        * web-platform-tests/css/css-text/support/w3c-import.log:
        * web-platform-tests/css/css-text/tab-size/tab-min-rendered-width-1-expected.html: Added.
        * web-platform-tests/css/css-text/tab-size/tab-min-rendered-width-1.html: Added.
        * web-platform-tests/css/css-text/tab-size/tab-size-inheritance-001-expected.html: Added.
        * web-platform-tests/css/css-text/tab-size/tab-size-inheritance-001.html: Added.
        * web-platform-tests/css/css-text/tab-size/tab-size-spacing-001-expected.html: Added.
        * web-platform-tests/css/css-text/tab-size/tab-size-spacing-001.html: Added.
        * web-platform-tests/css/css-text/tab-size/w3c-import.log:
        * web-platform-tests/css/css-text/text-align/w3c-import.log:
        * web-platform-tests/css/css-text/text-indent/percentage-value-intrinsic-size-expected.txt: Added.
        * web-platform-tests/css/css-text/text-indent/percentage-value-intrinsic-size.html: Added.
        * web-platform-tests/css/css-text/text-indent/text-indent-percentage-001-expected.xht:
        * web-platform-tests/css/css-text/text-indent/text-indent-percentage-001.xht:
        * web-platform-tests/css/css-text/text-indent/text-indent-percentage-002-expected.html: Added.
        * web-platform-tests/css/css-text/text-indent/text-indent-percentage-002.html: Added.
        * web-platform-tests/css/css-text/text-indent/text-indent-percentage-003-expected.html: Added.
        * web-platform-tests/css/css-text/text-indent/text-indent-percentage-003.html: Added.
        * web-platform-tests/css/css-text/text-indent/text-indent-percentage-004-expected.html: Added.
        * web-platform-tests/css/css-text/text-indent/text-indent-percentage-004.html: Added.
        * web-platform-tests/css/css-text/text-indent/w3c-import.log:
        * web-platform-tests/css/css-text/text-justify/w3c-import.log:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-001-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-001.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-003-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-003.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-005-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-005.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-007-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-007.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-009-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-009.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-010-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-010.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-011-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-011.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-014-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-014.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-016-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-016.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-018-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-018.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-020-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-020.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-022-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-022.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-024-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-024.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-026-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-026.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-028-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-028.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-030-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-030.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-031-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-031.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-033-expected.html: Added.
        * web-platform-tests/css/css-text/text-transform/text-transform-capitalize-033.html: Added.
        * web-platform-tests/css/css-text/text-transform/text-transform-full-size-kana-001-expected.html: Added.
        * web-platform-tests/css/css-text/text-transform/text-transform-full-size-kana-001.html: Added.
        * web-platform-tests/css/css-text/text-transform/text-transform-full-size-kana-002-expected.html: Added.
        * web-platform-tests/css/css-text/text-transform/text-transform-full-size-kana-002.html: Added.
        * web-platform-tests/css/css-text/text-transform/text-transform-full-size-kana-003-expected.html: Added.
        * web-platform-tests/css/css-text/text-transform/text-transform-full-size-kana-003.html: Added.
        * web-platform-tests/css/css-text/text-transform/text-transform-full-size-kana-004-expected.html: Added.
        * web-platform-tests/css/css-text/text-transform/text-transform-full-size-kana-004.html: Added.
        * web-platform-tests/css/css-text/text-transform/text-transform-full-size-kana-005-expected.html: Added.
        * web-platform-tests/css/css-text/text-transform/text-transform-full-size-kana-005.html: Added.
        * web-platform-tests/css/css-text/text-transform/text-transform-full-size-kana-006-expected.html: Added.
        * web-platform-tests/css/css-text/text-transform/text-transform-full-size-kana-006.html: Added.
        * web-platform-tests/css/css-text/text-transform/text-transform-full-size-kana-007-expected.html: Added.
        * web-platform-tests/css/css-text/text-transform/text-transform-full-size-kana-007.html: Added.
        * web-platform-tests/css/css-text/text-transform/text-transform-shaping-001-expected.html: Added.
        * web-platform-tests/css/css-text/text-transform/text-transform-shaping-001.html: Added.
        * web-platform-tests/css/css-text/text-transform/text-transform-shaping-002-expected.html: Added.
        * web-platform-tests/css/css-text/text-transform/text-transform-shaping-002.html: Added.
        * web-platform-tests/css/css-text/text-transform/text-transform-shaping-003-expected.html: Added.
        * web-platform-tests/css/css-text/text-transform/text-transform-shaping-003.html: Added.
        * web-platform-tests/css/css-text/text-transform/text-transform-tailoring-001-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-tailoring-001.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-tailoring-002-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-tailoring-002.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-tailoring-002a-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-tailoring-002a.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-tailoring-003-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-tailoring-003.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-tailoring-004-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-tailoring-004.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-tailoring-005-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-tailoring-005.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-001-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-001.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-002-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-002.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-003-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-003.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-004-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-004.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-005-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-005.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-006-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-006.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-007-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-007.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-008-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-008.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-009-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-009.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-010-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-010.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-011-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-011.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-012-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-012.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-014-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-014.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-015-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-015.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-016-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-016.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-017-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-017.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-018-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-018.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-019-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-019.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-020-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-020.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-021-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-021.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-022-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-022.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-023-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-023.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-024-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-024.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-025-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-025.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-026-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-026.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-027-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-027.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-028-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-028.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-029-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-029.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-030-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-030.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-031-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-031.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-032-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-032.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-033-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-033.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-034-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-034.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-035-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-035.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-038-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-038.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-039-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-039.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-040-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-040.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-041-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-041.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-042-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-042.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-043-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-043.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-101-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-101.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-102-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-102.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-103-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-103.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-104-expected.html:
        * web-platform-tests/css/css-text/text-transform/text-transform-upperlower-104.html:
        * web-platform-tests/css/css-text/text-transform/w3c-import.log:
        * web-platform-tests/css/css-text/w3c-import.log:
        * web-platform-tests/css/css-text/white-space/break-spaces-001-expected.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/pre-wrap-008-expected.html.
        * web-platform-tests/css/css-text/white-space/break-spaces-001.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/pre-wrap-008.html.
        * web-platform-tests/css/css-text/white-space/break-spaces-002-expected.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/pre-wrap-009-expected.html.
        * web-platform-tests/css/css-text/white-space/break-spaces-002.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/pre-wrap-009.html.
        * web-platform-tests/css/css-text/white-space/break-spaces-004-expected.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/pre-wrap-010-expected.html.
        * web-platform-tests/css/css-text/white-space/break-spaces-004.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-005-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-005.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-006-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-006.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-007-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-007.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-008-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/break-spaces-008.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-000-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-000.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-001-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-001.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-002-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-002.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-003-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-003.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-004-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-004.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-005-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-005.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-006-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-006.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-007-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-007.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-008-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-008.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-00B-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-00B.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-00D-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-00D.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-00E-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-00E.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-00F-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-00F.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-010-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-010.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-011-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-011.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-012-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-012.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-013-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-013.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-014-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-014.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-015-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-015.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-016-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-016.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-017-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-017.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-018-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-018.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-019-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-019.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-01A-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-01A.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-01B-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-01B.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-01C-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-01C.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-01D-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-01D.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-01E-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-01E.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-01F-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-01F.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-07F-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-07F.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-080-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-080.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-081-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-081.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-082-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-082.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-083-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-083.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-084-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-084.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-085-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-085.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-086-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-086.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-087-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-087.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-088-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-088.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-089-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-089.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-08A-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-08A.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-08B-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-08B.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-08C-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-08C.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-08D-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-08D.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-08E-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-08E.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-08F-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-08F.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-090-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-090.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-091-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-091.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-092-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-092.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-093-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-093.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-094-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-094.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-095-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-095.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-096-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-096.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-097-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-097.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-098-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-098.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-099-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-099.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-09A-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-09A.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-09B-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-09B.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-09C-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-09C.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-09D-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-09D.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-09E-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-09E.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-09F-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/control-chars-09F.html: Added.
        * web-platform-tests/css/css-text/white-space/line-edge-white-space-collapse-001-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/line-edge-white-space-collapse-001.html: Added.
        * web-platform-tests/css/css-text/white-space/line-edge-white-space-collapse-002-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/line-edge-white-space-collapse-002.html: Added.
        * web-platform-tests/css/css-text/white-space/pre-float-001-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/pre-float-001.html: Added.
        * web-platform-tests/css/css-text/white-space/pre-wrap-002.html:
        * web-platform-tests/css/css-text/white-space/pre-wrap-010.html: Removed.
        * web-platform-tests/css/css-text/white-space/pre-wrap-012-expected.html:
        * web-platform-tests/css/css-text/white-space/pre-wrap-012.html:
        * web-platform-tests/css/css-text/white-space/pre-wrap-013-expected.html:
        * web-platform-tests/css/css-text/white-space/pre-wrap-013.html:
        * web-platform-tests/css/css-text/white-space/pre-wrap-014-expected.html:
        * web-platform-tests/css/css-text/white-space/pre-wrap-014.html:
        * web-platform-tests/css/css-text/white-space/pre-wrap-015-expected.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/pre-wrap-008-expected.html.
        * web-platform-tests/css/css-text/white-space/pre-wrap-015.html: Added.
        * web-platform-tests/css/css-text/white-space/pre-wrap-016-expected.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/pre-wrap-008-expected.html.
        * web-platform-tests/css/css-text/white-space/pre-wrap-016.html: Added.
        * web-platform-tests/css/css-text/white-space/pre-wrap-float-001-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/pre-wrap-float-001.html: Added.
        * web-platform-tests/css/css-text/white-space/tab-stop-threshold-001-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/tab-stop-threshold-001.html: Added.
        * web-platform-tests/css/css-text/white-space/tab-stop-threshold-002-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/tab-stop-threshold-002.html: Added.
        * web-platform-tests/css/css-text/white-space/tab-stop-threshold-003-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/tab-stop-threshold-003.html: Added.
        * web-platform-tests/css/css-text/white-space/tab-stop-threshold-004-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/tab-stop-threshold-004.html: Added.
        * web-platform-tests/css/css-text/white-space/tab-stop-threshold-005-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/tab-stop-threshold-005.html: Added.
        * web-platform-tests/css/css-text/white-space/tab-stop-threshold-006-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/tab-stop-threshold-006.html: Added.
        * web-platform-tests/css/css-text/white-space/text-space-collapse-discard-001-expected.xht: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/white-space-collapsing-discard-001-expected.xht.
        * web-platform-tests/css/css-text/white-space/text-space-collapse-discard-001.xht: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/white-space-collapsing-discard-001.xht.
        * web-platform-tests/css/css-text/white-space/text-space-collapse-preserve-breaks-001-expected.xht: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/white-space-collapsing-preserve-breaks-001-expected.xht.
        * web-platform-tests/css/css-text/white-space/text-space-collapse-preserve-breaks-001.xht: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/white-space-collapsing-preserve-breaks-001.xht.
        * web-platform-tests/css/css-text/white-space/text-space-trim-trim-inner-001-expected.xht: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/white-space-collapsing-trim-inner-001-expected.xht.
        * web-platform-tests/css/css-text/white-space/text-space-trim-trim-inner-001.xht: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/white-space-collapsing-trim-inner-001.xht.
        * web-platform-tests/css/css-text/white-space/textarea-break-spaces-001-expected.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/textarea-pre-wrap-008-expected.html.
        * web-platform-tests/css/css-text/white-space/textarea-break-spaces-001.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/textarea-pre-wrap-008.html.
        * web-platform-tests/css/css-text/white-space/textarea-break-spaces-002-expected.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/textarea-pre-wrap-009-expected.html.
        * web-platform-tests/css/css-text/white-space/textarea-break-spaces-002.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/textarea-pre-wrap-009.html.
        * web-platform-tests/css/css-text/white-space/textarea-pre-wrap-010-expected.html: Removed.
        * web-platform-tests/css/css-text/white-space/textarea-pre-wrap-010.html: Removed.
        * web-platform-tests/css/css-text/white-space/trailing-ideographic-space-001-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/trailing-ideographic-space-001.html: Added.
        * web-platform-tests/css/css-text/white-space/trailing-ideographic-space-002-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/trailing-ideographic-space-002.html: Added.
        * web-platform-tests/css/css-text/white-space/trailing-ideographic-space-003-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/trailing-ideographic-space-003.html: Added.
        * web-platform-tests/css/css-text/white-space/trailing-ideographic-space-004-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/trailing-ideographic-space-004.html: Added.
        * web-platform-tests/css/css-text/white-space/trailing-space-before-br-001-expected.txt: Added.
        * web-platform-tests/css/css-text/white-space/trailing-space-before-br-001.html: Added.
        * web-platform-tests/css/css-text/white-space/w3c-import.log:
        * web-platform-tests/css/css-text/white-space/white-space-empty-text-sibling-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/white-space-empty-text-sibling.html: Added.
        * web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-001-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-001.html: Added.
        * web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-002-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-002.html: Added.
        * web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-003-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-003.html: Added.
        * web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-004-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-004.html: Added.
        * web-platform-tests/css/css-text/white-space/white-space-pre-wrap-trailing-spaces-001-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/white-space-pre-wrap-trailing-spaces-001.html: Added.
        * web-platform-tests/css/css-text/white-space/white-space-pre-wrap-trailing-spaces-002-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/white-space-pre-wrap-trailing-spaces-002.html: Added.
        * web-platform-tests/css/css-text/white-space/white-space-pre-wrap-trailing-spaces-003-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/white-space-pre-wrap-trailing-spaces-003.html: Added.
        * web-platform-tests/css/css-text/white-space/white-space-wrap-after-nowrap-001-expected.html: Added.
        * web-platform-tests/css/css-text/white-space/white-space-wrap-after-nowrap-001.html: Added.
        * web-platform-tests/css/css-text/word-break/w3c-import.log:
        * web-platform-tests/css/css-text/word-break/word-break-001.html: Removed.
        * web-platform-tests/css/css-text/word-break/word-break-002.html: Removed.
        * web-platform-tests/css/css-text/word-break/word-break-003.html: Removed.
        * web-platform-tests/css/css-text/word-break/word-break-004.html: Removed.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-008.html:
        * web-platform-tests/css/css-text/word-break/word-break-break-all-009-expected.xht: Removed.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-009.xht: Removed.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-010-expected.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/pre-wrap-008-expected.html.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-010.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-011-expected.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/pre-wrap-008-expected.html.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-011.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-012-expected.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/pre-wrap-008-expected.html.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-012.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-013-expected.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-text/white-space/pre-wrap-008-expected.html.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-013.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-014-expected.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-014.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-020-expected.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-break-all-020.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-keep-all-003-expected.html:
        * web-platform-tests/css/css-text/word-break/word-break-keep-all-003.html:
        * web-platform-tests/css/css-text/word-break/word-break-keep-all-004-expected.xht: Removed.
        * web-platform-tests/css/css-text/word-break/word-break-keep-all-004.xht: Removed.
        * web-platform-tests/css/css-text/word-break/word-break-keep-all-005-expected.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-keep-all-005.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-keep-all-006-expected.html: Added.
        * web-platform-tests/css/css-text/word-break/word-break-keep-all-006.html: Added.
        * web-platform-tests/css/css-text/writing-system/w3c-import.log: Added.
        * web-platform-tests/css/css-text/writing-system/writing-system-font-001-expected.html: Added.
        * web-platform-tests/css/css-text/writing-system/writing-system-font-001.html: Added.
        * web-platform-tests/css/css-text/writing-system/writing-system-line-break-001-expected.html: Added.
        * web-platform-tests/css/css-text/writing-system/writing-system-line-break-001.html: Added.
        * web-platform-tests/css/css-text/writing-system/writing-system-line-break-002-expected.html: Added.
        * web-platform-tests/css/css-text/writing-system/writing-system-line-break-002.html: Added.
        * web-platform-tests/css/css-text/writing-system/writing-system-segment-break-001-expected.html: Added.
        * web-platform-tests/css/css-text/writing-system/writing-system-segment-break-001.html: Added.
        * web-platform-tests/css/css-text/writing-system/writing-system-text-transform-001-expected.html: Added.
        * web-platform-tests/css/css-text/writing-system/writing-system-text-transform-001.html: Added.

2019-03-06  Frederic Wang  <fwang@igalia.com>

        Update WPT tests for the track element
        https://bugs.webkit.org/show_bug.cgi?id=195358

        Reviewed by Rob Buis.

        * resources/resource-files.json:
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/003.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/004.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/005.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/006.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/007.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/008.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/009.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/010.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/011.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/012.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/013.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/014.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/015.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/016.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/017.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/018.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/019.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/020.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/021.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/022.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/023.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/024.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/025.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/026.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/027.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/028.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/029.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/030.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/031.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/032.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/033.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/034.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/035.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/036.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/037.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/038.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/039.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/040.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/041.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/042.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/043.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/044.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/045.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/046.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/support/common.js: Added.
        (setup):
        (window.otherOriginURL.string_appeared_here.location.pathname.replace):
        (onload):
        (setCrossDomainCookie):
        (loadTrack.):
        (loadTrack):
        (removeLog):
        (checkData):
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/support/cors-tester.py: Added.
        (main):
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/support/remove-cookie.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/support/set-cookie.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/support/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/w3c-import.log.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/cors/w3c-import.log: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/align-positioning-bad.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/align-positioning.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/align-text-line-position-bad.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/align-text-line-position.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/alignment-bad.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/alignment-ltr.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/alignment.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/bom.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/captions-fast.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/captions-gaps.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/captions-html.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/captions.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/class-bad.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/class.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-id-error.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-id.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-no-id-error.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-no-id.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-recovery-cuetext.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-recovery-header.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-recovery-note.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-size-align-bad.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-size-align.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-size-bad.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cue-size.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cues-chrono-order.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cues-no-separation.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cues-overlapping.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/cues.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/default-styles.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/degenerate-cues.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/empty-cue.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/entities-wrong.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/entities.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/interspersed-non-cue.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/iso2022jp3.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/large-timestamp.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/line-position-bad.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/line-position.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/markup-bad.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/markup.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/metadata-area.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/metadata.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/missed-cues.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/no-newline-at-eof.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/no-timings.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/no-webvtt.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/positioning-bad.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/positioning-ltr.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/positioning.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/settings-bad-separation.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/settings.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/simple-captions.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/sorted-dispatch.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timestamp-bad.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timestamp.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timings-hour-error.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timings-hour.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timings-no-hour-errors.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timings-no-hour.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/timings-whitespace.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/unsupported-markup.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/utf8.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/valign-bad.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/valign-ltr.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/valign.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/voice-bad.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/voice.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/vp8-vorbis-webvtt.webm: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/w3c-import.log:
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/webvtt-file.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/webvtt-rubbish.vtt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/src-empty-string.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-active-cues.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-add-remove-cue.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-add-track-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-add-track.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-addtrack-kind-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-addtrack-kind.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-change-event-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-change-event.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-css-cue-pseudo-class-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-css-cue-pseudo-class.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-empty-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-empty.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-inline-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-inline.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-mutable-fragment.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-mutable.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-negative-duration-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-negative-duration.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-negative-timestamp-events-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-negative-timestamp-events.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-negative-timestamp.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-after-controls-added-expected.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-after-controls-added.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-after-controls-removed-expected.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-after-controls-removed.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-empty-cue-expected.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-empty-cue.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-line-doesnt-fit-expected.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-line-doesnt-fit.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-transformed-video-expected.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cue-rendering-transformed-video.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-cuechange.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-enter-exit.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-missed.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-pause-on-exit.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-seeking.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-cues-sorted-before-dispatch.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-default-attribute.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-delete-during-setup-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-delete-during-setup.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-disabled-addcue.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-disabled.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-element-dom-change-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-element-dom-change.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-element-src-change-error.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-element-src-change.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-helpers.js: Added.
        (enableAllTextTracks):
        (assert_cues_equal):
        (assert_cues_match):
        (assert_cues_html_content):
        (check_cues_from_track):
        (assert_cue_fragment_as_textcontent):
        (createFragment):
        (cloneChildrenToFragment):
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-id-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-id.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-insert-after-load.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-large-timestamp.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-load-error-readyState.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-load-from-element-readyState.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-load-from-src-readyState-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-load-from-src-readyState.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-mode-disabled.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-mode-not-changed-by-new-track.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-mode-triggers-loading.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-mode.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-node-add-remove-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-node-add-remove.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-active-cue.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-by-setting-innerHTML.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-insert-ready-state.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-quickly-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-quickly.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-track-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-track-inband.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-remove-track.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-selection-metadata-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-selection-metadata.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-text-track-cue-list.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-texttracks-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-texttracks.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-align-positioning-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-align-positioning.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-align-text-line-position-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-align-text-line-position.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-alignment.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-blank-lines.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-bom.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-class-markup.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-cue-identifiers.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-cue-no-id.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-cue-recovery.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-cue-size-align.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-cue-size.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-degenerate-cues.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-empty-cue.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-entities.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-header-comment-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-header-comment.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-interspersed-non-cue.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-line-position-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-line-position.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-magic-header-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-magic-header.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-markup.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-newlines.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-no-timings.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-non-snap-to-lines-expected.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-non-snap-to-lines.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-positioning.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-settings.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-timestamp.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-timings-hour-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-timings-hour.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-timings-no-hours-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-timings-no-hours.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-timings-whitespace.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-two-cue-layout-after-first-end-expected.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-two-cue-layout-after-first-end.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-unsupported-markup.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-utf8-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-utf8.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-valign.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-voice.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/vtt-cue-float-precision-expected.txt: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/vtt-cue-float-precision.html: Added.
        * web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/w3c-import.log:

2019-03-06  Rob Buis  <rbuis@igalia.com>

        Consider supporting the `referrerpolicy` attribute.
        https://bugs.webkit.org/show_bug.cgi?id=179053

        Reviewed by Darin Adler.

        Update improved results.

        * web-platform-tests/html/dom/reflection-embedded-expected.txt:

2019-03-06  Frederic Wang  <fwang@igalia.com>

        Update WPT tests for the canvas element
        https://bugs.webkit.org/show_bug.cgi?id=195331

        Reviewed by Youenn Fablet.

        * resources/import-expectations.json:
        * web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.parse.whitespace.html:
        * web-platform-tests/html/semantics/embedded-content/the-canvas-element/size.attributes.setAttribute.whitespace.html:
        * web-platform-tests/html/semantics/embedded-content/the-canvas-element/w3c-import.log:

2019-03-02  Darin Adler  <darin@apple.com>

        Retire legacy dtoa function and DecimalNumber class
        https://bugs.webkit.org/show_bug.cgi?id=195253

        Reviewed by Daniel Bates.

        * web-platform-tests/web-animations/animation-model/keyframe-effects/effect-value-iteration-composite-operation-expected.txt:
        Rebaseline still-failing part of this test that dumps super-small numbers that are formatted
        differently by the new code (exponential style).

2019-03-01  Rob Buis  <rbuis@igalia.com>

        Adjust XMLHttpRequest Content-Type handling
        https://bugs.webkit.org/show_bug.cgi?id=184645

        Reviewed by Youenn Fablet.

        Sync test and update test expectation (all PASSes).

        * web-platform-tests/xhr/send-content-type-charset-expected.txt:
        * web-platform-tests/xhr/send-content-type-charset.htm:

2019-03-01  Antoine Quint  <graouts@apple.com>

        Enable WPT Pointer Events tests
        https://bugs.webkit.org/show_bug.cgi?id=195204
        <rdar://problem/48502751>

        Reviewed by Dean Jackson.

        The touch-action property has been enabled as part of the work on webkit.org/b/195008 but the WPT tests
        had not been enabled yet, so we're now adding the progressions made.

        * web-platform-tests/pointerevents/extension/pointerevent_touch-action-verification-expected.txt:
        * web-platform-tests/pointerevents/pointerevent_touch-action-verification-expected.txt:

2019-02-28  Charles Vazac  <cvazac@akamai.com>

        Fix Resource Timing buffer edge cases for WPT
        https://bugs.webkit.org/show_bug.cgi?id=193213

        Reviewed by Youenn Fablet.

        * web-platform-tests/resource-timing/buffer-full-add-after-full-event.html:
        * web-platform-tests/resource-timing/buffer-full-add-entries-during-callback-that-drop-expected.txt:
        * web-platform-tests/resource-timing/buffer-full-add-then-clear-expected.txt:
        * web-platform-tests/resource-timing/buffer-full-then-increased-expected.txt:

2019-02-26  Youenn Fablet  <youenn@apple.com>

        Move service worker response validation from the service worker client to the service worker itself
        https://bugs.webkit.org/show_bug.cgi?id=194716

        Reviewed by Geoffrey Garen.

        Rebased tests as we now report to the console log any service worker response validation erorr.

        * web-platform-tests/service-workers/service-worker/fetch-canvas-tainting-image.https-expected.txt:

2019-02-26  Frederic Wang  <fwang@igalia.com>

        Synchronize MathML WPT tests
        https://bugs.webkit.org/show_bug.cgi?id=195048

        This imports changes to the documentation and spec references for MathML.
        It also imports a new test for href currently disabled due to bug 187039.

        Reviewed by Manuel Rego Casasnovas.

        * web-platform-tests/mathml/README.md:
        * web-platform-tests/mathml/presentation-markup/fractions/frac-1.html:
        * web-platform-tests/mathml/presentation-markup/fractions/frac-bar-001.html:
        * web-platform-tests/mathml/presentation-markup/fractions/frac-color-001.html:
        * web-platform-tests/mathml/presentation-markup/fractions/frac-color-002.html:
        * web-platform-tests/mathml/presentation-markup/fractions/frac-linethickness-001.html:
        * web-platform-tests/mathml/presentation-markup/fractions/frac-linethickness-002.html:
        * web-platform-tests/mathml/presentation-markup/fractions/frac-linethickness-003.html:
        * web-platform-tests/mathml/presentation-markup/fractions/frac-mrow-001.html:
        * web-platform-tests/mathml/presentation-markup/fractions/frac-numalign-denomalign-001.html:
        * web-platform-tests/mathml/presentation-markup/fractions/frac-parameters-1.html:
        * web-platform-tests/mathml/presentation-markup/fractions/frac-parameters-2.html:
        * web-platform-tests/mathml/presentation-markup/fractions/frac-visibility-001.html:
        * web-platform-tests/mathml/presentation-markup/operators/mo-axis-height-1.html:
        * web-platform-tests/mathml/presentation-markup/radicals/root-parameters-1.html:
        * web-platform-tests/mathml/presentation-markup/scripts/subsup-1.html:
        * web-platform-tests/mathml/presentation-markup/scripts/subsup-2.html:
        * web-platform-tests/mathml/presentation-markup/scripts/subsup-3.html:
        * web-platform-tests/mathml/presentation-markup/scripts/subsup-4.html:
        * web-platform-tests/mathml/presentation-markup/scripts/subsup-5.html:
        * web-platform-tests/mathml/presentation-markup/scripts/subsup-parameters-1.html:
        * web-platform-tests/mathml/presentation-markup/scripts/subsup-parameters-2.html:
        * web-platform-tests/mathml/presentation-markup/scripts/underover-1.html:
        * web-platform-tests/mathml/presentation-markup/scripts/underover-parameters-1.html:
        * web-platform-tests/mathml/presentation-markup/scripts/underover-parameters-2.html:
        * web-platform-tests/mathml/presentation-markup/scripts/underover-parameters-3.html:
        * web-platform-tests/mathml/presentation-markup/scripts/underover-parameters-4.html:
        * web-platform-tests/mathml/presentation-markup/spaces/space-1.html:
        * web-platform-tests/mathml/presentation-markup/spaces/space-2.html:
        * web-platform-tests/mathml/presentation-markup/tables/table-axis-height.html:
        * web-platform-tests/mathml/relations/css-styling/color-1.html:
        * web-platform-tests/mathml/relations/css-styling/display-1.html:
        * web-platform-tests/mathml/relations/css-styling/displaystyle-1.html:
        * web-platform-tests/mathml/relations/css-styling/lengths-1.html:
        * web-platform-tests/mathml/relations/css-styling/lengths-2.html:
        * web-platform-tests/mathml/relations/css-styling/lengths-3.html:
        * web-platform-tests/mathml/relations/css-styling/mathvariant-bold-fraktur.html:
        * web-platform-tests/mathml/relations/css-styling/mathvariant-bold-italic.html:
        * web-platform-tests/mathml/relations/css-styling/mathvariant-bold-sans-serif.html:
        * web-platform-tests/mathml/relations/css-styling/mathvariant-bold-script.html:
        * web-platform-tests/mathml/relations/css-styling/mathvariant-bold.html:
        * web-platform-tests/mathml/relations/css-styling/mathvariant-double-struck.html:
        * web-platform-tests/mathml/relations/css-styling/mathvariant-fraktur.html:
        * web-platform-tests/mathml/relations/css-styling/mathvariant-initial.html:
        * web-platform-tests/mathml/relations/css-styling/mathvariant-italic.html:
        * web-platform-tests/mathml/relations/css-styling/mathvariant-looped.html:
        * web-platform-tests/mathml/relations/css-styling/mathvariant-monospace.html:
        * web-platform-tests/mathml/relations/css-styling/mathvariant-sans-serif-bold-italic.html:
        * web-platform-tests/mathml/relations/css-styling/mathvariant-sans-serif-italic.html:
        * web-platform-tests/mathml/relations/css-styling/mathvariant-sans-serif.html:
        * web-platform-tests/mathml/relations/css-styling/mathvariant-script.html:
        * web-platform-tests/mathml/relations/css-styling/mathvariant-stretched.html:
        * web-platform-tests/mathml/relations/css-styling/mathvariant-tailed.html:
        * web-platform-tests/mathml/relations/css-styling/visibility-1.html:
        * web-platform-tests/mathml/relations/html5-tree/class-1.html:
        * web-platform-tests/mathml/relations/html5-tree/class-2.html:
        * web-platform-tests/mathml/relations/html5-tree/color-attributes-1.html:
        * web-platform-tests/mathml/relations/html5-tree/display-1.html:
        * web-platform-tests/mathml/relations/html5-tree/dynamic-1.html:
        * web-platform-tests/mathml/relations/html5-tree/href-click-1.html:
        * web-platform-tests/mathml/relations/html5-tree/href-click-2.html:
        * web-platform-tests/mathml/relations/html5-tree/href-click-3.html: Added.
        * web-platform-tests/mathml/relations/html5-tree/integration-point-1.html:
        * web-platform-tests/mathml/relations/html5-tree/integration-point-2.html:
        * web-platform-tests/mathml/relations/html5-tree/integration-point-3.html:
        * web-platform-tests/mathml/relations/html5-tree/required-extensions-1.html:
        * web-platform-tests/mathml/relations/html5-tree/required-extensions-2.html:
        * web-platform-tests/mathml/relations/html5-tree/unique-identifier-1.html:
        * web-platform-tests/mathml/relations/html5-tree/unique-identifier-2.html:
        * web-platform-tests/mathml/relations/html5-tree/unique-identifier-3.html:
        * web-platform-tests/mathml/relations/html5-tree/w3c-import.log:
        * web-platform-tests/mathml/relations/text-and-math/use-typo-metrics-1.html:
        * web-platform-tests/mathml/tools/mathvariant-transforms.py:
        * web-platform-tests/mathml/tools/utils/w3c-import.log:

2019-02-26  Frederic Wang  <fwang@igalia.com>

        Export MathML fraction tests to WPT
        https://bugs.webkit.org/show_bug.cgi?id=194436

        This is just an import of the current MathML WPT tests. It includes fraction tests from
        WebKit that were exported in [1]. Some test results have whitespace change, due to [2].

        [1] https://github.com/web-platform-tests/wpt/pull/15301
        [2] https://github.com/web-platform-tests/wpt/commit/e2dd57c3f273468b3c6a087978c531dcd00933de

        Reviewed by Manuel Rego Casasnovas.

        * resources/resource-files.json:
        * web-platform-tests/mathml/META.yml: Added.
        * web-platform-tests/mathml/OWNERS: Removed.
        * web-platform-tests/mathml/README.md:
        * web-platform-tests/mathml/presentation-markup/fractions/frac-1-expected.txt:
        * web-platform-tests/mathml/presentation-markup/fractions/frac-1.html:
        * web-platform-tests/mathml/presentation-markup/fractions/frac-bar-001-expected.html: Added.
        * web-platform-tests/mathml/presentation-markup/fractions/frac-bar-001.html: Added.
        * web-platform-tests/mathml/presentation-markup/fractions/frac-color-001-expected.html: Added.
        * web-platform-tests/mathml/presentation-markup/fractions/frac-color-001-notref.html: Added.
        * web-platform-tests/mathml/presentation-markup/fractions/frac-color-001.html: Added.
        * web-platform-tests/mathml/presentation-markup/fractions/frac-color-002-expected.html: Added.
        * web-platform-tests/mathml/presentation-markup/fractions/frac-color-002.html: Added.
        * web-platform-tests/mathml/presentation-markup/fractions/frac-linethickness-001-expected.html: Added.
        * web-platform-tests/mathml/presentation-markup/fractions/frac-linethickness-001.html: Added.
        * web-platform-tests/mathml/presentation-markup/fractions/frac-linethickness-002-expected.html: Added.
        * web-platform-tests/mathml/presentation-markup/fractions/frac-linethickness-002.html: Added.
        * web-platform-tests/mathml/presentation-markup/fractions/frac-linethickness-003-expected.html: Added.
        * web-platform-tests/mathml/presentation-markup/fractions/frac-linethickness-003-notref.html: Added.
        * web-platform-tests/mathml/presentation-markup/fractions/frac-linethickness-003.html: Added.
        * web-platform-tests/mathml/presentation-markup/fractions/frac-mrow-001-expected.html: Added.
        * web-platform-tests/mathml/presentation-markup/fractions/frac-mrow-001.html: Added.
        * web-platform-tests/mathml/presentation-markup/fractions/frac-numalign-denomalign-001-expected.html: Added.
        * web-platform-tests/mathml/presentation-markup/fractions/frac-numalign-denomalign-001.html: Added.
        * web-platform-tests/mathml/presentation-markup/fractions/frac-parameters-1-expected.txt:
        * web-platform-tests/mathml/presentation-markup/fractions/frac-parameters-1.html:
        * web-platform-tests/mathml/presentation-markup/fractions/frac-parameters-2-expected.txt:
        * web-platform-tests/mathml/presentation-markup/fractions/frac-parameters-2.html:
        * web-platform-tests/mathml/presentation-markup/fractions/frac-visibility-001-expected.html: Added.
        * web-platform-tests/mathml/presentation-markup/fractions/frac-visibility-001.html: Added.
        * web-platform-tests/mathml/presentation-markup/fractions/w3c-import.log:
        * web-platform-tests/mathml/presentation-markup/operators/mo-axis-height-1-expected.txt:
        * web-platform-tests/mathml/presentation-markup/operators/mo-axis-height-1.html:
        * web-platform-tests/mathml/presentation-markup/operators/w3c-import.log:
        * web-platform-tests/mathml/presentation-markup/radicals/root-parameters-1-expected.txt:
        * web-platform-tests/mathml/presentation-markup/radicals/root-parameters-1.html:
        * web-platform-tests/mathml/presentation-markup/radicals/w3c-import.log:
        * web-platform-tests/mathml/presentation-markup/scripts/subsup-1.html:
        * web-platform-tests/mathml/presentation-markup/scripts/subsup-2.html:
        * web-platform-tests/mathml/presentation-markup/scripts/subsup-3.html:
        * web-platform-tests/mathml/presentation-markup/scripts/subsup-4.html:
        * web-platform-tests/mathml/presentation-markup/scripts/subsup-5.html:
        * web-platform-tests/mathml/presentation-markup/scripts/subsup-parameters-1-expected.txt:
        * web-platform-tests/mathml/presentation-markup/scripts/subsup-parameters-1.html:
        * web-platform-tests/mathml/presentation-markup/scripts/subsup-parameters-2.html:
        * web-platform-tests/mathml/presentation-markup/scripts/underover-1.html:
        * web-platform-tests/mathml/presentation-markup/scripts/underover-parameters-1-expected.txt:
        * web-platform-tests/mathml/presentation-markup/scripts/underover-parameters-1.html:
        * web-platform-tests/mathml/presentation-markup/scripts/underover-parameters-2-expected.txt:
        * web-platform-tests/mathml/presentation-markup/scripts/underover-parameters-2.html:
        * web-platform-tests/mathml/presentation-markup/scripts/underover-parameters-3-expected.txt:
        * web-platform-tests/mathml/presentation-markup/scripts/underover-parameters-3.html:
        * web-platform-tests/mathml/presentation-markup/scripts/underover-parameters-4-expected.txt:
        * web-platform-tests/mathml/presentation-markup/scripts/underover-parameters-4.html:
        * web-platform-tests/mathml/presentation-markup/scripts/w3c-import.log:
        * web-platform-tests/mathml/presentation-markup/spaces/space-1-expected.txt:
        * web-platform-tests/mathml/presentation-markup/spaces/space-1.html:
        * web-platform-tests/mathml/presentation-markup/spaces/space-2.html:
        * web-platform-tests/mathml/presentation-markup/spaces/w3c-import.log:
        * web-platform-tests/mathml/presentation-markup/tables/table-axis-height-expected.txt:
        * web-platform-tests/mathml/presentation-markup/tables/table-axis-height.html:
        * web-platform-tests/mathml/presentation-markup/tables/w3c-import.log:
        * web-platform-tests/mathml/relations/css-styling/display-1.html:
        * web-platform-tests/mathml/relations/css-styling/displaystyle-1-expected.txt:
        * web-platform-tests/mathml/relations/css-styling/displaystyle-1.html:
        * web-platform-tests/mathml/relations/css-styling/lengths-3-expected.txt:
        * web-platform-tests/mathml/relations/css-styling/lengths-3.html:
        * web-platform-tests/mathml/relations/css-styling/w3c-import.log:
        * web-platform-tests/mathml/relations/html5-tree/class-2.html:
        * web-platform-tests/mathml/relations/html5-tree/display-1-expected.txt:
        * web-platform-tests/mathml/relations/html5-tree/display-1.html:
        * web-platform-tests/mathml/relations/html5-tree/href-click-1.html:
        * web-platform-tests/mathml/relations/html5-tree/href-click-2.html:
        * web-platform-tests/mathml/relations/html5-tree/unique-identifier-2.html:
        * web-platform-tests/mathml/relations/html5-tree/w3c-import.log:
        * web-platform-tests/mathml/relations/text-and-math/w3c-import.log:
        * web-platform-tests/mathml/tools/utils/w3c-import.log:
        * web-platform-tests/mathml/tools/w3c-import.log:
        * web-platform-tests/mathml/w3c-import.log:

2019-02-21  Rob Buis  <rbuis@igalia.com>

        Update MIME type parser
        https://bugs.webkit.org/show_bug.cgi?id=180526

        Reviewed by Darin Adler.

        Update improved test expectations.

        * web-platform-tests/xhr/overridemimetype-blob-expected.txt:

2019-02-18  Oriol Brufau  <obrufau@igalia.com>

        [css-grid] Handle indefinite percentages in fit-content()
        https://bugs.webkit.org/show_bug.cgi?id=194509

        Reviewed by Javier Fernandez.

        Import WPT test.

        * web-platform-tests/css/css-grid/layout-algorithm/grid-fit-content-percentage-expected.txt: Added.
        * web-platform-tests/css/css-grid/layout-algorithm/grid-fit-content-percentage.html: Added.
        * web-platform-tests/css/css-grid/layout-algorithm/w3c-import.log:

2019-02-12  Rob Buis  <rbuis@igalia.com>

        Align with Fetch on data: URLs
        https://bugs.webkit.org/show_bug.cgi?id=182325

        Reviewed by Alex Christensen.

        Update improved test expectations.

        * web-platform-tests/fetch/data-urls/processing.any-expected.txt:
        * web-platform-tests/fetch/data-urls/processing.any.worker-expected.txt:

2019-01-30  Youenn Fablet  <youenn@apple.com>

        ServiceWorkerJob should notify its client in case its job is cancelled
        https://bugs.webkit.org/show_bug.cgi?id=193747
        <rdar://problem/47498196>

        Reviewed by Chris Dumez.

        * web-platform-tests/service-workers/service-worker/registration-security-error.https-expected.txt:

2019-01-29  Rob Buis  <rbuis@igalia.com>

        Align with Fetch on data: URLs
        https://bugs.webkit.org/show_bug.cgi?id=182325

        Reviewed by Alex Christensen.

        Update improved test expectations.

        * web-platform-tests/fetch/data-urls/processing.any-expected.txt:
        * web-platform-tests/fetch/data-urls/processing.any.worker-expected.txt:
        * web-platform-tests/xhr/overridemimetype-blob-expected.txt:

2019-01-29  cathie chen  <cathiechen@igalia.com>

        Import Resize Observer test cases from WPTs
        https://bugs.webkit.org/show_bug.cgi?id=193821

        Reviewed by Frédéric Wang.

        * resources/import-expectations.json:
        * web-platform-tests/resize-observer/META.yml: Added.
        * web-platform-tests/resize-observer/eventloop-expected.txt: Added.
        * web-platform-tests/resize-observer/eventloop.html: Added.
        * web-platform-tests/resize-observer/idlharness.window-expected.txt: Added.
        * web-platform-tests/resize-observer/idlharness.window.html: Added.
        * web-platform-tests/resize-observer/idlharness.window.js: Added.
        * web-platform-tests/resize-observer/notify-expected.txt: Added.
        * web-platform-tests/resize-observer/notify.html: Added.
        * web-platform-tests/resize-observer/observe-expected.txt: Added.
        * web-platform-tests/resize-observer/observe.html: Added.
        * web-platform-tests/resize-observer/resources/iframe.html: Added.
        * web-platform-tests/resize-observer/resources/resizeTestHelper.js: Added.
        (ResizeTestHelper):
        (ResizeTestHelper.prototype.get _currentStep):
        (ResizeTestHelper.prototype._nextStep):
        (ResizeTestHelper.prototype._handleNotification):
        (ResizeTestHelper.prototype._handleTimeout):
        (ResizeTestHelper.prototype._done):
        (ResizeTestHelper.prototype.start):
        (ResizeTestHelper.prototype.get rafCount):
        (ResizeTestHelper.prototype._incrementRaf):
        (ResizeTestHelper.prototype.startCountingRaf):
        * web-platform-tests/resize-observer/resources/w3c-import.log: Added.
        * web-platform-tests/resize-observer/svg-expected.txt: Added.
        * web-platform-tests/resize-observer/svg.html: Added.
        * web-platform-tests/resize-observer/w3c-import.log: Added.

2019-01-28  Rob Buis  <rbuis@igalia.com>

        Update MIME type parser
        https://bugs.webkit.org/show_bug.cgi?id=180526

        Reviewed by Frédéric Wang.

        Update improved test expectations.

        * web-platform-tests/xhr/overridemimetype-blob-expected.txt:

2019-01-28  Oriol Brufau  <obrufau@igalia.com>

        [css-logical] Reject unitless length quirk in 'inset' shorthand
        https://bugs.webkit.org/show_bug.cgi?id=193773

        Reviewed by Manuel Rego Casasnovas.

        Import WPT tests that check that the unitless length quirk is not
        allowed in the 'inset' shorthand.

        * resources/import-expectations.json:
        * web-platform-tests/quirks/support/test-ref-iframe.js: Added.
        (setupIframe):
        * web-platform-tests/quirks/support/w3c-import.log: Added.
        * web-platform-tests/quirks/unitless-length/excluded-properties-001-expected.txt: Added.
        * web-platform-tests/quirks/unitless-length/excluded-properties-001.html: Added.
        * web-platform-tests/quirks/unitless-length/excluded-properties-002-expected.txt: Added.
        * web-platform-tests/quirks/unitless-length/excluded-properties-002.html: Added.
        * web-platform-tests/quirks/unitless-length/excluded-properties-003-expected.txt: Added.
        * web-platform-tests/quirks/unitless-length/excluded-properties-003.html: Added.
        * web-platform-tests/quirks/unitless-length/limited-quirks-expected.txt: Added.
        * web-platform-tests/quirks/unitless-length/limited-quirks.html: Added.
        * web-platform-tests/quirks/unitless-length/no-quirks-expected.txt: Added.
        * web-platform-tests/quirks/unitless-length/no-quirks.html: Added.
        * web-platform-tests/quirks/unitless-length/quirks-expected.txt: Added.
        * web-platform-tests/quirks/unitless-length/quirks.html: Added.
        * web-platform-tests/quirks/unitless-length/support/common.js: Added.
        (onload):
        * web-platform-tests/quirks/unitless-length/support/w3c-import.log: Added.
        * web-platform-tests/quirks/unitless-length/w3c-import.log: Added.

2019-01-24  Charles Vazac  <cvazac@akamai.com>

        Implement PerformanceObserver.supportedEntryTypes
        https://bugs.webkit.org/show_bug.cgi?id=193428

        Reviewed by Joseph Pecoraro.

        * web-platform-tests/resource-timing/supported_resource_type.any-expected.txt:
        * web-platform-tests/resource-timing/supported_resource_type.any.worker-expected.txt:

2019-01-23  Oriol Brufau  <obrufau@igalia.com>

        [css-logical] Implement flow-relative inset properties
        https://bugs.webkit.org/show_bug.cgi?id=189441

        Reviewed by Dean Jackson.

        Enable the CSSLogicalEnabled flag in the test for logical insets, and
        update its expectations. It still has some failures because sideways
        writing modes have not been implemented yet
        (https://bugs.webkit.org/show_bug.cgi?id=166941).

        * web-platform-tests/css/css-logical/logical-box-inset-expected.txt:
        * web-platform-tests/css/css-logical/logical-box-inset.html:

2019-01-23  Oriol Brufau  <obrufau@igalia.com>

        [css-grid] Properly handle static positions of abspos inside grid items
        https://bugs.webkit.org/show_bug.cgi?id=193657

        Reviewed by Javier Fernandez.

        Import test changes from WPT.
        Various orthogonal tests still fail because of https://bugs.webkit.org/show_bug.cgi?id=189513
        Some other tests also fail because of https://bugs.webkit.org/show_bug.cgi?id=193656

        * resources/import-expectations.json:
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-001-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-001.html: Added.
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-002-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-002.html: Added.
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-003-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-003.html: Added.
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-004-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-004.html: Added.
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-005-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-005.html: Added.
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-006-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-006.html: Added.
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-007-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-007.html: Added.
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-008-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-008.html: Added.
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-009-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-009.html: Added.
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-010-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-010.html: Added.
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-011-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-011.html: Added.
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-012-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-012.html: Added.
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-013-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-013.html: Added.
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-014-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-014.html: Added.
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-015-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-015.html: Added.
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-016-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/orthogonal-positioned-grid-descendants-016.html: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-001-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-001.html: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-002-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-002.html: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-003-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-003.html: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-004-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-004.html: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-005-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-005.html: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-006-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-006.html: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-007-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-007.html: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-008-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-008.html: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-009-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-009.html: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-010-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-010.html: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-011-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-011.html: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-012-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-012.html: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-013-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-013.html: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-014-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-014.html: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-015-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-015.html: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-016-expected.txt: Added.
        * web-platform-tests/css/css-grid/abspos/positioned-grid-descendants-016.html: Added.
        * web-platform-tests/css/css-grid/abspos/support/positioned-grid-descendants.css: Added.
        (.grid):
        (.abspos):
        (.orthogonal):
        (.grid > :nth-child(1) > .abspos):
        (.grid > :nth-child(2) > .abspos):
        * web-platform-tests/css/css-grid/abspos/support/positioned-grid-descendants.js: Added.
        (export.runTests):
        * web-platform-tests/css/css-grid/abspos/support/w3c-import.log:
        * web-platform-tests/css/css-grid/abspos/w3c-import.log:

2019-01-23  Rob Buis  <rbuis@igalia.com>

        Update MIME type parser
        https://bugs.webkit.org/show_bug.cgi?id=180526

        Reviewed by Frédéric Wang.

        Update improved test expectations.

        * web-platform-tests/xhr/overridemimetype-blob-expected.txt:

2019-01-22  Youenn Fablet  <youenn@apple.com>

        Resync libwebrtc with latest M72 branch
        https://bugs.webkit.org/show_bug.cgi?id=193693
        <rdar://problem/47463803>

        Reviewed by Eric Carlson.

        * web-platform-tests/webrtc/RTCRtpTransceiver.https-expected.txt:

2019-01-22  Oriol Brufau  <obrufau@igalia.com>

        [css-logical] Implement flow-relative margin, padding and border shorthands
        https://bugs.webkit.org/show_bug.cgi?id=188697

        Reviewed by Simon Fraser and Antti Koivisto.

        Import tests from the WPT test suite for CSS Logical Properties and Values,
        and enable the CSSLogicalEnabled runtime flag for them.

        They still have some failures because sideways writing modes have not been
        implemented yet (https://bugs.webkit.org/show_bug.cgi?id=166941).

        * web-platform-tests/css/css-logical/logical-box-border-color-expected.txt:
        * web-platform-tests/css/css-logical/logical-box-border-color.html:
        * web-platform-tests/css/css-logical/logical-box-border-shorthands-expected.txt:
        * web-platform-tests/css/css-logical/logical-box-border-shorthands.html:
        * web-platform-tests/css/css-logical/logical-box-border-style-expected.txt:
        * web-platform-tests/css/css-logical/logical-box-border-style.html:
        * web-platform-tests/css/css-logical/logical-box-border-width-expected.txt:
        * web-platform-tests/css/css-logical/logical-box-border-width.html:
        * web-platform-tests/css/css-logical/logical-box-inset-expected.txt:
        * web-platform-tests/css/css-logical/logical-box-inset.html:
        * web-platform-tests/css/css-logical/logical-box-margin-expected.txt:
        * web-platform-tests/css/css-logical/logical-box-margin.html:
        * web-platform-tests/css/css-logical/logical-box-padding-expected.txt:
        * web-platform-tests/css/css-logical/logical-box-padding.html:
        * web-platform-tests/css/css-logical/logical-box-size.html:
        * web-platform-tests/css/css-logical/resources/test-box-properties.js:
        (export.createBoxPropertyGroup):
        (export.createSizingPropertyGroup):
        (export.runTests.set test):
        (export.runTests):
        * web-platform-tests/css/css-logical/resources/test-shared.js: Added.
        (export.testCSSValues):
        (export.testComputedValues):
        (export.makeDeclaration):
        * web-platform-tests/css/css-logical/resources/w3c-import.log:

2019-01-18  Ali Juma  <ajuma@chromium.org>

        FetchResponse::url should return the empty string for tainted responses
        https://bugs.webkit.org/show_bug.cgi?id=193553

        Reviewed by Youenn Fablet.

        * web-platform-tests/fetch/api/basic/mode-no-cors.sub.any.js:
        (fetchNoCors):

2019-01-14  Charles Vazac  <cvazac@akamai.com>

        Import current Resource-Timing WPTs
        https://bugs.webkit.org/show_bug.cgi?id=193302

        Reviewed by Youenn Fablet.

        * web-platform-tests/resource-timing/SyntheticResponse.py:
        (main):
        * web-platform-tests/resource-timing/buffer-full-add-after-full-event-expected.txt: Added.
        * web-platform-tests/resource-timing/buffer-full-add-after-full-event.html: Added.
        * web-platform-tests/resource-timing/buffer-full-add-entries-during-callback-expected.txt: Added.
        * web-platform-tests/resource-timing/buffer-full-add-entries-during-callback-that-drop.html: Added.
        * web-platform-tests/resource-timing/buffer-full-add-entries-during-callback.html: Added.
        * web-platform-tests/resource-timing/buffer-full-add-then-clear-expected.txt: Added.
        * web-platform-tests/resource-timing/buffer-full-add-then-clear.html: Added.
        * web-platform-tests/resource-timing/buffer-full-decrease-buffer-during-callback.html: Added.
        * web-platform-tests/resource-timing/buffer-full-increase-buffer-during-callback-expected.txt: Added.
        * web-platform-tests/resource-timing/buffer-full-increase-buffer-during-callback.html: Added.
        * web-platform-tests/resource-timing/buffer-full-inspect-buffer-during-callback-expected.txt: Added.
        * web-platform-tests/resource-timing/buffer-full-inspect-buffer-during-callback.html: Added.
        * web-platform-tests/resource-timing/buffer-full-set-to-current-buffer-expected.txt: Added.
        * web-platform-tests/resource-timing/buffer-full-set-to-current-buffer.html: Added.
        * web-platform-tests/resource-timing/buffer-full-store-and-clear-during-callback-expected.txt: Added.
        * web-platform-tests/resource-timing/buffer-full-store-and-clear-during-callback.html: Added.
        * web-platform-tests/resource-timing/buffer-full-then-increased-expected.txt: Added.
        * web-platform-tests/resource-timing/buffer-full-then-increased.html: Added.
        * web-platform-tests/resource-timing/buffer-full-when-populate-entries-expected.txt: Added.
        * web-platform-tests/resource-timing/buffer-full-when-populate-entries.html: Added.
        * web-platform-tests/resource-timing/document-domain-no-impact-loader.sub-expected.txt: Added.
        * web-platform-tests/resource-timing/document-domain-no-impact-loader.sub.html: Added.
        * web-platform-tests/resource-timing/no-entries-for-cross-origin-css-fetched.sub-expected.txt: Added.
        * web-platform-tests/resource-timing/no-entries-for-cross-origin-css-fetched.sub.html: Added.
        * web-platform-tests/resource-timing/resource-timing-level1.js: Renamed from LayoutTests/imported/w3c/web-platform-tests/resource-timing/resource-timing.js.
        (assertInvariants):
        (window.onload):
        * web-platform-tests/resource-timing/resource-timing-level1.sub-expected.txt: Added.
        * web-platform-tests/resource-timing/resource-timing-level1.sub.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/resource-timing/resource-timing.html.
        * web-platform-tests/resource-timing/resource_connection_reuse.html:
        * web-platform-tests/resource-timing/resource_timing.worker.js:
        * web-platform-tests/resource-timing/resource_timing_buffer_full_when_populate_entries-expected.txt: Removed.
        * web-platform-tests/resource-timing/resource_timing_buffer_full_when_populate_entries.html: Removed.
        * web-platform-tests/resource-timing/resource_timing_store_and_clear_during_callback-expected.txt: Removed.
        * web-platform-tests/resource-timing/resource_timing_store_and_clear_during_callback.html: Removed.
        * web-platform-tests/resource-timing/resources/buffer-full-utilities.js: Added.
        (let.appendScript):
        (let.waitForNextTask):
        (let.waitForEventToFire.return.new.Promise):
        (let.waitForEventToFire):
        * web-platform-tests/resource-timing/resources/document-domain-no-impact.sub.html: Added.
        * web-platform-tests/resource-timing/resources/iframe-setdomain.sub.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/resource-timing/iframe-setdomain.sub.html.
        * web-platform-tests/resource-timing/resources/w3c-import.log:
        * web-platform-tests/resource-timing/resources/webperftestharness.js:
        (wp_test):
        (test_namespace):
        * web-platform-tests/resource-timing/resources/webperftestharnessextension.js:
        (test_resource_entries):
        (performance_entrylist_checker): Deleted.
        * web-platform-tests/resource-timing/single-entry-per-resource.html:
        * web-platform-tests/resource-timing/supported_resource_type.any-expected.txt: Added.
        * web-platform-tests/resource-timing/supported_resource_type.any.html: Added.
        * web-platform-tests/resource-timing/supported_resource_type.any.js: Added.
        (test):
        * web-platform-tests/resource-timing/supported_resource_type.any.worker-expected.txt: Added.
        * web-platform-tests/resource-timing/supported_resource_type.any.worker.html: Added.
        * web-platform-tests/resource-timing/test_resource_timing.https-expected.txt: Added.
        * web-platform-tests/resource-timing/test_resource_timing.https.html: Added.
        * web-platform-tests/resource-timing/test_resource_timing.js:
        (resource_load):
        * web-platform-tests/resource-timing/w3c-import.log:
2019-01-10  Oriol Brufau  <obrufau@igalia.com>

        [css-grid] Let abspos items reference implicit grid lines
        https://bugs.webkit.org/show_bug.cgi?id=193313

        Reviewed by Manuel Rego Casasnovas.

        Import test changes from WPT.

        * web-platform-tests/css/css-grid/abspos/grid-positioned-items-padding-001.html:
        * web-platform-tests/css/css-grid/abspos/grid-positioned-items-unknown-named-grid-line-001.html:

2019-01-10  cathie chen  <cathiechen@igalia.com>

        Import css-lists testcases from WPT.
        https://bugs.webkit.org/show_bug.cgi?id=193273

        Reviewed by Daniel Bates.

        * resources/import-expectations.json:
        * resources/resource-files.json:
        * web-platform-tests/css/css-lists/META.yml: Added.
        * web-platform-tests/css/css-lists/add-inline-child-after-marker-001-expected.html: Added.
        * web-platform-tests/css/css-lists/add-inline-child-after-marker-001.html: Added.
        * web-platform-tests/css/css-lists/content-property/marker-text-matches-armenian-expected.html: Added.
        * web-platform-tests/css/css-lists/content-property/marker-text-matches-armenian.html: Added.
        * web-platform-tests/css/css-lists/content-property/marker-text-matches-circle-expected.html: Added.
        * web-platform-tests/css/css-lists/content-property/marker-text-matches-circle.html: Added.
        * web-platform-tests/css/css-lists/content-property/marker-text-matches-decimal-expected.html: Added.
        * web-platform-tests/css/css-lists/content-property/marker-text-matches-decimal-leading-zero-expected.html: Added.
        * web-platform-tests/css/css-lists/content-property/marker-text-matches-decimal-leading-zero.html: Added.
        * web-platform-tests/css/css-lists/content-property/marker-text-matches-decimal.html: Added.
        * web-platform-tests/css/css-lists/content-property/marker-text-matches-disc-expected.html: Added.
        * web-platform-tests/css/css-lists/content-property/marker-text-matches-disc.html: Added.
        * web-platform-tests/css/css-lists/content-property/marker-text-matches-georgian-expected.html: Added.
        * web-platform-tests/css/css-lists/content-property/marker-text-matches-georgian.html: Added.
        * web-platform-tests/css/css-lists/content-property/marker-text-matches-lower-greek-expected.html: Added.
        * web-platform-tests/css/css-lists/content-property/marker-text-matches-lower-greek.html: Added.
        * web-platform-tests/css/css-lists/content-property/marker-text-matches-lower-latin-expected.html: Added.
        * web-platform-tests/css/css-lists/content-property/marker-text-matches-lower-latin.html: Added.
        * web-platform-tests/css/css-lists/content-property/marker-text-matches-lower-roman-expected.html: Added.
        * web-platform-tests/css/css-lists/content-property/marker-text-matches-lower-roman.html: Added.
        * web-platform-tests/css/css-lists/content-property/marker-text-matches-square-expected.html: Added.
        * web-platform-tests/css/css-lists/content-property/marker-text-matches-square.html: Added.
        * web-platform-tests/css/css-lists/content-property/marker-text-matches-upper-latin-expected.html: Added.
        * web-platform-tests/css/css-lists/content-property/marker-text-matches-upper-latin.html: Added.
        * web-platform-tests/css/css-lists/content-property/marker-text-matches-upper-roman-expected.html: Added.
        * web-platform-tests/css/css-lists/content-property/marker-text-matches-upper-roman.html: Added.
        * web-platform-tests/css/css-lists/content-property/w3c-import.log: Added.
        * web-platform-tests/css/css-lists/counter-increment-inside-display-contents-expected.html: Added.
        * web-platform-tests/css/css-lists/counter-increment-inside-display-contents.html: Added.
        * web-platform-tests/css/css-lists/counter-invalid-expected.html: Added.
        * web-platform-tests/css/css-lists/counter-invalid.htm: Added.
        * web-platform-tests/css/css-lists/counter-reset-increment-display-contents-expected.html: Added.
        * web-platform-tests/css/css-lists/counter-reset-increment-display-contents.html: Added.
        * web-platform-tests/css/css-lists/counter-reset-increment-display-none-expected.html: Added.
        * web-platform-tests/css/css-lists/counter-reset-increment-display-none.html: Added.
        * web-platform-tests/css/css-lists/counter-reset-inside-display-contents-expected.html: Added.
        * web-platform-tests/css/css-lists/counter-reset-inside-display-contents.html: Added.
        * web-platform-tests/css/css-lists/inheritance-expected.txt: Added.
        * web-platform-tests/css/css-lists/inheritance.html: Added.
        * web-platform-tests/css/css-lists/li-with-height-001-expected.html: Added.
        * web-platform-tests/css/css-lists/li-with-height-001.html: Added.
        * web-platform-tests/css/css-lists/li-with-overflow-hidden-change-list-style-position-001-expected.html: Added.
        * web-platform-tests/css/css-lists/li-with-overflow-hidden-change-list-style-position-001.html: Added.
        * web-platform-tests/css/css-lists/list-and-block-textarea-001-expected.txt: Added.
        * web-platform-tests/css/css-lists/list-and-block-textarea-001.html: Added.
        * web-platform-tests/css/css-lists/list-and-flex-001-expected.html: Added.
        * web-platform-tests/css/css-lists/list-and-flex-001.html: Added.
        * web-platform-tests/css/css-lists/list-and-grid-001-expected.html: Added.
        * web-platform-tests/css/css-lists/list-and-grid-001.html: Added.
        * web-platform-tests/css/css-lists/list-and-margin-collapse-001-expected.txt: Added.
        * web-platform-tests/css/css-lists/list-and-margin-collapse-001.html: Added.
        * web-platform-tests/css/css-lists/list-and-writing-mode-001-expected.txt: Added.
        * web-platform-tests/css/css-lists/list-and-writing-mode-001.html: Added.
        * web-platform-tests/css/css-lists/list-marker-with-lineheight-and-overflow-hidden-001-expected.html: Added.
        * web-platform-tests/css/css-lists/list-marker-with-lineheight-and-overflow-hidden-001.html: Added.
        * web-platform-tests/css/css-lists/list-style-type-armenian-002.xht: Added.
        * web-platform-tests/css/css-lists/list-style-type-armenian-003.xht: Added.
        * web-platform-tests/css/css-lists/list-with-image-display-changed-001-expected.html: Added.
        * web-platform-tests/css/css-lists/list-with-image-display-changed-001.html: Added.
        * web-platform-tests/css/css-lists/resources/w3c-import.log: Added.
        * web-platform-tests/css/css-lists/resources/white.gif: Added.
        * web-platform-tests/css/css-lists/w3c-import.log: Added.

2019-01-08  Youenn Fablet  <youenn@apple.com>

        service worker fetch handler results in bad referrer
        https://bugs.webkit.org/show_bug.cgi?id=188248
        <rdar://problem/47050478>

        Reviewed by Alex Christensen.

        * web-platform-tests/service-workers/service-worker/referrer-policy-header.https-expected.txt:

2019-01-07  Dean Jackson  <dino@apple.com>

        Turn on Pointer Events by default for iOS
        https://bugs.webkit.org/show_bug.cgi?id=193214
        <rdar://problem/46974878>

        Reviewed by Wenson Hsieh.

        Update expected results.

        * web-platform-tests/pointerevents/extension/pointerevent_touch-action-verification-expected.txt:
        * web-platform-tests/pointerevents/pointerevent_touch-action-illegal-expected.txt:
        * web-platform-tests/pointerevents/pointerevent_touch-action-verification-expected.txt:

2019-01-07  Youenn Fablet  <youenn@apple.com>

        Resync WPT fetch tests to 834eac4
        https://bugs.webkit.org/show_bug.cgi?id=193125

        Reviewed by Chris Dumez.

        * web-platform-tests/fetch: Resynced.
        * web-platform-tests/html/webappapis/atob/base64-expected.txt:

2019-01-05  Youenn Fablet  <youenn@apple.com>

        Service Worker fetch should obey its referrer policy
        https://bugs.webkit.org/show_bug.cgi?id=193152

        Reviewed by Chris Dumez.

        * web-platform-tests/fetch/api/policies/referrer-origin-service-worker.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/referrer-policy-header.https-expected.txt:

2019-01-04  Youenn Fablet  <youenn@apple.com>

        [Fetch API] Implement abortable fetch
        https://bugs.webkit.org/show_bug.cgi?id=174980
        <rdar://problem/46861402>

        Reviewed by Chris Dumez.

        Fixed tests to run in WebKit CI.
        Also fixed a bug in a test where the fetch response body is not actually empty.

        * web-platform-tests/fetch/api/abort/cache.https-expected.txt:
        * web-platform-tests/fetch/api/abort/general-serviceworker.https-expected.txt:
        * web-platform-tests/fetch/api/abort/general.any-expected.txt:
        * web-platform-tests/fetch/api/abort/general.any.js:
        * web-platform-tests/fetch/api/abort/general.any.worker-expected.txt:
        * web-platform-tests/fetch/api/abort/serviceworker-intercepted.https-expected.txt:
        * web-platform-tests/fetch/api/response/response-consume-stream-expected.txt:

2019-01-02  Simon Fraser  <simon.fraser@apple.com>

        Support css-color-4 rgb functions
        https://bugs.webkit.org/show_bug.cgi?id=192321

        Reviewed by Zalan Bujtas.
        
        New expected results.

        * web-platform-tests/css/css-color/color-resolving-expected.txt:
        * web-platform-tests/css/css-color/rgb-rounding-001-expected.txt:

2018-12-21  Manuel Rego Casasnovas  <rego@igalia.com>

        [css-grid] Fix percentages in relative offsets for grid items
        https://bugs.webkit.org/show_bug.cgi?id=190492

        Reviewed by Sergio Villar Senin.

        * web-platform-tests/css/css-grid/grid-items/grid-items-relative-offsets-002-expected.txt:
          Update expected file as we're now passing this test.

2018-12-19  Youenn Fablet  <youenn@apple.com>

        Remove RTCRtpTransceiver.setDirection
        https://bugs.webkit.org/show_bug.cgi?id=192869

        Reviewed by Alex Christensen.

        * web-platform-tests/webrtc/historical-expected.txt:

2018-12-18  Justin Michaud  <justin_michaud@apple.com>

        Update CSS Properties and Values API to use new cycle fallback behaviour
        https://bugs.webkit.org/show_bug.cgi?id=192800

        Reviewed by Antti Koivisto.

        Re-import tests and adjust expected results. Some of the tests go from pass to fail because
        this patch adds some extra dependency checking to property registrations to fix a crash, but
        now unsupported syntaxes like <length-percentage> do not register properly.

        * web-platform-tests/css/css-properties-values-api/register-property-expected.txt:
        * web-platform-tests/css/css-properties-values-api/register-property-syntax-parsing-expected.txt:
        * web-platform-tests/css/css-properties-values-api/register-property-syntax-parsing.html:
        * web-platform-tests/css/css-properties-values-api/register-property.html:
        * web-platform-tests/css/css-properties-values-api/registered-properties-inheritance-expected.txt:
        * web-platform-tests/css/css-properties-values-api/registered-properties-inheritance.html:
        * web-platform-tests/css/css-properties-values-api/registered-property-computation-expected.txt:
        * web-platform-tests/css/css-properties-values-api/registered-property-computation.html:
        * web-platform-tests/css/css-properties-values-api/registered-property-cssom-expected.txt:
        * web-platform-tests/css/css-properties-values-api/registered-property-cssom.html:
        * web-platform-tests/css/css-properties-values-api/registered-property-initial-expected.txt:
        * web-platform-tests/css/css-properties-values-api/registered-property-initial.html:
        * web-platform-tests/css/css-properties-values-api/resources/utils.js: Added.
        (generate_name):
        (any_initial_value):
        (generate_property):
        (all_syntaxes):
        * web-platform-tests/css/css-properties-values-api/resources/w3c-import.log: Added.
        * web-platform-tests/css/css-properties-values-api/self-utils-expected.txt: Added.
        * web-platform-tests/css/css-properties-values-api/self-utils.html: Added.
        * web-platform-tests/css/css-properties-values-api/typedom.tentative-expected.txt:
        * web-platform-tests/css/css-properties-values-api/typedom.tentative.html:
        * web-platform-tests/css/css-properties-values-api/unit-cycles-expected.txt:
        * web-platform-tests/css/css-properties-values-api/unit-cycles.html:
        * web-platform-tests/css/css-properties-values-api/var-reference-registered-properties-cycles.html:
        * web-platform-tests/css/css-properties-values-api/var-reference-registered-properties-expected.txt:
        * web-platform-tests/css/css-properties-values-api/var-reference-registered-properties.html:
        * web-platform-tests/css/css-properties-values-api/w3c-import.log:

2018-12-18  Justin Michaud  <justin_michaud@apple.com>

        CSS Typed OM should expose attributeStyleMap
        https://bugs.webkit.org/show_bug.cgi?id=192671

        Reviewed by Ryosuke Niwa.

        * web-platform-tests/css/css-properties-values-api/typedom.tentative-expected.txt:
        * web-platform-tests/css/css-properties-values-api/unit-cycles-expected.txt:

2018-12-14  Youenn Fablet  <youenn@apple.com>

        getSenders/getReceivers() should not return closed transceiver senders/receivers
        https://bugs.webkit.org/show_bug.cgi?id=192706

        Reviewed by Eric Carlson.

        * web-platform-tests/webrtc/RTCPeerConnection-setDescription-transceiver.html:
        * web-platform-tests/webrtc/RTCRtpTransceiver.https.html:

2018-12-13  Youenn Fablet  <youenn@apple.com>

        RTCRtpTransceiver.stopped should be true when applying a remote description with the corresponding m section rejected
        https://bugs.webkit.org/show_bug.cgi?id=192685

        Reviewed by Eric Carlson.

        * web-platform-tests/webrtc/RTCPeerConnection-setDescription-transceiver-expected.txt:
        * web-platform-tests/webrtc/RTCPeerConnection-setDescription-transceiver.html:

2018-12-10  Rob Buis  <rbuis@igalia.com>

        XMLHttpRequest removes spaces from content-types before processing
        https://bugs.webkit.org/show_bug.cgi?id=8644

        Reviewed by Chris Dumez.

        Update improved test expectations.

        * web-platform-tests/mimesniff/mime-types/parsing.any-expected.txt:
        * web-platform-tests/mimesniff/mime-types/parsing.any.worker-expected.txt:

2018-12-05  Youenn Fablet  <youenn@apple.com>

        [iOS] Layout Test imported/w3c/web-platform-tests/service-workers/service-worker/fetch-cors-xhr.https.html is a flaky failure
        https://bugs.webkit.org/show_bug.cgi?id=189727
        <rdar://problem/44584993>

        Reviewed by Chris Dumez.

        Make the test more deterministic and output more test to ease debugging.

        * web-platform-tests/service-workers/service-worker/fetch-cors-xhr.https-expected.txt:
        * web-platform-tests/service-workers/service-worker/fetch-cors-xhr.https.html:
        * web-platform-tests/service-workers/service-worker/resources/fetch-cors-xhr-iframe.html:

2018-12-05  Frederic Wang  <fwang@igalia.com>

        Import css overscroll behavior WPT test
        https://bugs.webkit.org/show_bug.cgi?id=192397

        Reviewed by Manuel Rego Casasnovas.

        * resources/import-expectations.json:
        * web-platform-tests/css/css-overscroll-behavior/META.yml: Added.
        * web-platform-tests/css/css-overscroll-behavior/inheritance-expected.txt: Added.
        * web-platform-tests/css/css-overscroll-behavior/inheritance.html: Added.
        * web-platform-tests/css/css-overscroll-behavior/w3c-import.log: Added.

2018-12-05  Alicia Boya García  <aboya@igalia.com>

        [MSE][GStreamer] Remove the AppendPipeline state machine
        https://bugs.webkit.org/show_bug.cgi?id=192204

        Reviewed by Xabier Rodriguez-Calvar.

        Added a test checking that initialization segments with invalid codec
        identifiers are flagged as errors.

        * web-platform-tests/media-source/mediasource-invalid-codec-expected.txt: Added.
        * web-platform-tests/media-source/mediasource-invalid-codec.html: Added.
        * web-platform-tests/media-source/mp4/invalid-codec.mp4: Added.
        * web-platform-tests/media-source/webm/invalid-codec.webm: Added.

2018-12-05  Rob Buis  <rbuis@igalia.com>

        [Mac] HEAD requests changed to GET after 301, 302, and 303 redirections (http/tests/xmlhttprequest/head-redirection.html)
        https://bugs.webkit.org/show_bug.cgi?id=114965

        Reviewed by Frédéric Wang.

        Update test expectations.

        * web-platform-tests/fetch/api/redirect/redirect-method-expected.txt:
        * web-platform-tests/fetch/api/redirect/redirect-method-worker-expected.txt:

2018-12-05  Rob Buis  <rbuis@igalia.com>

        Align with Fetch on data: URLs
        https://bugs.webkit.org/show_bug.cgi?id=182325

        Reviewed by Alex Christensen.

        Update improved test expectations.

        * web-platform-tests/fetch/api/basic/scheme-data.any-expected.txt:
        * web-platform-tests/fetch/api/basic/scheme-data.any.worker-expected.txt:

2018-11-30  Ryosuke Niwa  <rniwa@webkit.org>

        title attribute on style & link elements should be ignored inside a shadow tree
        https://bugs.webkit.org/show_bug.cgi?id=191297

        Reviewed by Antti Koivisto.

        Rebaseline the test case that's now passing.

        * web-platform-tests/css/css-scoping/stylesheet-title-002-expected.txt:

2018-11-30  Ryosuke Niwa  <rniwa@webkit.org>

        ShadowRoot should have styleSheets property
        https://bugs.webkit.org/show_bug.cgi?id=191311

        Reviewed by Antti Koivisto.

        Rebaselined the tests.

        * web-platform-tests/css/css-scoping/stylesheet-title-002-expected.txt: Rebaselined. The test now
        doesn't throw but fails with the actual check the test is intending to check.
        * web-platform-tests/css/cssom/selectorText-modification-restyle-002-expected.txt: Rebaselined
        now that all test cases pass.
        * web-platform-tests/shadow-dom/ShadowRoot-interface-expected.txt: Ditto.

2018-11-28  Ryosuke Niwa  <rniwa@webkit.org>

        Update web-platform-tests/shadow-dom
        https://bugs.webkit.org/show_bug.cgi?id=192137

        Reviewed by Antti Koivisto.

        Re-imported the shadow DOM tests from wpt.

        * resources/import-expectations.json:
        * web-platform-tests/shadow-dom/ShadowRoot-interface.html:
        * web-platform-tests/shadow-dom/event-dispatch-order.tentative-expected.txt: Added.
        * web-platform-tests/shadow-dom/event-dispatch-order.tentative.html: Added.
        * web-platform-tests/shadow-dom/input-type-radio-expected.txt: Added.
        * web-platform-tests/shadow-dom/input-type-radio.html: Added.
        * web-platform-tests/shadow-dom/resources/shadow-dom.js:
        (dispatchEventWithLog):
        (assert_event_path_equals):
        * web-platform-tests/shadow-dom/slots-outside-shadow-dom-expected.txt: Added.
        * web-platform-tests/shadow-dom/slots-outside-shadow-dom.html: Added.
        * web-platform-tests/shadow-dom/w3c-import.log:

2018-11-29  Youenn Fablet  <youenn@apple.com>

        Updating a service worker during a navigation load sometimes makes the load fail
        https://bugs.webkit.org/show_bug.cgi?id=191986
        <rdar://problem/46259790>

        Reviewed by Chris Dumez.

        * web-platform-tests/service-workers/service-worker/resources/trickle.py: Added.
        (main):
        * web-platform-tests/service-workers/service-worker/resources/update-fetch-worker.py: Added.
        (main):
        * web-platform-tests/service-workers/service-worker/update-on-navigation.https-expected.txt: Added.
        * web-platform-tests/service-workers/service-worker/update-on-navigation.https.html: Added.

2018-11-29  Rob Buis  <rbuis@igalia.com>

        Import fetch/api/cors tests
        https://bugs.webkit.org/show_bug.cgi?id=192092

        Reviewed by Frédéric Wang.

        Import to most recent checkout since some old
        tests like cors-multiple-origins.js were incorrect.

        * resources/import-expectations.json:
        * web-platform-tests/fetch/api/cors/cors-expose-star-worker.html: Removed.
        * web-platform-tests/fetch/api/cors/cors-expose-star.html: Removed.
        * web-platform-tests/fetch/api/cors/cors-expose-star.sub.any-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/fetch/api/cors/cors-expose-star-expected.txt.
        * web-platform-tests/fetch/api/cors/cors-expose-star.sub.any.html: Added.
        * web-platform-tests/fetch/api/cors/cors-expose-star.sub.any.js: Renamed from LayoutTests/imported/w3c/web-platform-tests/fetch/api/cors/cors-expose-star.js.
        (sharedHeaders.string_appeared_here.promise_test):
        (string_appeared_here.promise_test):
        * web-platform-tests/fetch/api/cors/cors-expose-star.sub.any.worker-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/fetch/api/cors/cors-expose-star-worker-expected.txt.
        * web-platform-tests/fetch/api/cors/cors-expose-star.sub.any.worker.html: Added.
        * web-platform-tests/fetch/api/cors/cors-filtering-worker.html: Removed.
        * web-platform-tests/fetch/api/cors/cors-filtering.html: Removed.
        * web-platform-tests/fetch/api/cors/cors-filtering.sub.any-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/fetch/api/cors/cors-filtering-expected.txt.
        * web-platform-tests/fetch/api/cors/cors-filtering.sub.any.html: Added.
        * web-platform-tests/fetch/api/cors/cors-filtering.sub.any.js: Renamed from LayoutTests/imported/w3c/web-platform-tests/fetch/api/cors/cors-filtering.js.
        (corsFilter):
        (corsExposeFilter):
        * web-platform-tests/fetch/api/cors/cors-filtering.sub.any.worker-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/fetch/api/cors/cors-filtering-worker-expected.txt.
        * web-platform-tests/fetch/api/cors/cors-filtering.sub.any.worker.html: Added.
        * web-platform-tests/fetch/api/cors/cors-multiple-origins-worker-expected.txt: Removed.
        * web-platform-tests/fetch/api/cors/cors-multiple-origins-worker.html: Removed.
        * web-platform-tests/fetch/api/cors/cors-multiple-origins.html: Removed.
        * web-platform-tests/fetch/api/cors/cors-multiple-origins.js: Removed.
        * web-platform-tests/fetch/api/cors/cors-multiple-origins.sub.any-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/fetch/api/cors/cors-multiple-origins-expected.txt.
        * web-platform-tests/fetch/api/cors/cors-multiple-origins.sub.any.html: Added.
        * web-platform-tests/fetch/api/cors/cors-multiple-origins.sub.any.js: Added.
        (corsMultipleOrigins):
        * web-platform-tests/fetch/api/cors/cors-multiple-origins.sub.any.worker-expected.txt: Added.
        * web-platform-tests/fetch/api/cors/cors-multiple-origins.sub.any.worker.html: Added.
        * web-platform-tests/fetch/api/cors/cors-preflight-not-cors-safelisted.any-expected.txt: Added.
        * web-platform-tests/fetch/api/cors/cors-preflight-not-cors-safelisted.any.html: Added.
        * web-platform-tests/fetch/api/cors/cors-preflight-not-cors-safelisted.any.js: Added.
        (runTests):
        * web-platform-tests/fetch/api/cors/cors-preflight-not-cors-safelisted.any.worker-expected.txt: Added.
        * web-platform-tests/fetch/api/cors/cors-preflight-not-cors-safelisted.any.worker.html: Added.
        * web-platform-tests/fetch/api/cors/cors-preflight.any.js:
        (headerNames): Deleted.
        (): Deleted.
        (corsPreflight): Deleted.
        * web-platform-tests/fetch/api/cors/resources/corspreflight.js: Copied from LayoutTests/imported/w3c/web-platform-tests/fetch/api/cors/cors-preflight.any.js.
        (headerNames):
        (corsPreflight):
        * web-platform-tests/fetch/api/cors/resources/not-cors-safelisted.json: Added.
        * web-platform-tests/fetch/api/cors/resources/w3c-import.log: Added.
        * web-platform-tests/fetch/api/cors/sandboxed-iframe-expected.txt: Added.
        * web-platform-tests/fetch/api/cors/sandboxed-iframe.html: Added.
        * web-platform-tests/fetch/api/cors/w3c-import.log:

2018-11-28  Rob Buis  <rbuis@igalia.com>

        [XHR] Document.lastModified doesn't work for non-rendered documents
        https://bugs.webkit.org/show_bug.cgi?id=179375

        Reviewed by Alexey Proskuryakov.

        * web-platform-tests/xhr/responsexml-document-properties-expected.txt:

2018-11-28  Ali Juma  <ajuma@chromium.org>

        Intersection Observer: rootMargin: '' gives weird results
        https://bugs.webkit.org/show_bug.cgi?id=191975

        Reviewed by Simon Fraser.

        Add test coverage.

        * web-platform-tests/intersection-observer/empty-root-margin-expected.txt: Added.
        * web-platform-tests/intersection-observer/empty-root-margin.html: Added.

2018-11-27  Rob Buis  <rbuis@igalia.com>

        Block more ports (427, 548, 6697)
        https://bugs.webkit.org/show_bug.cgi?id=186092

        Reviewed by Frédéric Wang.

        Update request-bad-port.html to latest version.

        * web-platform-tests/fetch/api/request/request-bad-port-expected.txt:
        * web-platform-tests/fetch/api/request/request-bad-port.html:

2018-11-27  Chris Dumez  <cdumez@apple.com>

        Resync service-workers web platform tests from upstream
        https://bugs.webkit.org/show_bug.cgi?id=192035

        Reviewed by Youenn Fablet.

        Resync service-workers web platform tests from upstream 73507a79fc.

        * web-platform-tests/: Updated.

2018-11-27  Javier Fernandez  <jfernandez@igalia.com>

        [css-grid] align-self center and position sticky don't work together
        https://bugs.webkit.org/show_bug.cgi?id=191963

        Reviewed by Manuel Rego Casasnovas.

        This change makes several cases of the following tests to pass now.

        * web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-sticky-positioned-items-001-expected.txt:
        * web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-sticky-positioned-items-002-expected.txt:
        * web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-sticky-positioned-items-001-expected.txt:
        * web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-sticky-positioned-items-002-expected.txt:

2018-11-26  Javier Fernandez  <jfernandez@igalia.com>

        [css-grid] absolute positioned child is sized wrongly when using auto-fit, generating spurious collapsed tracks
        https://bugs.webkit.org/show_bug.cgi?id=191938

        Reviewed by Manuel Rego Casasnovas.

        This change makes several cases of the following tests to pass now.

        * web-platform-tests/css/css-grid/abspos/grid-positioned-items-and-autofit-tracks-004-expected.txt:
        * web-platform-tests/css/css-grid/abspos/grid-positioned-items-and-autofit-tracks-005-expected.txt:
        * web-platform-tests/css/css-grid/abspos/grid-positioned-items-and-autofit-tracks-006-expected.txt:
        * web-platform-tests/css/css-grid/abspos/grid-positioned-items-and-autofit-tracks-007-expected.txt:

2018-11-26  Manuel Rego Casasnovas  <rego@igalia.com>

        [css-grid] Fix grid container sizing under min-content height
        https://bugs.webkit.org/show_bug.cgi?id=191889

        Reviewed by Javier Fernandez.

        Imported tests from WPT.

        * web-platform-tests/css/css-grid/grid-model/grid-container-sizing-constraints-001-expected.txt: Added.
        * web-platform-tests/css/css-grid/grid-model/grid-container-sizing-constraints-001.html: Added.
        * web-platform-tests/css/css-grid/grid-model/w3c-import.log:

2018-11-23  Javier Fernandez  <jfernandez@igalia.com>

        [css-grid] Implement Baseline Alignment for grid items
        https://bugs.webkit.org/show_bug.cgi?id=145566

        Reviewed by Manuel Rego Casasnovas.

        Updated test expectations of severla tests, that are now passing with the new code.

        * resources/import-expectations.json:
        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-001-expected.txt:
        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-002-expected.txt:
        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-003-expected.txt:
        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-004-expected.txt:
        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-005-expected.txt:
        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-006-expected.txt:
        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-007-expected.txt:
        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-008-expected.txt:
        * web-platform-tests/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-001-expected.txt:
        * web-platform-tests/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-002-expected.txt:
        * web-platform-tests/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-003-expected.txt:
        * web-platform-tests/css/css-grid/alignment/grid-column-axis-self-baseline-synthesized-004-expected.txt:
        * web-platform-tests/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-001-expected.txt:
        * web-platform-tests/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-002-expected.txt:
        * web-platform-tests/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-003-expected.txt:
        * web-platform-tests/css/css-grid/alignment/grid-row-axis-self-baseline-synthesized-004-expected.txt:
        * web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-001-expected.txt:
        * web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-002-expected.txt:
        * web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-003-expected.txt:
        * web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-007.html:
        * web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-008.html:
        * web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-009.html:
        * web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-010.html:
        * web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-011.html:
        * web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-012.html:
        * web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-002-expected.txt:
        * web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-vertical-lr-002-expected.txt:
        * web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-vertical-rl-002-expected.txt:
        * web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-002-expected.txt:
        * web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-lr-002-expected.txt:
        * web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-rl-002-expected.txt:

2018-11-20  Manuel Rego Casasnovas  <rego@igalia.com>

        [css-grid] Consider scrollbars in populateGridPositionsForDirection()
        https://bugs.webkit.org/show_bug.cgi?id=191656

        Reviewed by Javier Fernandez.

        Imported tests from WPT.

        * web-platform-tests/css/css-grid/grid-model/grid-container-scrollbar-001-expected.html: Added.
        * web-platform-tests/css/css-grid/grid-model/grid-container-scrollbar-001.html: Added.
        * web-platform-tests/css/css-grid/grid-model/grid-container-scrollbar-vertical-lr-001-expected.html: Added.
        * web-platform-tests/css/css-grid/grid-model/grid-container-scrollbar-vertical-lr-001.html: Added.
        * web-platform-tests/css/css-grid/grid-model/grid-container-scrollbar-vertical-rl-001-expected.html: Added.
        * web-platform-tests/css/css-grid/grid-model/grid-container-scrollbar-vertical-rl-001.html: Added.
        * web-platform-tests/css/css-grid/grid-model/w3c-import.log:

2018-11-19  Rob Buis  <rbuis@igalia.com>

        Setting document.title should have no effect for non SVG/HTML documents
        https://bugs.webkit.org/show_bug.cgi?id=191643

        Reviewed by Chris Dumez.

        * web-platform-tests/html/dom/documents/dom-tree-accessors/document.title-not-in-html-svg-expected.txt: Added.
        * web-platform-tests/html/dom/documents/dom-tree-accessors/document.title-not-in-html-svg.html: Added.

2018-11-18  Yusuke Suzuki  <yusukesuzuki@slowstart.org>

        Unreviewed, rolling in the rest of r237254
        https://bugs.webkit.org/show_bug.cgi?id=190340

        * web-platform-tests/html/webappapis/scripting/events/inline-event-handler-ordering-expected.txt:
        * web-platform-tests/html/webappapis/scripting/events/invalid-uncompiled-raw-handler-compiled-late-expected.txt:
        * web-platform-tests/html/webappapis/scripting/processing-model-2/compile-error-in-attribute-expected.txt:
        * web-platform-tests/html/webappapis/scripting/processing-model-2/compile-error-in-body-onerror-expected.txt:

2018-11-15  Truitt Savell  <tsavell@apple.com>

        Unreviewed, rolling out r238244.

        Caused High Sierra test runs to fail early with 50 crashes and
        casued 25 API failures.

        Reverted changeset:

        "[css-logical] Implement flow-relative margin, padding and
        border shorthands"
        https://bugs.webkit.org/show_bug.cgi?id=188697
        https://trac.webkit.org/changeset/238244

2018-11-15  Oriol Brufau  <obrufau@igalia.com>

        [css-logical] Implement flow-relative margin, padding and border shorthands
        https://bugs.webkit.org/show_bug.cgi?id=188697

        Reviewed by Simon Fraser and Antti Koivisto.

        Import tests from the WPT test suite for CSS Logical Properties and Values,
        and enable the CSSLogicalEnabled runtime flag for them.

        They still have some failures because sideways writing modes have not been
        implemented yet (https://bugs.webkit.org/show_bug.cgi?id=166941).

        * web-platform-tests/css/css-logical/logical-box-border-color-expected.txt:
        * web-platform-tests/css/css-logical/logical-box-border-color.html:
        * web-platform-tests/css/css-logical/logical-box-border-shorthands-expected.txt:
        * web-platform-tests/css/css-logical/logical-box-border-shorthands.html:
        * web-platform-tests/css/css-logical/logical-box-border-style-expected.txt:
        * web-platform-tests/css/css-logical/logical-box-border-style.html:
        * web-platform-tests/css/css-logical/logical-box-border-width-expected.txt:
        * web-platform-tests/css/css-logical/logical-box-border-width.html:
        * web-platform-tests/css/css-logical/logical-box-inset-expected.txt:
        * web-platform-tests/css/css-logical/logical-box-inset.html:
        * web-platform-tests/css/css-logical/logical-box-margin-expected.txt:
        * web-platform-tests/css/css-logical/logical-box-margin.html:
        * web-platform-tests/css/css-logical/logical-box-padding-expected.txt:
        * web-platform-tests/css/css-logical/logical-box-padding.html:
        * web-platform-tests/css/css-logical/logical-box-size.html:
        * web-platform-tests/css/css-logical/resources/test-box-properties.js:
        (export.createBoxPropertyGroup):
        (export.createSizingPropertyGroup):
        (export.runTests.set test):
        (export.runTests):
        * web-platform-tests/css/css-logical/resources/test-shared.js: Added.
        (export.testCSSValues):
        (export.testComputedValues):
        (export.makeDeclaration):
        * web-platform-tests/css/css-logical/resources/w3c-import.log:

2018-11-15  Truitt Savell  <tsavell@apple.com>

        Unreviewed, rolling out r238220.

        Introduced failing tests to iOS and is slowing down EWS

        Reverted changeset:

        "[css-grid] Consider scrollbars in
        populateGridPositionsForDirection()"
        https://bugs.webkit.org/show_bug.cgi?id=191656
        https://trac.webkit.org/changeset/238220

2018-11-15  Youenn Fablet  <youenn@apple.com>

        Update RTCPeerConnection JS built-ins to be closer to specWe
        https://bugs.webkit.org/show_bug.cgi?id=191665

        Reviewed by Eric Carlson.

        * web-platform-tests/webrtc/rtcpeerconnection/rtcpeerconnection-idl-expected.txt:

2018-11-15  Manuel Rego Casasnovas  <rego@igalia.com>

        [css-grid] Consider scrollbars in populateGridPositionsForDirection()
        https://bugs.webkit.org/show_bug.cgi?id=191656

        Reviewed by Javier Fernandez.

        Imported tests from WPT.

        * web-platform-tests/css/css-grid/grid-model/grid-container-scrollbar-001-expected.html: Added.
        * web-platform-tests/css/css-grid/grid-model/grid-container-scrollbar-001.html: Added.
        * web-platform-tests/css/css-grid/grid-model/grid-container-scrollbar-vertical-lr-001-expected.html: Added.
        * web-platform-tests/css/css-grid/grid-model/grid-container-scrollbar-vertical-lr-001.html: Added.
        * web-platform-tests/css/css-grid/grid-model/grid-container-scrollbar-vertical-rl-001-expected.html: Added.
        * web-platform-tests/css/css-grid/grid-model/grid-container-scrollbar-vertical-rl-001.html: Added.
        * web-platform-tests/css/css-grid/grid-model/w3c-import.log:

2018-11-14  Youenn Fablet  <youenn@apple.com>

        Convert libwebrtc error types to DOM exceptions
        https://bugs.webkit.org/show_bug.cgi?id=191590

        Reviewed by Alex Christensen.

        * web-platform-tests/webrtc/RTCConfiguration-rtcpMuxPolicy-expected.txt:
        * web-platform-tests/webrtc/RTCPeerConnection-setLocalDescription-answer-expected.txt:
        * web-platform-tests/webrtc/RTCRtpTransceiver.https-expected.txt:

2018-11-14  Youenn Fablet  <youenn@apple.com>

        Calling removeTrack on different RTCPeerConnection should throw InvalidAccessError
        https://bugs.webkit.org/show_bug.cgi?id=191603

        Reviewed by Chris Dumez.

        * web-platform-tests/webrtc/RTCPeerConnection-removeTrack.https-expected.txt:

2018-11-14  Youenn Fablet  <youenn@apple.com>

        Add support for RTCRtpCodecParameters.sdpFmtpLine
        https://bugs.webkit.org/show_bug.cgi?id=191591

        Reviewed by Eric Carlson.

        * web-platform-tests/webrtc/protocol/video-codecs.https-expected.txt:

2018-11-14  Youenn Fablet  <youenn@apple.com>

        Add support for transport and peerConnection stats
        https://bugs.webkit.org/show_bug.cgi?id=191592

        Reviewed by Alex Christensen.

        * web-platform-tests/webrtc/RTCPeerConnection-getStats.https-expected.txt:
        * web-platform-tests/webrtc/RTCRtpReceiver-getStats.https-expected.txt:
        * web-platform-tests/webrtc/RTCRtpSender-getStats.https-expected.txt:
        * web-platform-tests/webrtc/getstats-expected.txt:

2018-11-13  Youenn Fablet  <youenn@apple.com>

        RTCPeerConnection.getTransceivers is not always exposing all transceivers
        https://bugs.webkit.org/show_bug.cgi?id=191589

        Reviewed by Eric Carlson.

        * web-platform-tests/webrtc/RTCRtpTransceiver.https-expected.txt:

2018-11-13  Youenn Fablet  <youenn@apple.com>

        Refresh WPT webrtc tests to ToT
        https://bugs.webkit.org/show_bug.cgi?id=191564

        Reviewed by Eric Carlson.

        Also remove QUIC specific tests that are not related to webrtc-pc.
        * resources/import-expectations.json:
        * web-platform-tests/webrtc: refreshed.

2018-11-12  Rob Buis  <rbuis@igalia.com>

        Content-Type parameter values should allow empty quoted strings
        https://bugs.webkit.org/show_bug.cgi?id=191388

        Reviewed by Dean Jackson.

        Include improved expected test result and updated mime-type test:
        https://github.com/whatwg/mimesniff/pull/79

        * web-platform-tests/mimesniff/mime-types/charset-parameter.window-expected.txt:
        * web-platform-tests/mimesniff/mime-types/parsing.any-expected.txt:
        * web-platform-tests/mimesniff/mime-types/parsing.any.worker-expected.txt:
        * web-platform-tests/mimesniff/mime-types/resources/mime-types.json:
        * web-platform-tests/xhr/overridemimetype-blob-expected.txt:

2018-11-12  Sihui Liu  <sihui_liu@apple.com>

        imported/w3c/web-platform-tests/IndexedDB/keygenerator-explicit.html crashing on iOS device
        https://bugs.webkit.org/show_bug.cgi?id=191500

        Reviewed by Dean Jackson.

        * web-platform-tests/IndexedDB/keygenerator-explicit-expected.txt:

2018-11-12  Youenn Fablet  <youenn@apple.com>

        Support setting stream ids when adding a transceiver
        https://bugs.webkit.org/show_bug.cgi?id=191307

        Reviewed by Eric Carlson.

        * web-platform-tests/webrtc/RTCPeerConnection-transceivers.https-expected.txt:
        * web-platform-tests/webrtc/RTCRtpTransceiver.https-expected.txt:

2018-11-12  Eric Carlson  <eric.carlson@apple.com>

        Require <iframe allow="display"> for an iframe to use getDisplayMedia
        https://bugs.webkit.org/show_bug.cgi?id=191505
        <rdar://problem/45968811>

        Reviewed by Jer Noble.

        * web-platform-tests/mediacapture-streams/MediaStream-default-feature-policy.https-expected.txt:

2018-11-11  Javier Fernandez  <jfernandez@igalia.com>

        [css-grid] Import additional grid layout test from the WPT suite
        https://bugs.webkit.org/show_bug.cgi?id=191369

        Reviewed by Manuel Rego Casasnovas.

        New Grid Layout tests from the WPT suite.

        * resources/import-expectations.json:
        * web-platform-tests/css/css-grid/META.yml: Added.
        * web-platform-tests/css/css-grid/OWNERS: Removed.
        * web-platform-tests/css/css-grid/abspos/support/grid.css:
        (.thirdRowThirdColumn):
        * web-platform-tests/css/css-grid/abspos/support/w3c-import.log:
        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-001-expected.txt: Added.
        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-001.html: Added.
        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-002-expected.txt: Added.
        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-002.html: Added.
        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-003-expected.txt: Added.
        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-003.html: Added.
        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-004-expected.txt: Added.
        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-004.html: Added.
        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-005-expected.txt: Added.
        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-005.html: Added.
        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-006-expected.txt: Added.
        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-006.html: Added.
        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-007-expected.txt: Added.
        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-007.html: Added.
        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-008-expected.txt: Added.
        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-008.html: Added.
        * web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-001-expected.txt:
        * web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-001.html:
        * web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-002-expected.txt:
        * web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-002.html:
        * web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-003-expected.txt: Added.
        * web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-003.html: Added.
        * web-platform-tests/css/css-grid/alignment/self-baseline/w3c-import.log:
        * web-platform-tests/css/css-grid/alignment/support/style-change.js:
        (evaluateStyleChangeMultiple):
        * web-platform-tests/css/css-grid/alignment/support/w3c-import.log:
        * web-platform-tests/css/css-grid/alignment/test-expected.txt: Added.
        * web-platform-tests/css/css-grid/alignment/w3c-import.log:
        * web-platform-tests/css/css-grid/grid-definition/support/grid.css:
        (.thirdRowThirdColumn):
        * web-platform-tests/css/css-grid/grid-definition/support/w3c-import.log:
        * web-platform-tests/css/css-grid/grid-items/anonymous-grid-item-001.html: Added.
        * web-platform-tests/css/css-grid/grid-items/grid-items-relative-offsets-001-expected.txt: Added.
        * web-platform-tests/css/css-grid/grid-items/grid-items-relative-offsets-001.html: Added.
        * web-platform-tests/css/css-grid/grid-items/grid-items-relative-offsets-002-expected.txt: Added.
        * web-platform-tests/css/css-grid/grid-items/grid-items-relative-offsets-002.html: Added.
        * web-platform-tests/css/css-grid/grid-items/item-with-table-with-infinite-max-intrinsic-width-expected.html: Added.
        * web-platform-tests/css/css-grid/grid-items/item-with-table-with-infinite-max-intrinsic-width.html: Added.
        * web-platform-tests/css/css-grid/grid-items/support/grid.css:
        (.thirdRowThirdColumn):
        * web-platform-tests/css/css-grid/grid-items/support/w3c-import.log:
        * web-platform-tests/css/css-grid/grid-items/table-with-infinite-max-intrinsic-width-expected.html: Added.
        * web-platform-tests/css/css-grid/grid-items/table-with-infinite-max-intrinsic-width.html: Added.
        * web-platform-tests/css/css-grid/grid-items/w3c-import.log:
        * web-platform-tests/css/css-grid/grid-model/grid-container-ignores-first-letter-002-expected.html: Added.
        * web-platform-tests/css/css-grid/grid-model/grid-container-ignores-first-letter-002.html: Added.
        * web-platform-tests/css/css-grid/grid-model/support/grid.css:
        (.thirdRowThirdColumn):
        * web-platform-tests/css/css-grid/grid-model/support/w3c-import.log:
        * web-platform-tests/css/css-grid/grid-model/w3c-import.log:
        * web-platform-tests/css/css-grid/implicit-grids/w3c-import.log:
        * web-platform-tests/css/css-grid/inheritance-expected.txt: Added.
        * web-platform-tests/css/css-grid/inheritance.html: Added.
        * web-platform-tests/css/css-grid/layout-algorithm/grid-percent-cols-filled-shrinkwrap-001-expected.html: Added.
        * web-platform-tests/css/css-grid/layout-algorithm/grid-percent-cols-filled-shrinkwrap-001.html: Added.
        * web-platform-tests/css/css-grid/layout-algorithm/grid-percent-cols-spanned-shrinkwrap-001-expected.html: Added.
        * web-platform-tests/css/css-grid/layout-algorithm/grid-percent-cols-spanned-shrinkwrap-001.html: Added.
        * web-platform-tests/css/css-grid/layout-algorithm/grid-percent-rows-filled-shrinkwrap-001-expected.html: Added.
        * web-platform-tests/css/css-grid/layout-algorithm/grid-percent-rows-filled-shrinkwrap-001.html: Added.
        * web-platform-tests/css/css-grid/layout-algorithm/grid-percent-rows-spanned-shrinkwrap-001-expected.html: Added.
        * web-platform-tests/css/css-grid/layout-algorithm/grid-percent-rows-spanned-shrinkwrap-001.html: Added.
        * web-platform-tests/css/css-grid/layout-algorithm/w3c-import.log:
        * web-platform-tests/css/css-grid/parsing/grid-area-invalid-expected.txt: Added.
        * web-platform-tests/css/css-grid/parsing/grid-area-invalid.html: Added.
        * web-platform-tests/css/css-grid/parsing/grid-area-valid-expected.txt: Added.
        * web-platform-tests/css/css-grid/parsing/grid-area-valid.html: Added.
        * web-platform-tests/css/css-grid/parsing/grid-auto-columns-invalid-expected.txt: Added.
        * web-platform-tests/css/css-grid/parsing/grid-auto-columns-invalid.html: Added.
        * web-platform-tests/css/css-grid/parsing/grid-auto-columns-valid-expected.txt: Added.
        * web-platform-tests/css/css-grid/parsing/grid-auto-columns-valid.html: Added.
        * web-platform-tests/css/css-grid/parsing/grid-auto-flow-invalid-expected.txt: Added.
        * web-platform-tests/css/css-grid/parsing/grid-auto-flow-invalid.html: Added.
        * web-platform-tests/css/css-grid/parsing/grid-auto-flow-valid-expected.txt: Added.
        * web-platform-tests/css/css-grid/parsing/grid-auto-flow-valid.html: Added.
        * web-platform-tests/css/css-grid/parsing/grid-auto-rows-invalid-expected.txt: Added.
        * web-platform-tests/css/css-grid/parsing/grid-auto-rows-invalid.html: Added.
        * web-platform-tests/css/css-grid/parsing/grid-auto-rows-valid-expected.txt: Added.
        * web-platform-tests/css/css-grid/parsing/grid-auto-rows-valid.html: Added.
        * web-platform-tests/css/css-grid/parsing/grid-template-areas-invalid-expected.txt: Added.
        * web-platform-tests/css/css-grid/parsing/grid-template-areas-invalid.html: Added.
        * web-platform-tests/css/css-grid/parsing/grid-template-areas-valid-expected.txt: Added.
        * web-platform-tests/css/css-grid/parsing/grid-template-areas-valid.html: Added.
        * web-platform-tests/css/css-grid/parsing/w3c-import.log: Added.
        * web-platform-tests/css/css-grid/placement/w3c-import.log:
        * web-platform-tests/css/css-grid/test-plan/w3c-import.log:
        * web-platform-tests/css/css-grid/w3c-import.log:
        * web-platform-tests/css/support/META.yml: Added.
        * web-platform-tests/css/support/OWNERS: Removed.
        * web-platform-tests/css/support/computed-testcommon.js: Added.
        (test_computed_value):
        * web-platform-tests/css/support/grid.css:
        (.thirdRowThirdColumn):
        * web-platform-tests/css/support/inheritance-testcommon.js: Added.
        (assert_initial):
        * web-platform-tests/css/support/parsing-testcommon.js: Added.
        (test_valid_value):
        * web-platform-tests/css/support/support/w3c-import.log:
        * web-platform-tests/css/support/w3c-import.log:


2018-11-09  Andy Estes  <aestes@apple.com>

        [Payment Request] canMakePayment() should not consider serialized payment method data
        https://bugs.webkit.org/show_bug.cgi?id=191432

        Reviewed by Dean Jackson.

        * web-platform-tests/payment-request/payment-request-canmakepayment-method.https-expected.txt: Added.

2018-11-09  Jer Noble  <jer.noble@apple.com>

        [Cocoa] Fix failing imported/w3c/web-platform-tests/media-source/mediasource-changetype-play.html test
        https://bugs.webkit.org/show_bug.cgi?id=191396

        Reviewed by Eric Carlson.

        Modify the changetype test suite to include a HEVC version.

        * web-platform-tests/media-source/hevc/test-v-128k-320x240-24fps-8kfr.mp4: Added.
        * web-platform-tests/media-source/mediasource-changetype-util.js:
        (findSupportedChangeTypeTestTypes):

2018-11-08  Andy Estes  <aestes@apple.com>

        [Payment Request] Update web platform tests
        https://bugs.webkit.org/show_bug.cgi?id=191426

        Updated web-platform-tests/payment-request/ to match wpt as of commit 577284e.

        Reviewed by Jiewen Tan.

        * resources/import-expectations.json:
        * web-platform-tests/payment-request/META.yml:
        * web-platform-tests/payment-request/payment-request-abort-method.https.html:
        * web-platform-tests/payment-request/payment-request-canmakepayment-method-protection.https-expected.txt: Added.
        * web-platform-tests/payment-request/payment-request-canmakepayment-method-protection.https.html: Added.
        * web-platform-tests/payment-request/payment-request-canmakepayment-method.https.html:
        * web-platform-tests/payment-request/payment-request-constructor.https.html:
        * web-platform-tests/payment-request/payment-request-id-attribute.https.html:
        * web-platform-tests/payment-request/payment-response/retry-method-manual.https.html:
        * web-platform-tests/payment-request/rejects_if_not_active.https.html:
        * web-platform-tests/payment-request/w3c-import.log:

2018-11-07  Youenn Fablet  <youenn@apple.com>

        Allow setting RTCRtpTransceiver.direction
        https://bugs.webkit.org/show_bug.cgi?id=191346

        Reviewed by Eric Carlson.

        * web-platform-tests/webrtc/RTCPeerConnection-remote-track-mute.https-expected.txt:
        * web-platform-tests/webrtc/RTCPeerConnection-transceivers.https-expected.txt:
        * web-platform-tests/webrtc/RTCRtpTransceiver.https-expected.txt:

2018-11-06  Youenn Fablet  <youenn@apple.com>

        Reenable imported/w3c/web-platform-tests/webrtc/RTCPeerConnection-ontrack.https.html
        https://bugs.webkit.org/show_bug.cgi?id=191343

        Unreviewed.

        * web-platform-tests/webrtc/RTCPeerConnection-ontrack.https-expected.txt:

2018-11-06  Youenn Fablet  <youenn@apple.com>

        sender.replaceTrack() fails with InvalidStateError if the transceiver.direction is "inactive"
        https://bugs.webkit.org/show_bug.cgi?id=191202

        Reviewed by Eric Carlson.

        Changes made upstreamed.

        * web-platform-tests/webrtc/RTCPeerConnection-setRemoteDescription-replaceTrack.https-expected.txt:
        * web-platform-tests/webrtc/RTCPeerConnection-setRemoteDescription-replaceTrack.https.html:

2018-11-06  Youenn Fablet  <youenn@apple.com>

        Add support for sender/receiver getCapabilities
        https://bugs.webkit.org/show_bug.cgi?id=191192

        Reviewed by Eric Carlson.

        * web-platform-tests/webrtc/RTCRtpCapabilities-helper.js:
        (string_appeared_here.validateRtpCapabilities): Change already made upstream.
        * web-platform-tests/webrtc/RTCRtpReceiver-getCapabilities-expected.txt:
        * web-platform-tests/webrtc/RTCRtpSender-getCapabilities-expected.txt:
        * web-platform-tests/webrtc/RTCRtpTransceiver-setCodecPreferences-expected.txt:

2018-11-06  Youenn Fablet  <youenn@apple.com>

        Support onremovetrack for RTCPeerConnection removed tracks
        https://bugs.webkit.org/show_bug.cgi?id=191299

        Reviewed by Eric Carlson.

        * web-platform-tests/webrtc/RTCPeerConnection-setRemoteDescription-tracks.https-expected.txt:

2018-11-06  Javier Fernandez  <jfernandez@igalia.com>

        CSS grid elements with justify-content: space-around have extra whitespace, sometimes a lot
        https://bugs.webkit.org/show_bug.cgi?id=191308

        Reviewed by Dean Jackson.

        Imported WPT to cover the behavior changes added in this patch.

        * resources/import-expectations.json:
        * web-platform-tests/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-001-expected.txt: Added.
        * web-platform-tests/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-001.html: Added.
        * web-platform-tests/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-002-expected.txt: Added.
        * web-platform-tests/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-002.html: Added.
        * web-platform-tests/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-003-expected.txt: Added.
        * web-platform-tests/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-003.html: Added.
        * web-platform-tests/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-004-expected.txt: Added.
        * web-platform-tests/css/css-grid/layout-algorithm/grid-content-distribution-must-account-for-track-sizing-004.html: Added.
        * web-platform-tests/css/css-grid/layout-algorithm/w3c-import.log:

2018-11-06  Youenn Fablet  <youenn@apple.com>

        Layout Test imported/w3c/web-platform-tests/webrtc/RTCPeerConnection-setRemoteDescription-tracks.https.html is flaky
        https://bugs.webkit.org/show_bug.cgi?id=191278

        Reviewed by Eric Carlson.

        Updating test according upstreamed WPT.
        Rebased test accordingly.

        * web-platform-tests/webrtc/RTCPeerConnection-setRemoteDescription-tracks.https-expected.txt:
        * web-platform-tests/webrtc/RTCPeerConnection-setRemoteDescription-tracks.https.html:

2018-11-06  Ali Juma  <ajuma@chromium.org>

        [IntersectionObserver] Account for CSS zoom when computing client rects
        https://bugs.webkit.org/show_bug.cgi?id=191282

        Reviewed by Simon Fraser.

        Update expectation for test case that now passes.

        * web-platform-tests/intersection-observer/bounding-box-expected.txt:

2018-11-06  Antoine Quint  <graouts@apple.com>

        [Web Animations] Update all tests to match the latest API changes
        https://bugs.webkit.org/show_bug.cgi?id=191302
        <rdar://problem/41000438>

        Reviewed by Dean Jackson.

        * web-platform-tests/css-timing-1/cubic-bezier-timing-functions-output.html:
        * web-platform-tests/web-animations/META.yml: Added.
        * web-platform-tests/web-animations/README.md: Added.
        * web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt:
        * web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property.html:
        * web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt:
        * web-platform-tests/web-animations/animation-model/animation-types/addition-per-property.html:
        * web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt:
        * web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property.html:
        * web-platform-tests/web-animations/animation-model/animation-types/property-list.js:
        * web-platform-tests/web-animations/animation-model/animation-types/property-types.js:
        * web-platform-tests/web-animations/animation-model/combining-effects/applying-the-composited-result-expected.txt: Added.
        * web-platform-tests/web-animations/animation-model/combining-effects/applying-the-composited-result.html: Added.
        * web-platform-tests/web-animations/animation-model/keyframe-effects/effect-value-interval-distance-expected.txt: Added.
        * web-platform-tests/web-animations/animation-model/keyframe-effects/effect-value-interval-distance.html: Added.
        * web-platform-tests/web-animations/animation-model/keyframe-effects/effect-value-iteration-composite-operation.html:
        * web-platform-tests/web-animations/interfaces/Animatable/animate-expected.txt:
        * web-platform-tests/web-animations/interfaces/Animatable/animate.html:
        * web-platform-tests/web-animations/interfaces/Animatable/getAnimations.html:
        * web-platform-tests/web-animations/interfaces/Animation/cancel.html:
        * web-platform-tests/web-animations/interfaces/Animation/constructor.html:
        * web-platform-tests/web-animations/interfaces/Animation/effect.html:
        * web-platform-tests/web-animations/interfaces/Animation/finish-expected.txt: Removed.
        * web-platform-tests/web-animations/interfaces/Animation/finish.html: Removed.
        * web-platform-tests/web-animations/interfaces/Animation/finished.html:
        * web-platform-tests/web-animations/interfaces/Animation/idlharness-expected.txt: Removed.
        * web-platform-tests/web-animations/interfaces/Animation/idlharness.html: Removed.
        * web-platform-tests/web-animations/interfaces/Animation/idlharness.window.js: Added.
        * web-platform-tests/web-animations/interfaces/Animation/onfinish.html:
        * web-platform-tests/web-animations/interfaces/Animation/playbackRate-expected.txt: Removed.
        * web-platform-tests/web-animations/interfaces/Animation/playbackRate.html: Removed.
        * web-platform-tests/web-animations/interfaces/Animation/ready.html:
        * web-platform-tests/web-animations/interfaces/AnimationEffect/getComputedTiming-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/web-animations/interfaces/AnimationEffectTiming/getComputedTiming-expected.txt.
        * web-platform-tests/web-animations/interfaces/AnimationEffect/getComputedTiming.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/web-animations/interfaces/AnimationEffectTiming/getComputedTiming.html.
        * web-platform-tests/web-animations/interfaces/AnimationEffect/updateTiming-expected.txt: Added.
        * web-platform-tests/web-animations/interfaces/AnimationEffect/updateTiming.html: Added.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/delay-expected.txt: Removed.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/delay.html: Removed.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/direction-expected.txt: Removed.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/direction.html: Removed.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/duration-expected.txt: Removed.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/duration.html: Removed.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/easing-expected.txt: Removed.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/easing.html: Removed.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/endDelay-expected.txt: Removed.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/endDelay.html: Removed.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/fill-expected.txt: Removed.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/fill.html: Removed.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/idlharness-expected.txt: Removed.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/idlharness.html: Removed.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/iterationStart-expected.txt: Removed.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/iterationStart.html: Removed.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/iterations-expected.txt: Removed.
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/iterations.html: Removed.
        * web-platform-tests/web-animations/interfaces/AnimationPlaybackEvent/idlharness-expected.txt: Removed.
        * web-platform-tests/web-animations/interfaces/AnimationPlaybackEvent/idlharness.html: Removed.
        * web-platform-tests/web-animations/interfaces/AnimationPlaybackEvent/idlharness.window.js: Added.
        * web-platform-tests/web-animations/interfaces/Document/getAnimations-expected.txt:
        * web-platform-tests/web-animations/interfaces/Document/getAnimations.html:
        * web-platform-tests/web-animations/interfaces/DocumentTimeline/idlharness-expected.txt: Removed.
        * web-platform-tests/web-animations/interfaces/DocumentTimeline/idlharness.html: Removed.
        * web-platform-tests/web-animations/interfaces/DocumentTimeline/idlharness.window.js: Added.
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/composite.html:
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/constructor-expected.txt:
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/constructor.html:
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/copy-constructor-expected.txt:
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/copy-constructor.html:
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/idlharness-expected.txt: Removed.
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/idlharness.html: Removed.
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/idlharness.window.js: Added.
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/iterationComposite.html:
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/processing-a-keyframes-argument-001-expected.txt:
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/processing-a-keyframes-argument-001.html:
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/setKeyframes-expected.txt:
        * web-platform-tests/web-animations/interfaces/KeyframeEffect/setKeyframes.html:
        * web-platform-tests/web-animations/resources/keyframe-tests.js:
        * web-platform-tests/web-animations/resources/timing-tests.js: Added.
        * web-platform-tests/web-animations/resources/timing-utils.js: Added.
        * web-platform-tests/web-animations/testcommon.js:
        * web-platform-tests/web-animations/timing-model/animation-effects/phases-and-states.html:
        * web-platform-tests/web-animations/timing-model/animations/canceling-an-animation-expected.txt:
        * web-platform-tests/web-animations/timing-model/animations/canceling-an-animation.html:
        * web-platform-tests/web-animations/timing-model/animations/finishing-an-animation-expected.txt:
        * web-platform-tests/web-animations/timing-model/animations/finishing-an-animation.html:
        * web-platform-tests/web-animations/timing-model/animations/pausing-an-animation-expected.txt:
        * web-platform-tests/web-animations/timing-model/animations/pausing-an-animation.html:
        * web-platform-tests/web-animations/timing-model/animations/play-states-expected.txt:
        * web-platform-tests/web-animations/timing-model/animations/play-states.html:
        * web-platform-tests/web-animations/timing-model/animations/playing-an-animation-expected.txt:
        * web-platform-tests/web-animations/timing-model/animations/playing-an-animation.html:
        * web-platform-tests/web-animations/timing-model/animations/reversing-an-animation-expected.txt:
        * web-platform-tests/web-animations/timing-model/animations/reversing-an-animation.html:
        * web-platform-tests/web-animations/timing-model/animations/seamlessly-updating-the-playback-rate-of-an-animation-expected.txt: Added.
        * web-platform-tests/web-animations/timing-model/animations/seamlessly-updating-the-playback-rate-of-an-animation.html: Added.
        * web-platform-tests/web-animations/timing-model/animations/setting-the-current-time-of-an-animation-expected.txt: Added.
        * web-platform-tests/web-animations/timing-model/animations/setting-the-current-time-of-an-animation.html: Added.
        * web-platform-tests/web-animations/timing-model/animations/setting-the-playback-rate-of-an-animation-expected.txt: Added.
        * web-platform-tests/web-animations/timing-model/animations/setting-the-playback-rate-of-an-animation.html: Added.
        * web-platform-tests/web-animations/timing-model/animations/setting-the-start-time-of-an-animation-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/web-animations/timing-model/animations/set-the-animation-start-time-expected.txt.
        * web-platform-tests/web-animations/timing-model/animations/setting-the-start-time-of-an-animation.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/web-animations/timing-model/animations/set-the-animation-start-time.html.
        * web-platform-tests/web-animations/timing-model/animations/setting-the-target-effect-of-an-animation-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/web-animations/timing-model/animations/set-the-target-effect-of-an-animation-expected.txt.
        * web-platform-tests/web-animations/timing-model/animations/setting-the-target-effect-of-an-animation.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/web-animations/timing-model/animations/set-the-target-effect-of-an-animation.html.
        * web-platform-tests/web-animations/timing-model/animations/setting-the-timeline-of-an-animation-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/web-animations/timing-model/animations/set-the-timeline-of-an-animation-expected.txt.
        * web-platform-tests/web-animations/timing-model/animations/setting-the-timeline-of-an-animation.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/web-animations/timing-model/animations/set-the-timeline-of-an-animation.html.
        * web-platform-tests/web-animations/timing-model/animations/the-current-time-of-an-animation-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/web-animations/timing-model/animations/current-time-expected.txt.
        * web-platform-tests/web-animations/timing-model/animations/the-current-time-of-an-animation.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/web-animations/timing-model/animations/current-time.html.
        * web-platform-tests/web-animations/timing-model/animations/updating-the-finished-state-expected.txt:
        * web-platform-tests/web-animations/timing-model/animations/updating-the-finished-state.html:
        * web-platform-tests/web-animations/timing-model/timelines/document-timelines.html:
        * web-platform-tests/web-animations/timing-model/timelines/update-and-send-events-expected.txt: Added.
        * web-platform-tests/web-animations/timing-model/timelines/update-and-send-events.html: Added.

2018-11-06  Rob Buis  <rbuis@igalia.com>

        Some minor X-Content-Type-Options parsing issues
        https://bugs.webkit.org/show_bug.cgi?id=191107

        Reviewed by Darin Adler.

        Update improved result.

        * web-platform-tests/fetch/nosniff/parsing-nosniff-expected.txt:

2018-11-05  Ali Juma  <ajuma@chromium.org>

        [IntersectionObserver] Update WPTs to the latest upstream version
        https://bugs.webkit.org/show_bug.cgi?id=191274

        Reviewed by Simon Fraser.

        * web-platform-tests/intersection-observer/bounding-box-expected.txt:
        * web-platform-tests/intersection-observer/bounding-box.html:
        * web-platform-tests/intersection-observer/target-in-different-window-expected.txt: Added.
        * web-platform-tests/intersection-observer/target-in-different-window.html: Added.
        * web-platform-tests/intersection-observer/w3c-import.log:

2018-11-05  Chris Dumez  <cdumez@apple.com>

        Resync html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name WPT tests
        https://bugs.webkit.org/show_bug.cgi?id=191214

        Reviewed by Geoff Garen.

        Resync html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name WPT tests from
        upstream c583bcd7eb.

        * web-platform-tests/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/creating_browsing_context_test_01-expected.txt:
        * web-platform-tests/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/creating_browsing_context_test_01.html:
        * web-platform-tests/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/no_window_open_when_term_nesting_level_nonzero.window-expected.txt: Added.
        * web-platform-tests/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/no_window_open_when_term_nesting_level_nonzero.window.html: Added.
        * web-platform-tests/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/no_window_open_when_term_nesting_level_nonzero.window.js: Added.
        (test.frame.contentWindow.onpagehide):
        (test.frame.contentDocument.onvisibilitychange):
        (test.frame.contentWindow.onbeforeunload):
        (test.frame.contentWindow.onunload):
        (test):
        (async_test):
        * web-platform-tests/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/non_automated/w3c-import.log:
        * web-platform-tests/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/open-features-tokenization-noopener-expected.txt:
        * web-platform-tests/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/open-features-tokenization-noopener.html:
        * web-platform-tests/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/resources/message-opener.html:
        * web-platform-tests/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/resources/w3c-import.log:
        * web-platform-tests/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/w3c-import.log:

2018-11-05  Ali Juma  <ajuma@chromium.org>

        [IntersectionObserver] Fix isIntersecting computation when 0 is not a threshold
        https://bugs.webkit.org/show_bug.cgi?id=191210

        Reviewed by Simon Fraser.

        Update expectation for test that now passes.

        * web-platform-tests/intersection-observer/initial-observation-with-threshold-expected.txt:

2018-11-04  Youenn Fablet  <youenn@apple.com>

        IDB should allow storing RTCCertificate
        https://bugs.webkit.org/show_bug.cgi?id=191077

        Reviewed by Chris Dumez.

        * web-platform-tests/webrtc/RTCCertificate-postMessage.html: Added.
        * web-platform-tests/webrtc/resources/RTCCertificate-postMessage-iframe.html: Added.

2018-11-04  Youenn Fablet  <youenn@apple.com>

        Add support for RTCMuxPolicy
        https://bugs.webkit.org/show_bug.cgi?id=191188

        Reviewed by Eric Carlson.

        * web-platform-tests/webrtc/RTCConfiguration-rtcpMuxPolicy-expected.txt:
        * web-platform-tests/webrtc/rtcpeerconnection/rtcpeerconnection-constructor-expected.txt:

2018-11-03  Youenn Fablet  <youenn@apple.com>

        Refresh WPT webrtc tests
        https://bugs.webkit.org/show_bug.cgi?id=191133

        Reviewed by Eric Carlson.

        * web-platform-tests/webrtc/: Refreshed.
        * web-platform-tests/webrtc/w3c-import.log:

2018-11-02  Ali Juma  <ajuma@chromium.org>

        Allow cross-document intersection observing
        https://bugs.webkit.org/show_bug.cgi?id=165746

        Reviewed by Simon Fraser.

        Update expectations for tests that now pass. 

        * web-platform-tests/intersection-observer/client-rect-expected.txt:
        * web-platform-tests/intersection-observer/cross-origin-iframe-expected.txt:
        * web-platform-tests/intersection-observer/iframe-no-root-expected.txt:
        * web-platform-tests/intersection-observer/timestamp-expected.txt:

2018-11-01  Chris Dumez  <cdumez@apple.com>

        Location object sans browsing context
        https://bugs.webkit.org/show_bug.cgi?id=191060

        Reviewed by Geoffrey Garen.

        * web-platform-tests/html/browsers/history/the-location-interface/no-browsing-context.window-expected.txt:
        Rebase WPT test now that all checks are passing.

        * web-platform-tests/html/browsers/history/the-location-interface/no-browsing-context.window.js:
        Fix bug in WPT test (https://github.com/web-platform-tests/wpt/pull/13854)

        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/url.window-expected.txt:

2018-11-01  Justin Michaud  <justin_michaud@apple.com>

        CSS Custom Properties API Should Support syntax="*" and "<length>", and handle cycles properly
        https://bugs.webkit.org/show_bug.cgi?id=191042

        Reviewed by Antti Koivisto.

        * web-platform-tests/css/css-properties-values-api/register-property-syntax-parsing-expected.txt:
        * web-platform-tests/css/css-properties-values-api/registered-properties-inheritance-expected.txt:
        * web-platform-tests/css/css-properties-values-api/registered-property-cssom-expected.txt:
        * web-platform-tests/css/css-properties-values-api/typedom.tentative-expected.txt:
        * web-platform-tests/css/css-properties-values-api/var-reference-registered-properties-cycles-expected.txt:
        * web-platform-tests/css/css-properties-values-api/var-reference-registered-properties-expected.txt:

2018-11-01  Chris Dumez  <cdumez@apple.com>

        Resync html/browsers/history/the-location-interface web platform tests from upstream
        https://bugs.webkit.org/show_bug.cgi?id=191139

        Reviewed by Alex Christensen.

        Resync html/browsers/history/the-location-interface web platform tests from upstream 8295368c82.

        * web-platform-tests/html/browsers/history/the-location-interface/assign_after_load-expected.txt: Added.
        * web-platform-tests/html/browsers/history/the-location-interface/assign_after_load.html: Added.
        * web-platform-tests/html/browsers/history/the-location-interface/assign_before_load-expected.txt: Added.
        * web-platform-tests/html/browsers/history/the-location-interface/assign_before_load.html: Added.
        * web-platform-tests/html/browsers/history/the-location-interface/location-origin-idna.sub.window-expected.txt: Added.
        * web-platform-tests/html/browsers/history/the-location-interface/location-origin-idna.sub.window.html: Added.
        * web-platform-tests/html/browsers/history/the-location-interface/location_assign-expected.txt: Added.
        * web-platform-tests/html/browsers/history/the-location-interface/location_assign.html: Added.
        * web-platform-tests/html/browsers/history/the-location-interface/no-browsing-context.window-expected.txt: Added.
        * web-platform-tests/html/browsers/history/the-location-interface/no-browsing-context.window.html: Added.
        * web-platform-tests/html/browsers/history/the-location-interface/no-browsing-context.window.js: Added.
        (test):
        (bcLessLocation):
        (forEach.testSetup.testSetup.values.forEach.value.test):
        (string_appeared_here.forEach.method.string_appeared_here.forEach.value.test):
        * web-platform-tests/html/browsers/history/the-location-interface/non-automated/w3c-import.log:
        * web-platform-tests/html/browsers/history/the-location-interface/per-global.window-expected.txt: Added.
        * web-platform-tests/html/browsers/history/the-location-interface/per-global.window.html: Added.
        * web-platform-tests/html/browsers/history/the-location-interface/reload_post_1-1.html: Removed.
        * web-platform-tests/html/browsers/history/the-location-interface/reload_post_1-expected.txt: Removed.
        * web-platform-tests/html/browsers/history/the-location-interface/reload_post_1.html: Removed.
        * web-platform-tests/html/browsers/history/the-location-interface/resources/reload_post_1-1.py: Added.
        (main):
        * web-platform-tests/html/browsers/history/the-location-interface/resources/w3c-import.log:
        * web-platform-tests/html/browsers/history/the-location-interface/w3c-import.log:

2018-11-01  Youenn Fablet  <youenn@apple.com>

        RTCTrackEvent.streams should be SameObject
        https://bugs.webkit.org/show_bug.cgi?id=191130

        Reviewed by Eric Carlson.

        * web-platform-tests/webrtc/RTCTrackEvent-constructor-expected.txt:

2018-10-31  Chris Dumez  <cdumez@apple.com>

        Resync XHR Web Platform Tests from upstream 44dd29fb0d
        https://bugs.webkit.org/show_bug.cgi?id=191116

        Reviewed by Youenn Fablet.

        * web-platform-tests/xhr/getallresponseheaders-expected.txt:
        * web-platform-tests/xhr/getallresponseheaders.htm:
        * web-platform-tests/xhr/getresponseheader.any-expected.txt:
        * web-platform-tests/xhr/getresponseheader.any.js:
        (forEach.testValues.async_test.t.client.onload.t.step_func_done):
        (async_test.t.client.onload.t.step_func_done): Deleted.
        * web-platform-tests/xhr/getresponseheader.any.worker-expected.txt:
        * web-platform-tests/xhr/resources/header-content-length-twice.asis: Added.
        * web-platform-tests/xhr/resources/headers-double-empty.asis: Added.
        * web-platform-tests/xhr/resources/headers-some-are-empty.asis: Added.
        * web-platform-tests/xhr/resources/w3c-import.log:
        * web-platform-tests/xhr/setrequestheader-combining.window-expected.txt: Added.
        * web-platform-tests/xhr/setrequestheader-combining.window.html: Added.
        * web-platform-tests/xhr/setrequestheader-combining.window.js: Added.
        (test):
        * web-platform-tests/xhr/w3c-import.log:

2018-10-31  YUHAN WU  <yuhan_wu@apple.com>

        MediaRecorder should fire dataavailable event when all tracks are ended and stop() is called
        https://bugs.webkit.org/show_bug.cgi?id=190778

        Reviewed by Youenn Fablet.

        * web-platform-tests/mediacapture-record/BlobEvent-constructor-expected.txt:
        * web-platform-tests/mediacapture-record/MediaRecorder-destroy-script-execution-expected.txt: Added.
        * web-platform-tests/mediacapture-record/MediaRecorder-destroy-script-execution.html: Added.
        * web-platform-tests/mediacapture-record/MediaRecorder-stop-expected.txt:
        * web-platform-tests/mediacapture-record/MediaRecorder-stop.html:
        * web-platform-tests/mediacapture-record/support/MediaRecorder-iframe.html: Added.

2018-10-30  Chris Dumez  <cdumez@apple.com>

        Resync XHR Web Platform Tests from upstream
        https://bugs.webkit.org/show_bug.cgi?id=191085

        Reviewed by Alex Christensen.

        Resync XHR Web Platform Tests from upstream 75b0f336c5.

        * web-platform-tests/xhr/abort-after-stop.htm:
        * web-platform-tests/xhr/getallresponseheaders-expected.txt:
        * web-platform-tests/xhr/getallresponseheaders.htm:
        * web-platform-tests/xhr/getresponseheader.any-expected.txt: Added.
        * web-platform-tests/xhr/getresponseheader.any.html: Added.
        * web-platform-tests/xhr/getresponseheader.any.js: Added.
        (async_test.t.client.onload.t.step_func_done):
        * web-platform-tests/xhr/getresponseheader.any.worker-expected.txt: Added.
        * web-platform-tests/xhr/getresponseheader.any.worker.html: Added.
        * web-platform-tests/xhr/headers-normalize-response-expected.txt:
        * web-platform-tests/xhr/headers-normalize-response.htm:
        * web-platform-tests/xhr/open-after-abort.htm:
        * web-platform-tests/xhr/open-after-stop.window-expected.txt: Added.
        * web-platform-tests/xhr/open-after-stop.window.html: Added.
        * web-platform-tests/xhr/open-after-stop.window.js: Added.
        (onload):
        * web-platform-tests/xhr/overridemimetype-edge-cases.window-expected.txt:
        * web-platform-tests/xhr/overridemimetype-edge-cases.window.js:
        (async_test.t.client.onload.t.step_func_done):
        (async_test.t.client.onload.t.step_func):
        * web-platform-tests/xhr/resources/headers-www-authenticate.asis: Added.
        * web-platform-tests/xhr/resources/inspect-headers.py:
        (get_response):
        * web-platform-tests/xhr/resources/responseXML-unavailable-in-worker.js:
        (test):
        * web-platform-tests/xhr/resources/w3c-import.log:
        * web-platform-tests/xhr/resources/xmlhttprequest-timeout-aborted.js:
        * web-platform-tests/xhr/resources/xmlhttprequest-timeout-abortedonmain.js:
        * web-platform-tests/xhr/resources/xmlhttprequest-timeout-overrides.js:
        * web-platform-tests/xhr/resources/xmlhttprequest-timeout-overridesexpires.js:
        * web-platform-tests/xhr/resources/xmlhttprequest-timeout-simple.js:
        * web-platform-tests/xhr/resources/xmlhttprequest-timeout-synconmain.js:
        * web-platform-tests/xhr/resources/xmlhttprequest-timeout-synconworker.js:
        * web-platform-tests/xhr/resources/xmlhttprequest-timeout-twice.js:
        * web-platform-tests/xhr/resources/xmlhttprequest-timeout.js:
        (AbortedRequest):
        (SyncRequestSettingTimeoutAfterOpen.this.startXHR):
        (SyncRequestSettingTimeoutAfterOpen):
        (SyncRequestSettingTimeoutBeforeOpen.this.startXHR):
        (SyncRequestSettingTimeoutBeforeOpen):
        (runTestRequests):
        * web-platform-tests/xhr/send-content-type-charset-expected.txt:
        * web-platform-tests/xhr/send-content-type-charset.htm:
        * web-platform-tests/xhr/send-data-readablestream.any-expected.txt: Added.
        * web-platform-tests/xhr/send-data-readablestream.any.html: Added.
        * web-platform-tests/xhr/send-data-readablestream.any.js: Added.
        (assert_xhr):
        (test):
        (promise_test.async):
        * web-platform-tests/xhr/send-data-readablestream.any.worker-expected.txt: Added.
        * web-platform-tests/xhr/send-data-readablestream.any.worker.html: Added.
        * web-platform-tests/xhr/setrequestheader-allow-empty-value-expected.txt:
        * web-platform-tests/xhr/setrequestheader-allow-whitespace-in-value-expected.txt:
        * web-platform-tests/xhr/setrequestheader-header-allowed-expected.txt:
        * web-platform-tests/xhr/setrequestheader-header-allowed.htm:
        * web-platform-tests/xhr/timeout-multiple-fetches.html:
        * web-platform-tests/xhr/w3c-import.log:
        * web-platform-tests/xhr/xmlhttprequest-timeout-aborted.html:
        * web-platform-tests/xhr/xmlhttprequest-timeout-abortedonmain.html:
        * web-platform-tests/xhr/xmlhttprequest-timeout-overrides.html:
        * web-platform-tests/xhr/xmlhttprequest-timeout-overridesexpires.html:
        * web-platform-tests/xhr/xmlhttprequest-timeout-simple.html:
        * web-platform-tests/xhr/xmlhttprequest-timeout-synconmain-expected.txt:
        * web-platform-tests/xhr/xmlhttprequest-timeout-synconmain.html:
        * web-platform-tests/xhr/xmlhttprequest-timeout-twice.html:
        * web-platform-tests/xhr/xmlhttprequest-timeout-worker-aborted.html:
        * web-platform-tests/xhr/xmlhttprequest-timeout-worker-overrides.html:
        * web-platform-tests/xhr/xmlhttprequest-timeout-worker-overridesexpires.html:
        * web-platform-tests/xhr/xmlhttprequest-timeout-worker-simple.html:
        * web-platform-tests/xhr/xmlhttprequest-timeout-worker-synconworker.html:
        * web-platform-tests/xhr/xmlhttprequest-timeout-worker-twice.html:

2018-10-30  Sihui Liu  <sihui_liu@apple.com>

        IndexedDB: iteration of cursors skip records if updated or deleted
        https://bugs.webkit.org/show_bug.cgi?id=190917
        <rdar://problem/35250410>

        Reviewed by Chris Dumez.

        Rebaseline the expectation for test that passes.

        * web-platform-tests/IndexedDB/idbcursor-iterating-update-expected.txt:

2018-10-28  Antoine Quint  <graouts@apple.com>

        [Web Animations] Implement the update animations and send events procedure
        https://bugs.webkit.org/show_bug.cgi?id=191013
        <rdar://problem/45620495>

        Reviewed by Dean Jackson.

        Progressions in a couple of Web Animations Web Platform Tests.

        * web-platform-tests/web-animations/timing-model/animations/current-time-expected.txt:
        * web-platform-tests/web-animations/timing-model/animations/updating-the-finished-state-expected.txt:

2018-10-29  Justin Michaud  <justin_michaud@apple.com>

        Revert r237347 registered custom properties... https://bugs.webkit.org/show_bug.cgi?id=190039
        https://bugs.webkit.org/show_bug.cgi?id=190919

        Reviewed by Michael Saboff.

        * web-platform-tests/css/css-properties-values-api/register-property-syntax-parsing-expected.txt:
        * web-platform-tests/css/css-properties-values-api/registered-properties-inheritance-expected.txt:
        * web-platform-tests/css/css-properties-values-api/registered-property-cssom-expected.txt:
        * web-platform-tests/css/css-properties-values-api/typedom.tentative-expected.txt:
        * web-platform-tests/css/css-properties-values-api/var-reference-registered-properties-cycles-expected.txt:
        * web-platform-tests/css/css-properties-values-api/var-reference-registered-properties-expected.txt:

2018-10-28  Andy Estes  <aestes@apple.com>

        [Payment Request] Implement MerchantValidationEvent.methodName
        https://bugs.webkit.org/show_bug.cgi?id=190058

        Reviewed by Darin Adler.

        * web-platform-tests/payment-request/MerchantValidationEvent/constructor.https-expected.txt:

2018-10-26  Antoine Quint  <graouts@apple.com>

        [Web Animations] Rebase some flaky tests
        https://bugs.webkit.org/show_bug.cgi?id=190969

        Reviewed by Dean Jackson.

        A few Web Animations tests that are flaky have outdated expectations. Rebasing them to have the output
        that is most likely to be produced.

        * web-platform-tests/web-animations/animation-model/keyframe-effects/effect-value-context-expected.txt:
        * web-platform-tests/web-animations/interfaces/Animatable/animate-expected.txt:
        * web-platform-tests/web-animations/timing-model/animations/current-time-expected.txt:
        * web-platform-tests/web-animations/timing-model/animations/updating-the-finished-state-expected.txt:

2018-10-25  Jiewen Tan  <jiewen_tan@apple.com>

        [WPT] Update resource-timing WPT tests to use the right cross origin
        https://bugs.webkit.org/show_bug.cgi?id=190554

        Reviewed by Youenn Fablet.

        * web-platform-tests/resource-timing/resource_TAO_cross_origin_redirect_chain-expected.txt:
        * web-platform-tests/resource-timing/resource_TAO_cross_origin_redirect_chain.html:
        * web-platform-tests/resource-timing/resource_timing_cross_origin_redirect_chain-expected.txt:
        * web-platform-tests/resource-timing/resource_timing_cross_origin_redirect_chain.html:

2018-10-22  Justin Michaud  <justin_michaud@apple.com>

        Registered custom properties should support syntax parameter for <length> and *
        https://bugs.webkit.org/show_bug.cgi?id=190039

        Reviewed by Antti Koivisto.

        Update WPT test results to fail in a new way.

        * web-platform-tests/css/css-properties-values-api/register-property-syntax-parsing-expected.txt:
        * web-platform-tests/css/css-properties-values-api/registered-properties-inheritance-expected.txt:
        * web-platform-tests/css/css-properties-values-api/registered-property-cssom-expected.txt:
        * web-platform-tests/css/css-properties-values-api/typedom.tentative-expected.txt:
        * web-platform-tests/css/css-properties-values-api/var-reference-registered-properties-cycles-expected.txt:
        * web-platform-tests/css/css-properties-values-api/var-reference-registered-properties-expected.txt:

2018-10-12  Jiewen Tan  <jiewen_tan@apple.com>

        Update web-platform-tests/resource-timing
        https://bugs.webkit.org/show_bug.cgi?id=190550

        Reviewed by Youenn Fablet.

        * resources/import-expectations.json:
        * web-platform-tests/resource-timing/resource_initiator_types-expected.txt:
        * web-platform-tests/resource-timing/resource_subframe_self_navigation-expected.txt:
        * web-platform-tests/resource-timing/resource_timing_buffer_full_eventually.html:
        * web-platform-tests/resource-timing/resources/TAOResponse.py:
        (main):

2018-10-20  YUHAN WU  <yuhan_wu@apple.com>

        MediaRecorder should fire a stop event when all tracks are ended
        https://bugs.webkit.org/show_bug.cgi?id=190642

        Reviewed by Youenn Fablet.

        * web-platform-tests/mediacapture-record/MediaRecorder-stop-expected.txt: Added.
        * web-platform-tests/mediacapture-record/MediaRecorder-stop.html: Added.

2018-10-19  Commit Queue  <commit-queue@webkit.org>

        Unreviewed, rolling out r237254.
        https://bugs.webkit.org/show_bug.cgi?id=190760

        "It regresses JetStream 2 by 5% on some iOS devices"
        (Requested by saamyjoon on #webkit).

        Reverted changeset:

        "[JSC] JSC should have "parseFunction" to optimize Function
        constructor"
        https://bugs.webkit.org/show_bug.cgi?id=190340
        https://trac.webkit.org/changeset/237254

2018-10-19  Charlie Turner  <cturner@igalia.com>

        [EME] Fix crash during tracing in  gst_qtdemux_request_protection_context
        https://bugs.webkit.org/show_bug.cgi?id=190738

        Reviewed by Xabier Rodriguez-Calvar.

        Add new passing baselines for some ClearKey tests, now that the
        GStreamer crash fix allows us the generate them.

        * web-platform-tests/encrypted-media/clearkey-mp4-playback-destroy-persistent-license.https-expected.txt: Added.
        * web-platform-tests/encrypted-media/clearkey-mp4-playback-persistent-license.https-expected.txt: Added.
        * web-platform-tests/encrypted-media/clearkey-mp4-playback-retrieve-destroy-persistent-license.https-expected.txt: Added.
        * web-platform-tests/encrypted-media/clearkey-mp4-playback-retrieve-persistent-license.https-expected.txt: Added.
        * web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-clear-encrypted.https-expected.txt: Added.
        * web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-encrypted-clear-sources.https-expected.txt: Added.
        * web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-multikey.https-expected.txt: Added.
        * web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-multisession.https-expected.txt: Added.
        * web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-setMediaKeys-after-update.https-expected.txt: Added.
        * web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-setMediaKeys-immediately.https-expected.txt: Added.
        * web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-setMediaKeys-onencrypted.https-expected.txt: Added.
        * web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-two-videos.https-expected.txt: Added.
        * web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-waitingforkey.https-expected.txt: Added.
        * web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary.https-expected.txt: Added.
        * web-platform-tests/encrypted-media/clearkey-mp4-setmediakeys-again-after-playback.https-expected.txt: Added.
        * web-platform-tests/encrypted-media/clearkey-mp4-setmediakeys-again-after-resetting-src.https-expected.txt: Added.
        * web-platform-tests/encrypted-media/clearkey-mp4-setmediakeys-multiple-times-with-different-mediakeys.https-expected.txt: Added.

2018-10-19  Ali Juma  <ajuma@chromium.org>

        [IntersectionObserver] Handle zero-area intersections
        https://bugs.webkit.org/show_bug.cgi?id=189624

        Reviewed by Simon Fraser.

        Rebaseline expectations for tests that now pass.

        * web-platform-tests/intersection-observer/edge-inclusive-intersection-expected.txt:
        * web-platform-tests/intersection-observer/isIntersecting-change-events-expected.txt:
        * web-platform-tests/intersection-observer/same-document-zero-size-target-expected.txt:
        * web-platform-tests/intersection-observer/text-target-expected.txt:
        * web-platform-tests/intersection-observer/zero-area-element-visible-expected.txt:

2018-10-18  Yusuke Suzuki  <yusukesuzuki@slowstart.org>

        [JSC] JSC should have "parseFunction" to optimize Function constructor
        https://bugs.webkit.org/show_bug.cgi?id=190340

        Reviewed by Mark Lam.

        * web-platform-tests/html/webappapis/scripting/events/inline-event-handler-ordering-expected.txt:
        * web-platform-tests/html/webappapis/scripting/events/invalid-uncompiled-raw-handler-compiled-late-expected.txt:
        * web-platform-tests/html/webappapis/scripting/processing-model-2/compile-error-in-attribute-expected.txt:
        * web-platform-tests/html/webappapis/scripting/processing-model-2/compile-error-in-body-onerror-expected.txt:

2018-10-17  Wenson Hsieh  <wenson_hsieh@apple.com>

        Enable the datalist element by default on iOS and macOS
        https://bugs.webkit.org/show_bug.cgi?id=190594
        <rdar://problem/45281159>

        Reviewed by Ryosuke Niwa and Tim Horton.

        Rebaseline some web platform tests.

        * web-platform-tests/html/semantics/forms/constraints/form-validation-validity-badInput-expected.txt:
        * web-platform-tests/html/semantics/forms/constraints/form-validation-willValidate-expected.txt:
        * web-platform-tests/html/semantics/forms/the-datalist-element/datalistoptions-expected.txt:
        * web-platform-tests/html/semantics/forms/the-input-element/hidden-expected.txt:
        * web-platform-tests/html/semantics/forms/the-input-element/selection-expected.txt:
        * web-platform-tests/html/semantics/forms/the-input-element/text-expected.txt:
        * web-platform-tests/shadow-dom/input-element-list-expected.txt:

2018-10-17  Charlie Turner  <cturner@igalia.com>

        [EME] Sanity check key ID length in the keyids init data format
        https://bugs.webkit.org/show_bug.cgi?id=190629

        Reviewed by Xabier Rodriguez-Calvar.

        * web-platform-tests/encrypted-media/clearkey-generate-request-disallowed-input.https-expected.txt:
        Added new baseline.

2018-10-16  Youenn Fablet  <youenn@apple.com>

        Support RTCConfiguration.certificates
        https://bugs.webkit.org/show_bug.cgi?id=190603

        Reviewed by Eric Carlson.

        * web-platform-tests/webrtc/RTCCertificate-expected.txt:
        * web-platform-tests/webrtc/RTCPeerConnection-constructor-expected.txt:
        * web-platform-tests/webrtc/rtcpeerconnection/rtcpeerconnection-constructor-expected.txt:

2018-10-16  Chris Dumez  <cdumez@apple.com>

        window.navigator should not become null after the window loses its browsing context
        https://bugs.webkit.org/show_bug.cgi?id=190595

        Reviewed by Ryosuke Niwa.

        Rebaseline test which is not failing differently. The last check of this test is checking that
        navigator.serviceWorker returns null after the frame has been detached. The test has been written
        this way because this is how Chromium behaves. However, Firefox keeps returning the
        ServiceWorkerContainer, as we do. Also, the specification indicates the the attribute cannot
        return null (since the attribute is not nullable):
        - https://w3c.github.io/ServiceWorker/#navigator-serviceworker

        * web-platform-tests/service-workers/service-worker/detached-context.https-expected.txt:

2018-10-16  Charlie Turner  <cturner@igalia.com>

        [EME] Add some ClearKey baselines for passing tests
        https://bugs.webkit.org/show_bug.cgi?id=190579

        Reviewed by Unreviewed test gardening.

        * web-platform-tests/encrypted-media/clearkey-check-initdata-type.https-expected.txt: Added.
        * web-platform-tests/encrypted-media/clearkey-events-session-closed-event.https-expected.txt: Added.
        * web-platform-tests/encrypted-media/clearkey-events.https-expected.txt: Added.
        * web-platform-tests/encrypted-media/clearkey-invalid-license.https-expected.txt: Added.
        * web-platform-tests/encrypted-media/clearkey-keystatuses-multiple-sessions.https-expected.txt: Added.
        * web-platform-tests/encrypted-media/clearkey-keystatuses.https-expected.txt: Added.
        * web-platform-tests/encrypted-media/clearkey-mp4-setmediakeys-at-same-time.https-expected.txt: Added.
        * web-platform-tests/encrypted-media/clearkey-mp4-setmediakeys-multiple-times-with-the-same-mediakeys.https-expected.txt: Added.
        * web-platform-tests/encrypted-media/clearkey-mp4-setmediakeys-to-multiple-video-elements.https-expected.txt: Added.
        * web-platform-tests/encrypted-media/clearkey-mp4-setmediakeys.https-expected.txt: Added.
        * web-platform-tests/encrypted-media/clearkey-mp4-syntax-mediakeysession.https-expected.txt: Added.
        * web-platform-tests/encrypted-media/clearkey-mp4-syntax-mediakeysystemaccess.https-expected.txt: Added.
        * web-platform-tests/encrypted-media/clearkey-not-callable-after-createsession.https-expected.txt: Added.
        * web-platform-tests/encrypted-media/clearkey-update-non-ascii-input.https-expected.txt: Added.

2018-10-15  Youenn Fablet  <youenn@apple.com>

        RTCPeerConnection.generateCertificate is not a function
        https://bugs.webkit.org/show_bug.cgi?id=173541
        <rdar://problem/32638029>

        Reviewed by Eric Carlson.

        * web-platform-tests/webrtc/RTCCertificate-expected.txt:
        * web-platform-tests/webrtc/RTCPeerConnection-generateCertificate-expected.txt:
        * web-platform-tests/webrtc/interfaces.https-expected.txt:
        * web-platform-tests/webrtc/rtcpeerconnection/rtcpeerconnection-constructor-expected.txt:

2018-10-15  Commit Queue  <commit-queue@webkit.org>

        Unreviewed, rolling out r237054.
        https://bugs.webkit.org/show_bug.cgi?id=190593

        "this regressed JetStream 2 by 6% on iOS" (Requested by
        saamyjoon on #webkit).

        Reverted changeset:

        "[JSC] JSC should have "parseFunction" to optimize Function
        constructor"
        https://bugs.webkit.org/show_bug.cgi?id=190340
        https://trac.webkit.org/changeset/237054

2018-10-15  YUHAN WU  <yuhan_wu@apple.com>

        Implement error handler of MediaRecorder
        https://bugs.webkit.org/show_bug.cgi?id=190438

        Reviewed by Youenn Fablet.

        * web-platform-tests/mediacapture-record/MediaRecorder-error-expected.txt: Added.
        * web-platform-tests/mediacapture-record/MediaRecorder-error.html: Added.

2018-10-15  Chris Dumez  <cdumez@apple.com>

        Window's properties such as 'location' should not become null when it loses its browsing context
        https://bugs.webkit.org/show_bug.cgi?id=190539

        Reviewed by Alex Christensen.

        Rebaseline WPT test whose output has changed.

        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/url.window-expected.txt:

2018-10-08  Yusuke Suzuki  <yusukesuzuki@slowstart.org>

        [JSC] JSC should have "parseFunction" to optimize Function constructor
        https://bugs.webkit.org/show_bug.cgi?id=190340

        Reviewed by Mark Lam.

        * web-platform-tests/html/webappapis/scripting/events/inline-event-handler-ordering-expected.txt:
        * web-platform-tests/html/webappapis/scripting/events/invalid-uncompiled-raw-handler-compiled-late-expected.txt:
        * web-platform-tests/html/webappapis/scripting/processing-model-2/compile-error-in-attribute-expected.txt:
        * web-platform-tests/html/webappapis/scripting/processing-model-2/compile-error-in-body-onerror-expected.txt:

2018-10-10  Chris Dumez  <cdumez@apple.com>

        Unreviewed, rolling out r236802.

        Working on getting the HTML spec updated instead
        (https://github.com/whatwg/html/pull/4079)

        Reverted changeset:

        "Passing noopener=NOOPENER to window.open() should cause the
        new window to not have an opener"
        https://bugs.webkit.org/show_bug.cgi?id=190251
        https://trac.webkit.org/changeset/236802

2018-10-09  Antoine Quint  <graouts@apple.com>

        Remove the frames() timing function
        https://bugs.webkit.org/show_bug.cgi?id=190034
        <rdar://problem/44827544>

        Reviewed by Dean Jackson.

        * web-platform-tests/css-timing-1/frames-timing-functions-output-expected.txt:
        * web-platform-tests/css-timing-1/frames-timing-functions-syntax-expected.txt:
        * web-platform-tests/web-animations/animation-model/keyframe-effects/effect-value-transformed-distance-expected.txt:
        * web-platform-tests/web-animations/interfaces/AnimationEffectTiming/easing-expected.txt:
        * web-platform-tests/web-animations/timing-model/time-transformations/transformed-progress-expected.txt:

2018-10-09  Oriol Brufau  <obrufau@igalia.com>

        Resolve inset properties to computed style when there is overconstraintment
        https://bugs.webkit.org/show_bug.cgi?id=188711

        Reviewed by Manuel Rego Casasnovas.

        This patch makes WebKit behave closer to Blink. Specifically,
         - In overconstrained relative or absolute positioning, inset properties resolve
           to the computed value (absolutizing percentages) instead of to the used value.
         - In fixed positioning, the resolved value of non-'auto' values is no longer
           increased by the border of the containg block.

        Some tests still have failures due to
         - https://bugs.webkit.org/show_bug.cgi?id=189513
         - https://bugs.webkit.org/show_bug.cgi?id=189518
         - https://bugs.webkit.org/show_bug.cgi?id=189549

        This patch can slighlty alter the resolved value if it's a long decimal number,
        that's why test expectations for the timing functions test changed.

        * web-platform-tests/css-timing-1/cubic-bezier-timing-functions-output-expected.txt:
        * web-platform-tests/css/cssom/getComputedStyle-insets-absolute-expected.txt: Added.
        * web-platform-tests/css/cssom/getComputedStyle-insets-absolute.html: Added.
        * web-platform-tests/css/cssom/getComputedStyle-insets-fixed-expected.txt: Added.
        * web-platform-tests/css/cssom/getComputedStyle-insets-fixed.html: Added.
        * web-platform-tests/css/cssom/getComputedStyle-insets-nobox-expected.txt: Added.
        * web-platform-tests/css/cssom/getComputedStyle-insets-nobox.html: Added.
        * web-platform-tests/css/cssom/getComputedStyle-insets-relative-expected.txt: Added.
        * web-platform-tests/css/cssom/getComputedStyle-insets-relative.html: Added.
        * web-platform-tests/css/cssom/getComputedStyle-insets-static-expected.txt: Added.
        * web-platform-tests/css/cssom/getComputedStyle-insets-static.html: Added.
        * web-platform-tests/css/cssom/getComputedStyle-insets-sticky-expected.txt: Added.
        * web-platform-tests/css/cssom/getComputedStyle-insets-sticky.html: Added.
        * web-platform-tests/css/cssom/support/getComputedStyle-insets.js: Added.
        (serialize):
        (wmName):
        (checkStyle):
        (runTestsWithWM):
        (export.runTests):

2018-10-08  Truitt Savell  <tsavell@apple.com>

        Attempt to fix test failure after 236915
        https://bugs.webkit.org/show_bug.cgi?id=190352

        Unreviewed Test Gardening

        * web-platform-tests/WebCryptoAPI/derive_bits_keys/hkdf.https.worker-expected.txt:

2018-10-08  Truitt Savell  <tsavell@apple.com>

        Rebaseline imported/w3c/web-platform-tests/WebCryptoAPI/derive_bits_keys/hkdf.https.worker.html for Mojave
        https://bugs.webkit.org/show_bug.cgi?id=190352

        Unreviewed Test Expetations

        * web-platform-tests/WebCryptoAPI/derive_bits_keys/hkdf.https.worker-expected.txt:

2018-10-06  Justin Michaud  <justin_michaud@apple.com>

        Properly determine if css custom property values are computationally independent
        https://bugs.webkit.org/show_bug.cgi?id=190303

        Reviewed by Antti Koivisto.

        * web-platform-tests/css/css-properties-values-api/register-property-syntax-parsing-expected.txt:
        * web-platform-tests/css/css-properties-values-api/registered-property-computation-expected.txt:

2018-10-04  Chris Dumez  <cdumez@apple.com>

        A Document / Window should lose its browsing context as soon as its iframe is removed from the document
        https://bugs.webkit.org/show_bug.cgi?id=190282

        Reviewed by Ryosuke Niwa.

        Rebaseline several WPT tests that are now passing. I have verified that those tests are also passing in
        Firefox and Chrome.

        * web-platform-tests/html/browsers/windows/nested-browsing-contexts/window-parent-null-expected.txt:
        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe-synchronously-discard-expected.txt:

2018-10-04  YUHAN WU  <yuhan_wu@apple.com>

        runtime flag and IDL for MediaRecorder
        https://bugs.webkit.org/show_bug.cgi?id=190018

        Reviewed by Youenn Fablet and Chris Dumez.

        * web-platform-tests/mediacapture-record/BlobEvent-constructor-expected.txt:
        * web-platform-tests/mediacapture-record/MediaRecorder-constructor-expected.txt: Added.
        * web-platform-tests/mediacapture-record/MediaRecorder-constructor.html: Added.

2018-10-03  Justin Michaud  <justin_michaud@apple.com>

        Registered custom properties should allow inheritance to be controlled
        https://bugs.webkit.org/show_bug.cgi?id=190038

        Reviewed by Antti Koivisto.

        Update web platform tests for css registered custom properties to fail in a different way.

        * web-platform-tests/css/css-properties-values-api/registered-properties-inheritance-expected.txt:
        * web-platform-tests/css/css-properties-values-api/registered-property-computation-expected.txt:
        * web-platform-tests/css/css-properties-values-api/registered-property-cssom-expected.txt:
        * web-platform-tests/css/css-properties-values-api/url-resolution-expected.txt:
        * web-platform-tests/css/css-properties-values-api/var-reference-registered-properties-cycles-expected.txt:
        * web-platform-tests/css/css-properties-values-api/var-reference-registered-properties-expected.txt:

2018-10-03  Youenn Fablet  <youenn@apple.com>

        Add VP8 support to WebRTC
        https://bugs.webkit.org/show_bug.cgi?id=189976

        Reviewed by Eric Carlson.

        * web-platform-tests/webrtc/RTCPeerConnection-addIceCandidate-expected.txt:

2018-10-03  Chris Dumez  <cdumez@apple.com>

        Passing noopener=NOOPENER to window.open() should cause the new window to not have an opener
        https://bugs.webkit.org/show_bug.cgi?id=190251

        Reviewed by Alex Christensen.

        Rebaseline WPT test now that it is passing.

        * web-platform-tests/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/open-features-tokenization-noopener-expected.txt:

2018-10-03  Chris Dumez  <cdumez@apple.com>

        input.checked is incorrect while we're parsing its children
        https://bugs.webkit.org/show_bug.cgi?id=190227

        Reviewed by Ryosuke Niwa.

        Rebaseline WPT test now that it is passing.

        * web-platform-tests/html/semantics/forms/the-input-element/checked-expected.txt:

2018-10-03  Rob Buis  <rbuis@igalia.com>

        Import WPT mimesniff resources
        https://bugs.webkit.org/show_bug.cgi?id=190074

        Reviewed by Youenn Fablet.

        * resources/import-expectations.json:
        * web-platform-tests/mimesniff/META.yml: Added.
        * web-platform-tests/mimesniff/README.md: Added.
        * web-platform-tests/mimesniff/mime-types/README.md: Added.
        * web-platform-tests/mimesniff/mime-types/charset-parameter.window-expected.txt: Added.
        * web-platform-tests/mimesniff/mime-types/charset-parameter.window.html: Added.
        * web-platform-tests/mimesniff/mime-types/charset-parameter.window.js: Added.
        (promise_test):
        (isByteCompatible):
        (encodeForURL):
        (runTests):
        * web-platform-tests/mimesniff/mime-types/parsing.any-expected.txt: Added.
        * web-platform-tests/mimesniff/mime-types/parsing.any.html: Added.
        * web-platform-tests/mimesniff/mime-types/parsing.any.js: Added.
        (promise_test):
        (isByteCompatible):
        (runTests):
        * web-platform-tests/mimesniff/mime-types/parsing.any.worker-expected.txt: Added.
        * web-platform-tests/mimesniff/mime-types/parsing.any.worker.html: Added.
        * web-platform-tests/mimesniff/mime-types/resources/generated-mime-types.json: Added.
        * web-platform-tests/mimesniff/mime-types/resources/generated-mime-types.py: Added.
        (isHTTPTokenCodePoint):
        (isHTTPQuotedStringTokenCodePoint):
        * web-platform-tests/mimesniff/mime-types/resources/mime-charset.py: Added.
        (main):
        * web-platform-tests/mimesniff/mime-types/resources/mime-types.json: Added.
        * web-platform-tests/mimesniff/mime-types/resources/w3c-import.log: Added.
        * web-platform-tests/mimesniff/mime-types/w3c-import.log: Added.
        * web-platform-tests/mimesniff/w3c-import.log: Added.
        * web-platform-tests/xhr/overridemimetype-blob-expected.txt:

2018-10-02  Chris Dumez  <cdumez@apple.com>

        MessageEvent.ports should return the same object
        https://bugs.webkit.org/show_bug.cgi?id=190151

        Reviewed by Darin Adler.

        Rebaseline WPT test now that it is passing.

        * web-platform-tests/html/webappapis/scripting/events/messageevent-constructor.https-expected.txt:

2018-10-02  Chris Dumez  <cdumez@apple.com>

        radio / checkbox inputs should fire "click, input, change" events in order when clicked
        https://bugs.webkit.org/show_bug.cgi?id=190223

        Reviewed by Ryosuke Niwa.

        Rebaseline a few WPT tests that are now passing. I have verified that those are passing in Gecko and Blink
        as well.

        * web-platform-tests/html/semantics/forms/the-input-element/checkbox-click-events-expected.txt:
        * web-platform-tests/html/semantics/forms/the-input-element/checkbox-expected.txt:
        * web-platform-tests/html/semantics/forms/the-input-element/radio-expected.txt:

2018-10-02  Chris Dumez  <cdumez@apple.com>

        fieldset.elements should return an HTMLCollection instead of an HTMLFormControlsCollection
        https://bugs.webkit.org/show_bug.cgi?id=190218

        Reviewed by Alex Christensen.

        Rebaseline existing WPT test now that it is passing.

        * web-platform-tests/html/semantics/forms/the-fieldset-element/HTMLFieldSetElement-expected.txt:

2018-10-02  Chris Dumez  <cdumez@apple.com>

        Refresh imported/w3c/web-platform-tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh
        https://bugs.webkit.org/show_bug.cgi?id=190212

        Reviewed by Youenn Fablet.

        Refresh imported/w3c/web-platform-tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh
        from upstream f15449622a76d0.

        * web-platform-tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/parsing-expected.txt:
        * web-platform-tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/parsing.html:
        * web-platform-tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/remove-from-document-expected.txt:
        * web-platform-tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/refresh.sub.html: Added.
        * web-platform-tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/support/w3c-import.log:

2018-10-02  Chris Dumez  <cdumez@apple.com>

        Image.__proto__ should be Function.prototype, not HTMLElement.prototype
        https://bugs.webkit.org/show_bug.cgi?id=190216

        Reviewed by Alex Christensen.

        Rebaseline existing WPT test now that it is passing.

        * web-platform-tests/html/semantics/embedded-content/the-img-element/Image-constructor-expected.txt:

2018-10-01  Simon Pieters  <zcorpan@gmail.com>

        <form> in quirks mode should have margin-block-end: 1em
        https://bugs.webkit.org/show_bug.cgi?id=157788

        Reviewed by Simon Fraser.

        * web-platform-tests/html/rendering/non-replaced-elements/flow-content-0/form-margin-quirk.html: Added.
        * web-platform-tests/html/rendering/non-replaced-elements/flow-content-0/form-margin-quirk-expected.txt: Added.

2018-10-01  Rob Buis  <rbuis@igalia.com>

        Align XMLHttpRequest's overrideMimeType() with the standard
        https://bugs.webkit.org/show_bug.cgi?id=169276

        Reviewed by Chris Dumez.

        * web-platform-tests/xhr/overridemimetype-invalid-mime-type-expected.txt:

2018-10-01  Chris Dumez  <cdumez@apple.com>

        Make crossOriginObject.then undefined for promises
        https://bugs.webkit.org/show_bug.cgi?id=190094

        Reviewed by Darin Adler.

        Rebaseline WPT test now that more checks are passing.

        * web-platform-tests/html/browsers/origin/cross-origin-objects/cross-origin-objects-expected.txt:

2018-09-30  Walker Henderson  <wjahenderson@gmail.com>

        AudioNode.connect should return passed destination node
        https://bugs.webkit.org/show_bug.cgi?id=188834

        Reviewed by Eric Carlson.

        * web-platform-tests/webaudio/the-audio-api/the-audionode-interface/audionode-connect-return-value-expected.txt:

2018-09-29  Oriol Brufau  <obrufau@igalia.com>

        [css-grid] Properly align items next to collapsed tracks with gutters
        https://bugs.webkit.org/show_bug.cgi?id=190089

        Reviewed by Manuel Rego Casasnovas.

        Import grid-gutters-013.html and reference from WPT.

        Test: imported/w3c/web-platform-tests/css/css-grid/alignment/grid-gutters-013.html

        * web-platform-tests/css/css-grid/alignment/grid-gutters-013-expected.xht: Added.
        * web-platform-tests/css/css-grid/alignment/grid-gutters-013.html: Added.

2018-09-28  Chris Dumez  <cdumez@apple.com>

        The return value of an OnBeforeUnloadEventHandler should always be coerced into a DOMString
        https://bugs.webkit.org/show_bug.cgi?id=190090

        Reviewed by Ryosuke Niwa.

        Rebaseline WPT test now that one more check is passing.

        * web-platform-tests/html/browsers/browsing-the-web/unloading-documents/beforeunload-canceling-expected.txt:

2018-09-28  Chris Dumez  <cdumez@apple.com>

        document.open() should throw errors for cross-origin calls
        https://bugs.webkit.org/show_bug.cgi?id=189371
        <rdar://problem/44282700>

        Reviewed by Youenn Fablet.

        Rebaseline existing WPT tests now that more checks are passing.

        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/bailout-exception-vs-return-origin.sub.window-expected.txt:
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/bailout-side-effects-same-origin-domain.sub.window-expected.txt:

2018-09-27  Andy Estes  <aestes@apple.com>

        [Payment Request] Update web platform tests
        https://bugs.webkit.org/show_bug.cgi?id=190049

        Reviewed by Youenn Fablet.

        Updated web-platform-tests/payment-request/ to tip-of-tree from web-platform-tests.

        * web-platform-tests/payment-request/MerchantValidationEvent/complete-method.https-expected.txt: Added.
        * web-platform-tests/payment-request/MerchantValidationEvent/complete-method.https.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/payment-request/MerchantValidationEvent/complete-method-manual.https.html.
        * web-platform-tests/payment-request/MerchantValidationEvent/constructor.https-expected.txt:
        * web-platform-tests/payment-request/MerchantValidationEvent/constructor.https.html:
        * web-platform-tests/payment-request/MerchantValidationEvent/w3c-import.log:
        * web-platform-tests/payment-request/PaymentAddress/attributes-and-toJSON-method-manual.https.html:
        * web-platform-tests/payment-request/PaymentMethodChangeEvent/methodDetails-attribute.https-expected.txt:
        * web-platform-tests/payment-request/PaymentMethodChangeEvent/methodDetails-attribute.https.html:
        * web-platform-tests/payment-request/PaymentMethodChangeEvent/methodName-attribute.https-expected.txt:
        * web-platform-tests/payment-request/PaymentMethodChangeEvent/methodName-attribute.https.html:
        * web-platform-tests/payment-request/PaymentValidationErrors/retry-shows-shippingAddress-member-manual.https.html:
        * web-platform-tests/payment-request/historical.https-expected.txt:
        * web-platform-tests/payment-request/historical.https.html:
        * web-platform-tests/payment-request/idlharness.https.window.js:
        * web-platform-tests/payment-request/payment-response/onpayerdetailchange-attribute-manual.https.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/payment-request/payment-response/onpayerdetailchange-attribute.manual.https.html.
        * web-platform-tests/payment-request/payment-response/w3c-import.log:

2018-09-27  Ryan Haddad  <ryanhaddad@apple.com>

        Unreviewed, rolling out r236557.

        Really roll out r236557 this time because it breaks internal
        builds.

        Reverted changeset:

        "Add VP8 support to WebRTC"
        https://bugs.webkit.org/show_bug.cgi?id=189976
        https://trac.webkit.org/changeset/236557

2018-09-27  Chris Dumez  <cdumez@apple.com>

        Fragment should be stripped from document URL during document.open() URL propagation
        https://bugs.webkit.org/show_bug.cgi?id=189374
        <rdar://problem/44282736>

        Reviewed by Alex Christensen.

        Rebaseline WPT test now that it is passing.

        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/url-fragment.window-expected.txt:

2018-09-27  Youenn Fablet  <youenn@apple.com>

        Add VP8 support to WebRTC
        https://bugs.webkit.org/show_bug.cgi?id=189976

        Reviewed by Eric Carlson.

        * web-platform-tests/webrtc/RTCPeerConnection-addIceCandidate-expected.txt:

2018-09-27  Chris Dumez  <cdumez@apple.com>

        document.open() should not propagate URLs to non-fully active documents
        https://bugs.webkit.org/show_bug.cgi?id=189375
        <rdar://problem/44282755>

        Reviewed by Youenn Fablet.

        Rebaseline WPT test now that more checks are passing.

        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/url.window-expected.txt:

2018-09-27  Antoine Quint  <graouts@apple.com>

        [Web Animations] Turn Web Animations with CSS integration on
        https://bugs.webkit.org/show_bug.cgi?id=184819
        <rdar://problem/39597337>

        Reviewed by Dean Jackson.

        * web-platform-tests/css-timing-1/frames-timing-functions-output.html:
        * web-platform-tests/css/css-logical/animation-003.tentative.html:
        * web-platform-tests/css/css-scoping/keyframes-001.html:
        * web-platform-tests/web-animations/animation-model/keyframe-effects/effect-value-context.html:
        * web-platform-tests/web-animations/interfaces/Animatable/animate.html:
        * web-platform-tests/web-animations/timing-model/animations/current-time.html:

2018-09-26  YUHAN WU  <yuhan_wu@apple.com>

        Video track clone cannot preserve original property
        https://bugs.webkit.org/show_bug.cgi?id=189872
        <rdar://problem/44706579>

        Reviewed by Youenn Fablet.

        * web-platform-tests/mst-content-hint/MediaStreamTrack-contentHint-expected.txt:

2018-09-26  Alex Christensen  <achristensen@webkit.org>

        Unreviewed, rolling out r236524.

        Broke API tests

        Reverted changeset:

        "URLWithUserTypedString should return nil for URLs deemed to
        be invalid by WebCore::URL"
        https://bugs.webkit.org/show_bug.cgi?id=189979
        https://trac.webkit.org/changeset/236524

2018-09-26  Chris Dumez  <cdumez@apple.com>

        Ignore-opens-during-unload counter of a parent should apply to its children during beforeunload event
        https://bugs.webkit.org/show_bug.cgi?id=189376
        <rdar://problem/44282754>

        Reviewed by Ryosuke Niwa.

        Rebaseline existing test now that one more check is passing.

        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/ignore-opens-during-unload.window-expected.txt:

2018-09-25  YUHAN WU  <yuhan_wu@apple.com>

        Implement MediaStreamTrack Content Hints
        https://bugs.webkit.org/show_bug.cgi?id=189262
        <rdar://problem/44101773>

        Reviewed by Youenn Fablet.

        * web-platform-tests/mst-content-hint/MediaStreamTrack-contentHint-expected.txt:

2018-09-25  YUHAN WU  <yuhan_wu@apple.com>

        Import WPT content hint tests
        https://bugs.webkit.org/show_bug.cgi?id=189854

        Reviewed by Youenn Fablet.

        * web-platform-tests/mst-content-hint/idlharness.window-expected.txt: Added.

2018-09-24  Simon Fraser  <simon.fraser@apple.com>

        Remove filterRes parameter from SVG filters
        https://bugs.webkit.org/show_bug.cgi?id=129565
        <rdar://problem/44714340>

        Reviewed by Dean Jackson.
        
        Remove support for the "filterRes" attribute on SVG filters. It's marked as
        deprecated in https://drafts.fxtf.org/filter-effects/#element-attrdef-filter-filterres
        and no longer supported by Chrome or Firefox.

        * web-platform-tests/html/syntax/parsing/html5lib_tests11-expected.txt: Rebaseline

2018-09-24  Justin Michaud  <justin_michaud@apple.com>

        Import WPT tests for css custom properties api
        https://bugs.webkit.org/show_bug.cgi?id=189764

        Reviewed by Ryosuke Niwa.

        * resources/import-expectations.json:
        * web-platform-tests/css/css-properties-values-api/META.yml: Added.
        * web-platform-tests/css/css-properties-values-api/idlharness-expected.txt: Added.
        * web-platform-tests/css/css-properties-values-api/idlharness.html: Added.
        * web-platform-tests/css/css-properties-values-api/property-cascade-expected.txt: Added.
        * web-platform-tests/css/css-properties-values-api/property-cascade.html: Added.
        * web-platform-tests/css/css-properties-values-api/register-property-expected.txt: Added.
        * web-platform-tests/css/css-properties-values-api/register-property-syntax-parsing-expected.txt: Added.
        * web-platform-tests/css/css-properties-values-api/register-property-syntax-parsing.html: Added.
        * web-platform-tests/css/css-properties-values-api/register-property.html: Added.
        * web-platform-tests/css/css-properties-values-api/registered-properties-inheritance-expected.txt: Added.
        * web-platform-tests/css/css-properties-values-api/registered-properties-inheritance.html: Added.
        * web-platform-tests/css/css-properties-values-api/registered-property-computation-expected.txt: Added.
        * web-platform-tests/css/css-properties-values-api/registered-property-computation.html: Added.
        * web-platform-tests/css/css-properties-values-api/registered-property-cssom-expected.txt: Added.
        * web-platform-tests/css/css-properties-values-api/registered-property-cssom.html: Added.
        * web-platform-tests/css/css-properties-values-api/registered-property-initial-expected.txt: Added.
        * web-platform-tests/css/css-properties-values-api/registered-property-initial.html: Added.
        * web-platform-tests/css/css-properties-values-api/support/alt/alt.css: Added.
        (#target):
        * web-platform-tests/css/css-properties-values-api/support/alt/alt.js: Added.
        (reg_url):
        * web-platform-tests/css/css-properties-values-api/support/alt/w3c-import.log: Added.
        * web-platform-tests/css/css-properties-values-api/support/main/main.css: Added.
        (#target):
        * web-platform-tests/css/css-properties-values-api/support/main/main.js: Added.
        (reg_url):
        * web-platform-tests/css/css-properties-values-api/support/main/main.utf16be.css: Added.
        * web-platform-tests/css/css-properties-values-api/support/main/w3c-import.log: Added.
        * web-platform-tests/css/css-properties-values-api/typedom.tentative-expected.txt: Added.
        * web-platform-tests/css/css-properties-values-api/typedom.tentative.html: Added.
        * web-platform-tests/css/css-properties-values-api/unit-cycles-expected.txt: Added.
        * web-platform-tests/css/css-properties-values-api/unit-cycles.html: Added.
        * web-platform-tests/css/css-properties-values-api/url-resolution-expected.txt: Added.
        * web-platform-tests/css/css-properties-values-api/url-resolution.html: Added.
        * web-platform-tests/css/css-properties-values-api/var-reference-registered-properties-cycles-expected.txt: Added.
        * web-platform-tests/css/css-properties-values-api/var-reference-registered-properties-cycles.html: Added.
        * web-platform-tests/css/css-properties-values-api/var-reference-registered-properties-expected.txt: Added.
        * web-platform-tests/css/css-properties-values-api/var-reference-registered-properties.html: Added.
        * web-platform-tests/css/css-properties-values-api/w3c-import.log: Added.

2018-09-24  Chris Dumez  <cdumez@apple.com>

        No-op document.open() calls should not have any side effects
        https://bugs.webkit.org/show_bug.cgi?id=189373
        <rdar://problem/44282702>

        Reviewed by Geoffrey Garen.

        Rebaseline WPT test now that it is passing.

        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/bailout-side-effects-synchronous-script.window-expected.txt:

2018-09-24  Chris Dumez  <cdumez@apple.com>

        Import html/webappapis/dynamic-markup-insertion WPT tests
        https://bugs.webkit.org/show_bug.cgi?id=189863

        Reviewed by Youenn Fablet.

        * resources/import-expectations.json:
        * resources/resource-files.json:
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/closing-the-input-stream/document.close-01-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/closing-the-input-stream/document.close-01.xhtml: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/closing-the-input-stream/w3c-import.log: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/001-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/001.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/002-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/002.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/003-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/003.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/004-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/004.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/005-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/005.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/005.js: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/006-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/006.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/006.js: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/007-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/007.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/007.js: Added.
        (t.step):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/008-1.js: Added.
        (t.step):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/008-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/008.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/008.js: Added.
        (t.step):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/009-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/009.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/010-1.js: Added.
        (t.step):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/010-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/010.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/010.js: Added.
        (t.step):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/011-1.js: Added.
        (t.step):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/011-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/011.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/011.js: Added.
        (t.step):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/012-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/012.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/012.js: Added.
        (t.step):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/013-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/013.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/013.js: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/014-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/014.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/015-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/015.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/016-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/016.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/017-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/017.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/018-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/018.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/019-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/019.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/020-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/020.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/021-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/021.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/022-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/022.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/023-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/023.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/024-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/024.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/025-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/025.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/026-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/026.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/027-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/027.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/028-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/028.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/029-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/029.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/030-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/030.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/031-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/031.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/032-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/032.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/033-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/033.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/034-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/034.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/035-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/035.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/036-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/036.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/037-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/037.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/038-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/038.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/039-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/039.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/040-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/040.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/041-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/041.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/042-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/042.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/043-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/043.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/044-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/044.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/045-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/045.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/046-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/046.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/047-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/047.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/048-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/048.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/049-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/049.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/050-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/050.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/051-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/051.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/contentType.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/contentType.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/contentType.window.js: Added.
        (string_appeared_here.forEach.val.async_test.t.frame.onload.t.step_func_done):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/document.write-01-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/document.write-01.xhtml: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/document.write-02-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/document.write-02.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/empty.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/iframe_001-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/iframe_001.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/iframe_002-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/iframe_002.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/iframe_003-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/iframe_003.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/iframe_004-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/iframe_004.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/iframe_005-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/iframe_005.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/iframe_005.js: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/iframe_006-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/iframe_006.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/iframe_007-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/iframe_007.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/iframe_008-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/iframe_008.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/iframe_009-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/iframe_009.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/iframe_010-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/iframe_010.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/nested-document-write-1.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/nested-document-write-2.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/nested-document-write-external.js: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/original-id.json: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/script_001-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/script_001.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/script_002-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/script_002.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/script_003-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/script_003.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/script_004-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/script_004.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/script_005-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/script_005.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/script_006-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/script_006.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/script_007-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/script_007.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/script_008-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/script_008.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/script_009-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/script_009.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/script_010-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/script_010.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/script_011-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/script_011.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/script_012-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/script_012.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/script_013-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/script_013.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/w3c-import.log: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/write-active-document-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-write/write-active-document.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-writeln/document.writeln-01-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-writeln/document.writeln-01.xhtml: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-writeln/document.writeln-02-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-writeln/document.writeln-02.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-writeln/document.writeln-03-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-writeln/document.writeln-03.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-writeln/original-id.json: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/document-writeln/w3c-import.log: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/002-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/002.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/004-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/004.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/006-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/006.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/011-1.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/011-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/011.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/012-1.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/012-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/012.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/013-1.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/013-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/013.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/014-1.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/014-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/014.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/015-1.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/015-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/015.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/016-1.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/016-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/016.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/abort-refresh-immediate.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/abort-refresh-immediate.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/abort-refresh-immediate.window.js: Added.
        (async_test.t.frame.onload.t.step_func):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/abort-refresh-multisecond-header.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/abort-refresh-multisecond-header.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/abort-refresh-multisecond-header.window.js: Added.
        (async_test.t.frame.onload.t.step_func):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/abort-refresh-multisecond-meta.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/abort-refresh-multisecond-meta.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/abort-refresh-multisecond-meta.window.js: Added.
        (async_test.t.frame.onload.t.step_func):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/abort-while-navigating.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/abort-while-navigating.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/abort-while-navigating.window.js: Added.
        (async_test.t.frame.onload.t.step_func):
        (async_test.t.t.step_timeout):
        (async_test.t.t.step_timeout.t.step_func_done):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/abort.sub.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/abort.sub.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/abort.sub.window.js: Added.
        (async_test.t.frame.onload.t.step_func):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/aborted-parser.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/aborted-parser.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/aborted-parser.window.js: Added.
        (async_test.t.window.handlers.afterOpen.t.step_func_done):
        (async_test.t.window.handlers.afterOpenAsync.t.step_func_done):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/active.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/active.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/active.window.js: Added.
        (assertOpenIsEffective):
        (async_test.t.frame.onload.t.step_func):
        (async_test.t.xhr.onload.t.step_func_done):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/bailout-exception-vs-return-origin.sub.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/bailout-exception-vs-return-origin.sub.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/bailout-exception-vs-return-origin.sub.window.js: Added.
        (setEntryToTopLevel):
        (async_test.t.t.add_cleanup):
        (async_test.t.iframe.onload.t.step_func_done):
        (async_test.t.window.onCustomElementReady.t.step_func):
        (async_test.t.self.testSynchronousScript.t.step_func):
        (string_appeared_here.async_test.t.t.add_cleanup):
        (string_appeared_here.async_test.t.t.step_func):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/bailout-exception-vs-return-xml.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/bailout-exception-vs-return-xml.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/bailout-exception-vs-return-xml.window.js: Added.
        (async_test.t.t.add_cleanup):
        (async_test.t.self.testSynchronousScript.t.step_func_done):
        (string_appeared_here.async_test.t.t.add_cleanup):
        (string_appeared_here.async_test.t.t.step_func):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/bailout-side-effects-ignore-opens-during-unload.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/bailout-side-effects-ignore-opens-during-unload.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/bailout-side-effects-ignore-opens-during-unload.window.js: Added.
        (string_appeared_here.async_test.t.iframe.onload.t.step_func):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/bailout-side-effects-same-origin-domain.sub.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/bailout-side-effects-same-origin-domain.sub.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/bailout-side-effects-same-origin-domain.sub.window.js: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/bailout-side-effects-synchronous-script.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/bailout-side-effects-synchronous-script.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/bailout-side-effects-synchronous-script.window.js: Added.
        (async_test.t.self.testSynchronousScript.t.step_func):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/bailout-side-effects-xml.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/bailout-side-effects-xml.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/bailout-side-effects-xml.window.js: Added.
        (async_test.t.iframe.onload.t.step_func_done):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/beforeunload.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/beforeunload.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/beforeunload.window.js: Added.
        (async_test.t.frame.onload.t.step_func):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/custom-element.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/custom-element.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/custom-element.window.js: Added.
        (CustomElement):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/document.open-01-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/document.open-01.xhtml: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/document.open-02-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/document.open-02.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/document.open-03-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/document.open-03-frame.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/document.open-03.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/encoding.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/encoding.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/encoding.window.js: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/event-listeners.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/event-listeners.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/event-listeners.window.js: Added.
        (async_test.t.frame.onload.t.step_func):
        (test.t.const.winListener.t.step_func):
        (test.t.t.add_cleanup):
        (test.t.const.bodyListener.t.step_func):
        (async_test.t.xhr.onload.t.step_func_done):
        (test.t.t.step_func):
        (test.t.thrower.t.step_func):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/history-state.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/history-state.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/history-state.window.js: Added.
        (async_test.t.iframe.onload.t.step_func_done):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/history.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/history.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/history.window.js: Added.
        (window.onFrameLoaded.t.step_func):
        (window.onDocumentOpen.t.step_func_done):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/ignore-opens-during-unload.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/ignore-opens-during-unload.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/ignore-opens-during-unload.window.js: Added.
        (async_test.t.iframe.onload.t.step_func):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/mutation-events.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/mutation-events.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/mutation-events.window.js: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/mutation-observer.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/mutation-observer.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/mutation-observer.window.js: Added.
        (async_test.t.t.add_cleanup):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/no-new-global.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/no-new-global.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/no-new-global.window.js: Added.
        (async_test.t.frame.onload.t.step_func_done):
        (testIdentity):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/origin-check-in-document-open-basic-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/origin-check-in-document-open-basic.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/origin-check-in-document-open-same-origin-domain.sub-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/origin-check-in-document-open-same-origin-domain.sub.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/quirks.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/quirks.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/quirks.window.js: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/readiness.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/readiness.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/readiness.window.js: Added.
        (async_test.t.t.add_cleanup):
        (async_test.t.frame.onload.t.step_func_done):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/reload.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/reload.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/reload.window.js: Added.
        (window.name.string_appeared_here.async_test.t.t.add_cleanup):
        (window.name.string_appeared_here.async_test.t.t.step_func):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/resources/aborted-parser-async-frame.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/resources/aborted-parser-frame.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/resources/bailout-order-custom-element-with-domain-frame.sub.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/resources/bailout-order-synchronous-script-frame.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/resources/bailout-order-synchronous-script-with-domain-frame.sub.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/resources/bailout-order-xml-with-domain-frame.sub.xhtml: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/resources/bailout-order-xml-with-synchronous-script-frame.xhtml: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/resources/document-open-side-effects.js: Added.
        (assertDocumentIsReadyForSideEffectsTest):
        (assertOpenHasNoSideEffects):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/resources/dummy.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/resources/encoding-frame.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/resources/global-variables-frame.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/resources/history-frame.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/resources/http-refresh.py: Added.
        (main):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/resources/meta-refresh.py: Added.
        (main):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/resources/page-with-frame.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/resources/set-document-domain.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/resources/slow-png.py: Added.
        (main):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/resources/url-frame.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/resources/w3c-import.log: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/tasks.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/tasks.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/tasks.window.js: Added.
        (taskTest):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/type-argument-plaintext-subframe.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/type-argument-plaintext.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/type-argument-plaintext.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/type-argument-plaintext.window.js: Added.
        (string_appeared_here.forEach.type.async_test.t.frame.onload.t.step_func_done):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/type-argument.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/type-argument.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/type-argument.window.js: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/unload.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/unload.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/unload.window.js: Added.
        (async_test.t.frame.onload.t.step_func):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/url-fragment.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/url-fragment.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/url-fragment.window.js: Added.
        (async_test.t.t.add_cleanup):
        (async_test.t.self.onhashchange.t.step_func_done):
        (async_test.t.const.frame.document.body.appendChild.document.createElement.string_appeared_here.t.add_cleanup):
        (async_test.t.window.testDone.t.step_func_done):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/url.window-expected.txt: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/url.window.html: Added.
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/url.window.js: Added.
        (async_test.t.frame.onload.t.step_func):
        * web-platform-tests/html/webappapis/dynamic-markup-insertion/opening-the-input-stream/w3c-import.log: Added.

2018-09-24  Yoav Weiss  <yoav@yoav.ws>

        Import WPT resource-timing tests
        https://bugs.webkit.org/show_bug.cgi?id=189903

        Reviewed by Youenn Fablet.

        * web-platform-tests/resource-timing/META.yml: Added.
        * web-platform-tests/resource-timing/OWNERS: Removed.
        * web-platform-tests/resource-timing/clear_resource_timing_functionality.html: Added.
        * web-platform-tests/resource-timing/clear_resource_timing_functionality-expected.txt: Added.
        * web-platform-tests/resource-timing/idlharness.any.html: Added.
        * web-platform-tests/resource-timing/idlharness.any-expected.txt: Added.
        * web-platform-tests/resource-timing/idlharness.any.js: Added.
        (idl_array.catch):
        * web-platform-tests/resource-timing/idlharness.any.worker.html: Added.
        * web-platform-tests/resource-timing/idlharness.any.worker-expected.txt: Added.
        * web-platform-tests/resource-timing/idlharness.html: Removed.
        * web-platform-tests/resource-timing/resource-timing-tojson.html: Added.
        * web-platform-tests/resource-timing/resource-timing-tojson-expected.txt: Added.
        * web-platform-tests/resource-timing/resource_TAO_cross_origin_redirect_chain.html: Added.
        * web-platform-tests/resource-timing/resource_TAO_cross_origin_redirect_chain-expected.txt: Added.
        * web-platform-tests/resource-timing/resource_TAO_match_origin.htm:
        * web-platform-tests/resource-timing/resource_TAO_match_origin-expected.txt: Changed.
        * web-platform-tests/resource-timing/resource_TAO_match_wildcard.htm:
        * web-platform-tests/resource-timing/resource_TAO_match_wildcard-expected.txt: Changed.
        * web-platform-tests/resource-timing/resource_TAO_multi.htm:
        * web-platform-tests/resource-timing/resource_TAO_multi-expected.txt: Changed.
        * web-platform-tests/resource-timing/resource_TAO_multi_wildcard.html: Copied from LayoutTests/imported/w3c/web-platform-tests/resource-timing/resource_TAO_multi.htm.
        * web-platform-tests/resource-timing/resource_TAO_multi_wildcard-expected.txt: Added.
        * web-platform-tests/resource-timing/resource_TAO_null.htm:
        * web-platform-tests/resource-timing/resource_TAO_null-expected.txt: Changed.
        * web-platform-tests/resource-timing/resource_TAO_origin_uppercase.htm:
        * web-platform-tests/resource-timing/resource_TAO_origin_uppercase-expected.txt: Changed.
        * web-platform-tests/resource-timing/resource_TAO_space.htm:
        * web-platform-tests/resource-timing/resource_TAO_space-expected.txt: Changed.
        * web-platform-tests/resource-timing/resource_TAO_wildcard.htm:
        * web-platform-tests/resource-timing/resource_TAO_wildcard-expected.txt: Changed.
        * web-platform-tests/resource-timing/resource_dedicated_worker.html: Added.
        * web-platform-tests/resource-timing/resource_dedicated_worker-expected.txt: Added.
        * web-platform-tests/resource-timing/resource_ignore_data_url.html: Added.
        * web-platform-tests/resource-timing/resource_ignore_data_url-expected.txt: Added.
        * web-platform-tests/resource-timing/resource_ignore_failures.html: Added.
        * web-platform-tests/resource-timing/resource_ignore_failures-expected.txt: Added.
        * web-platform-tests/resource-timing/resource_initiator_types.html: Added.
        * web-platform-tests/resource-timing/resource_initiator_types-expected.txt: Added.
        * web-platform-tests/resource-timing/resource_memory_cached.sub.html: Added.
        * web-platform-tests/resource-timing/resource_memory_cached.sub-expected.txt: Added.
        * web-platform-tests/resource-timing/resource_redirects.html: Added.
        * web-platform-tests/resource-timing/resource_redirects-expected.txt: Added.
        * web-platform-tests/resource-timing/resource_reparenting.html: Added.
        * web-platform-tests/resource-timing/resource_reparenting-expected.txt: Added.
        * web-platform-tests/resource-timing/resource_script_types.html: Added.
        * web-platform-tests/resource-timing/resource_script_types-expected.txt: Added.
        * web-platform-tests/resource-timing/resource_subframe_self_navigation.html: Added.
        * web-platform-tests/resource-timing/resource_subframe_self_navigation-expected.txt: Added.
        * web-platform-tests/resource-timing/resource_timing.worker.html: Added.
        * web-platform-tests/resource-timing/resource_timing.worker-expected.txt: Added.
        * web-platform-tests/resource-timing/resource_timing.worker.js: Added.
        (check):
        (async_test.t.then):
        * web-platform-tests/resource-timing/resource_timing_TAO_cross_origin_redirect.html: Added.
        * web-platform-tests/resource-timing/resource_timing_TAO_cross_origin_redirect-expected.txt: Added.
        * web-platform-tests/resource-timing/resource_timing_buffer_full_eventually.html: Added.
        * web-platform-tests/resource-timing/resource_timing_buffer_full_eventually-expected.txt: Added.
        * web-platform-tests/resource-timing/resource_timing_buffer_full_when_populate_entries.html: Added.
        * web-platform-tests/resource-timing/resource_timing_buffer_full_when_populate_entries-expected.txt: Added.
        * web-platform-tests/resource-timing/resource_timing_buffer_full_when_shrink_buffer_size.html: Added.
        * web-platform-tests/resource-timing/resource_timing_buffer_full_when_shrink_buffer_size-expected.txt: Added.
        * web-platform-tests/resource-timing/resource_timing_cross_origin_redirect.html: Added.
        * web-platform-tests/resource-timing/resource_timing_cross_origin_redirect-expected.txt: Added.
        * web-platform-tests/resource-timing/resource_timing_cross_origin_redirect_chain.html: Added.
        * web-platform-tests/resource-timing/resource_timing_cross_origin_redirect_chain-expected.txt: Added.
        * web-platform-tests/resource-timing/resource_timing_same_origin_redirect.html: Added.
        * web-platform-tests/resource-timing/resource_timing_same_origin_redirect-expected.txt: Added.
        * web-platform-tests/resource-timing/resource_timing_store_and_clear_during_callback.html: Added.
        * web-platform-tests/resource-timing/resource_timing_store_and_clear_during_callback-expected.txt: Added.
        * web-platform-tests/resource-timing/resources/TAOResponse.py:
        (main):
        * web-platform-tests/resource-timing/resources/all_resource_types.htm: Added.
        * web-platform-tests/resource-timing/resources/blank_page_green.htm: Added.
        * web-platform-tests/resource-timing/resources/empty.js: Added.
        * web-platform-tests/resource-timing/resources/empty.py: Added.
        (main):
        * web-platform-tests/resource-timing/resources/empty_script.js: Added.
        * web-platform-tests/resource-timing/resources/eventsource.py: Added.
        (main):
        * web-platform-tests/resource-timing/resources/green_frame.htm: Added.
        * web-platform-tests/resource-timing/resources/iframe_TAO_multi_wildcard.html: Added.
        * web-platform-tests/resource-timing/resources/multi_redirect.py: Added.
        (main):
        * web-platform-tests/resource-timing/resources/nested.css: Added.
        (@import "resource_timing_test0.css?id=n1";):
        (ol):
        * web-platform-tests/resource-timing/resources/notify_parent.html: Added.
        * web-platform-tests/resource-timing/resources/self_navigation.html: Added.
        * web-platform-tests/resource-timing/resources/w3c-import.log:
        * web-platform-tests/resource-timing/resources/worker_with_images.js: Added.
        (checkDone):
        (makeRequest.xhr.onreadystatechange):
        (makeRequest):
        * web-platform-tests/resource-timing/w3c-import.log:

2018-09-21  Dean Jackson  <dino@apple.com>

        Add PointerEvent, plus feature flag, plus Web Platform Tests
        https://bugs.webkit.org/show_bug.cgi?id=189867
        <rdar://problem/44697384>

        Reviewed by Simon Fraser.

        Import the Web Platform Tests for Pointer Events.

        * resources/import-expectations.json:
        * web-platform-tests/pointerevents/META.yml: Added.
        * web-platform-tests/pointerevents/README.md: Added.
        * web-platform-tests/pointerevents/extension/idlharness.window-expected.txt: Added.
        * web-platform-tests/pointerevents/extension/idlharness.window.html: Added.
        * web-platform-tests/pointerevents/extension/idlharness.window.js: Added.
        * web-platform-tests/pointerevents/extension/pointerevent_constructor-expected.txt: Added.
        * web-platform-tests/pointerevents/extension/pointerevent_constructor.html: Added.
        * web-platform-tests/pointerevents/extension/pointerevent_touch-action-verification-expected.txt: Added.
        * web-platform-tests/pointerevents/extension/pointerevent_touch-action-verification.html: Added.
        * web-platform-tests/pointerevents/extension/w3c-import.log: Added.
        * web-platform-tests/pointerevents/idlharness.window-expected.txt: Added.
        * web-platform-tests/pointerevents/idlharness.window.html: Added.
        * web-platform-tests/pointerevents/idlharness.window.js: Added.
        * web-platform-tests/pointerevents/pointerevent_constructor-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_constructor.html: Added.
        * web-platform-tests/pointerevents/pointerevent_on_event_handlers-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_on_event_handlers.html: Added.
        * web-platform-tests/pointerevents/pointerevent_styles.css: Added.
        * web-platform-tests/pointerevents/pointerevent_support.js: Added.
        * web-platform-tests/pointerevents/pointerevent_touch-action-illegal-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_touch-action-illegal.html: Added.
        * web-platform-tests/pointerevents/pointerevent_touch-action-verification-expected.txt: Added.
        * web-platform-tests/pointerevents/pointerevent_touch-action-verification.html: Added.
        * web-platform-tests/pointerevents/pointerlock/resources/pointerevent_movementxy-iframe.html: Added.
        * web-platform-tests/pointerevents/pointerlock/resources/w3c-import.log: Added.
        * web-platform-tests/pointerevents/resources/pointerevent_attributes_hoverable_pointers-iframe.html: Added.
        * web-platform-tests/pointerevents/resources/pointerevent_fractional_coordinates-iframe.html: Added.
        * web-platform-tests/pointerevents/resources/pointerevent_pointerId_scope-iframe.html: Added.
        * web-platform-tests/pointerevents/resources/w3c-import.log: Added.
        * web-platform-tests/pointerevents/w3c-import.log: Added.

2018-09-21  YUHAN WU  <yuhan_wu@apple.com>

        Import WPT content hint tests
        https://bugs.webkit.org/show_bug.cgi?id=189854

        Reviewed by Youenn Fablet.

        * resources/import-expectations.json:
        * web-platform-tests/mst-content-hint/META.yml: Added.
        * web-platform-tests/mst-content-hint/MediaStreamTrack-contentHint-expected.txt: Added.
        * web-platform-tests/mst-content-hint/MediaStreamTrack-contentHint.html: Added.
        * web-platform-tests/mst-content-hint/idlharness.window.html: Added.
        * web-platform-tests/mst-content-hint/idlharness.window.js: Added.
        * web-platform-tests/mst-content-hint/w3c-import.log: Added.

2018-09-21  Youenn Fablet  <youenn@apple.com>

        Add RTCCodecStats support
        https://bugs.webkit.org/show_bug.cgi?id=189792
        <rdar://problem/32370668>

        Reviewed by Eric Carlson.

        * web-platform-tests/webrtc/RTCPeerConnection-addIceCandidate-expected.txt:
        * web-platform-tests/webrtc/RTCRtpReceiver-getStats.https-expected.txt:
        * web-platform-tests/webrtc/RTCRtpSender-getStats.https-expected.txt:

2018-09-20  Frederic Wang  <fwang@igalia.com>

        Synchronize CSSOM View test suite against upstream WPT
        https://bugs.webkit.org/show_bug.cgi?id=189787

        Reviewed by Antonio Gomes.

        * web-platform-tests/css/cssom-view/META.yml: Added.
        * web-platform-tests/css/cssom-view/OWNERS: Removed.
        * web-platform-tests/css/cssom-view/cssom-getBoundingClientRect-vertical-rl-expected.html: Added.
        * web-platform-tests/css/cssom-view/cssom-getBoundingClientRect-vertical-rl.html: Added.
        * web-platform-tests/css/cssom-view/cssom-view-window-screen-interface-expected.txt:
        * web-platform-tests/css/cssom-view/cssom-view-window-screen-interface.html:
        * web-platform-tests/css/cssom-view/dom-element-scroll-expected.txt: Added.
        * web-platform-tests/css/cssom-view/dom-element-scroll.html: Added.
        * web-platform-tests/css/cssom-view/elementFromPoint-mixed-font-sizes-expected.txt: Added.
        * web-platform-tests/css/cssom-view/elementFromPoint-mixed-font-sizes.html: Added.
        * web-platform-tests/css/cssom-view/interfaces-expected.txt:
        * web-platform-tests/css/cssom-view/interfaces.html:
        * web-platform-tests/css/cssom-view/media-query-list-interface-expected.txt: Removed.
        * web-platform-tests/css/cssom-view/media-query-list-interface.xht: Removed.
        * web-platform-tests/css/cssom-view/resources/w3c-import.log:
        * web-platform-tests/css/cssom-view/scroll-behavior-default-css-expected.txt: Added.
        * web-platform-tests/css/cssom-view/scroll-behavior-default-css.html: Added.
        * web-platform-tests/css/cssom-view/scroll-behavior-element-expected.txt: Added.
        * web-platform-tests/css/cssom-view/scroll-behavior-element.html: Added.
        * web-platform-tests/css/cssom-view/scroll-behavior-main-frame-root-expected.txt: Added.
        * web-platform-tests/css/cssom-view/scroll-behavior-main-frame-root.html: Added.
        * web-platform-tests/css/cssom-view/scroll-behavior-main-frame-window-expected.txt: Added.
        * web-platform-tests/css/cssom-view/scroll-behavior-main-frame-window.html: Added.
        * web-platform-tests/css/cssom-view/scroll-behavior-scrollintoview-nested-expected.txt: Added.
        * web-platform-tests/css/cssom-view/scroll-behavior-scrollintoview-nested.html: Added.
        * web-platform-tests/css/cssom-view/scroll-behavior-smooth-positions-expected.txt: Added.
        * web-platform-tests/css/cssom-view/scroll-behavior-smooth-positions.html: Added.
        * web-platform-tests/css/cssom-view/scroll-behavior-subframe-root-expected.txt: Added.
        * web-platform-tests/css/cssom-view/scroll-behavior-subframe-root.html: Added.
        * web-platform-tests/css/cssom-view/scroll-behavior-subframe-window-expected.txt: Added.
        * web-platform-tests/css/cssom-view/scroll-behavior-subframe-window.html: Added.
        * web-platform-tests/css/cssom-view/scrollIntoView-vertical-rl-writing-mode-expected.txt: Added.
        * web-platform-tests/css/cssom-view/scrollIntoView-vertical-rl-writing-mode.html: Added.
        * web-platform-tests/css/cssom-view/support/scroll-behavior.js: Added.
        (observeScrolling):
        (waitForScrollEnd):
        (scrollNode):
        (scrollWindow):
        * web-platform-tests/css/cssom-view/support/support/w3c-import.log:
        * web-platform-tests/css/cssom-view/support/w3c-import.log:
        * web-platform-tests/css/cssom-view/table-client-props-expected.txt: Added.
        * web-platform-tests/css/cssom-view/table-client-props.html: Added.
        * web-platform-tests/css/cssom-view/table-offset-props-expected.txt: Added.
        * web-platform-tests/css/cssom-view/table-offset-props.html: Added.
        * web-platform-tests/css/cssom-view/table-scroll-props-expected.txt: Added.
        * web-platform-tests/css/cssom-view/table-scroll-props.html: Added.
        * web-platform-tests/css/cssom-view/w3c-import.log:
        * web-platform-tests/css/cssom-view/window-interface-expected.txt: Removed.
        * web-platform-tests/css/cssom-view/window-interface.xht: Removed.

2018-09-19  YUHAN WU  <yuhan_wu@apple.com>

        MediaStream-MediaElement-srcObject.https.html expects video duration for a MediaStream to be Infinity and is currently NaN
        https://bugs.webkit.org/show_bug.cgi?id=189516

        Reviewed by Youenn Fablet.

        * web-platform-tests/mediacapture-streams/MediaStream-MediaElement-srcObject.https.html:
        * web-platform-tests/mediacapture-streams/MediaStream-MediaElement-srcObject.https-expected.txt:

2018-09-19  Youenn Fablet  <youenn@apple.com>

        Implement sender/receiver getStats
        https://bugs.webkit.org/show_bug.cgi?id=189707

        Reviewed by Eric Carlson.

        * web-platform-tests/webrtc/RTCRtpReceiver-getStats.https-expected.txt:
        * web-platform-tests/webrtc/RTCRtpSender-getStats.https-expected.txt:

2018-09-18  Youenn Fablet  <youenn@apple.com>

        Implement RTCRtpReceiver getContributingSources/getSynchronizationSources
        https://bugs.webkit.org/show_bug.cgi?id=189671

        Reviewed by Eric Carlson.

        * web-platform-tests/webrtc/RTCRtpReceiver-getContributingSources.https-expected.txt:
        * web-platform-tests/webrtc/RTCRtpReceiver-getSynchronizationSources.https-expected.txt:
        * web-platform-tests/webrtc/interfaces-expected.txt: Removed, as no longer needed.

2018-09-18  Manuel Rego Casasnovas  <rego@igalia.com>

        [css-grid] Static position should use content-box, not padding-box
        https://bugs.webkit.org/show_bug.cgi?id=189698

        Reviewed by Javier Fernandez.

        * web-platform-tests/css/css-grid/abspos/absolute-positioning-grid-container-parent-001.html:
        Update tests from WPT.

2018-09-12  Ryosuke Niwa  <rniwa@webkit.org>

        Update composedPath to match the latest spec
        https://bugs.webkit.org/show_bug.cgi?id=180378
        <rdar://problem/42843004>

        Reviewed by Darin Adler.

        Rebaselined the test now that all test cases pass.

        * web-platform-tests/shadow-dom/event-composed-path-after-dom-mutation-expected.txt:

2018-09-15  Rob Buis  <rbuis@igalia.com>

        XMLHttpRequest::createResponseBlob() should create a Blob with type for empty response
        https://bugs.webkit.org/show_bug.cgi?id=189627

        Reviewed by Alexey Proskuryakov.

        * web-platform-tests/xhr/overridemimetype-blob-expected.txt:

2018-09-14  Ms2ger  <Ms2ger@igalia.com>

        Remove some obsolete XHR tests
        https://bugs.webkit.org/show_bug.cgi?id=189581

        Reviewed by Youenn Fablet.

        These tests were removed upstream, but stuck around in WebKit.

        * web-platform-tests/xhr/OWNERS: Removed.
        * web-platform-tests/xhr/abort-during-open-expected.txt: Removed.
        * web-platform-tests/xhr/abort-during-open.htm: Removed.
        * web-platform-tests/xhr/abort-during-open.js: Removed.
        * web-platform-tests/xhr/abort-during-open.worker-expected.txt: Removed.
        * web-platform-tests/xhr/abort-during-open.worker.html: Removed.
        * web-platform-tests/xhr/abort-during-open.worker.js: Removed.
        * web-platform-tests/xhr/getallresponseheaders-cl-expected.txt: Removed.
        * web-platform-tests/xhr/getallresponseheaders-cl.htm: Removed.
        * web-platform-tests/xhr/interfaces-expected.txt: Removed.
        * web-platform-tests/xhr/interfaces.html: Removed.
        * web-platform-tests/xhr/open-url-bogus-expected.txt: Removed.
        * web-platform-tests/xhr/open-url-bogus.htm: Removed.
        * web-platform-tests/xhr/overridemimetype-done-state-expected.txt: Removed.
        * web-platform-tests/xhr/overridemimetype-done-state.htm: Removed.
        * web-platform-tests/xhr/readme.txt: Removed.
        * web-platform-tests/xhr/responsetype-expected.txt: Removed.
        * web-platform-tests/xhr/responsetype.html: Removed.
        * web-platform-tests/xhr/send-non-same-origin.sub-expected.txt: Removed.
        * web-platform-tests/xhr/send-non-same-origin.sub.htm: Removed.
        * web-platform-tests/xhr/send-send-expected.txt: Removed.
        * web-platform-tests/xhr/send-send.htm: Removed.
        * web-platform-tests/xhr/send-send.js: Removed.
        * web-platform-tests/xhr/send-send.worker-expected.txt: Removed.
        * web-platform-tests/xhr/send-send.worker.html: Removed.
        * web-platform-tests/xhr/send-send.worker.js: Removed.
        * web-platform-tests/xhr/send-usp-expected.txt: Removed.
        * web-platform-tests/xhr/send-usp.html: Removed.
        * web-platform-tests/xhr/send-usp.js: Removed.

2018-09-12  Ryosuke Niwa  <rniwa@webkit.org>

        Capturing event listeners are called during bubbling phase for shadow hosts
        https://bugs.webkit.org/show_bug.cgi?id=174288

        Reviewed by Darin Adler.

        * web-platform-tests/dom/events/Event-dispatch-handlers-changed-expected.txt: Rebaselined. This test's
        expectation is now wrong because event listner 3 is added after the event listener list is cloned for
        capturing event listeners but before cloned for bubbling event listeners. As a result, event listener 3
        is now invoked. It used to be not called because both bubbling and capturing event listeners are called
        after cloning the event listner list once, which didn't have event listener 3.

        * web-platform-tests/dom/events/EventTarget-dispatchEvent-expected.txt: Rebaselined. This test expects
        event listener 2, which is bubbling, to be called between two capturing event listeners 1 and 3, which
        is no longer true after this patch.

2018-09-12  Chris Dumez  <cdumez@apple.com>

        Unreviewed, rebaseline imported/w3c/web-platform-tests/url/failure.html after r235808.

        New checks are passing.

        * web-platform-tests/url/failure-expected.txt:

2018-09-11  Dean Jackson  <dino@apple.com>

        Header parsing for experimental and internal debug features
        https://bugs.webkit.org/show_bug.cgi?id=189486
        <rdar://problem/44320618>

        Reviewed by Tim Horton.

        New webkit-test-runner headers.

        * web-platform-tests/css-timing-1/frames-timing-functions-output.html:
        * web-platform-tests/media-source/mediasource-changetype-play.html:
        * web-platform-tests/media-source/mediasource-changetype.html:
        * web-platform-tests/web-animations/animation-model/keyframe-effects/effect-value-context.html:
        * web-platform-tests/web-animations/interfaces/Animatable/animate.html:
        * web-platform-tests/web-animations/interfaces/Animation/ready.html:
        * web-platform-tests/web-animations/timing-model/animations/current-time.html:
        * web-platform-tests/web-animations/timing-model/animations/playing-an-animation.html:
        * web-platform-tests/web-animations/timing-model/animations/reversing-an-animation.html:

2018-09-12  YUHAN WU  <yuhan_wu@apple.com>

        Import media recorder api WPT tests
        https://bugs.webkit.org/show_bug.cgi?id=189526

        Reviewed by Youenn Fablet.

        * resources/import-expectations.json:
        * web-platform-tests/mediacapture-record/BlobEvent-constructor-expected.txt: Added.
        * web-platform-tests/mediacapture-record/BlobEvent-constructor.html: Added.
        * web-platform-tests/mediacapture-record/META.yml: Added.
        * web-platform-tests/mediacapture-record/idlharness.window-expected.txt: Added.
        * web-platform-tests/mediacapture-record/idlharness.window.html: Added.
        * web-platform-tests/mediacapture-record/idlharness.window.js: Added.
        (idl_array.catch):
        * web-platform-tests/mediacapture-record/w3c-import.log: Added.

2018-09-12  Ali Juma  <ajuma@chromium.org>

        [IntersectionObserver] Implement rootMargin expansion
        https://bugs.webkit.org/show_bug.cgi?id=189525

        Reviewed by Simon Fraser.

        Rebasline expectation for test that now passes.

        * web-platform-tests/intersection-observer/root-margin-expected.txt:

2018-09-11  Ali Juma  <ajuma@chromium.org>

        [IntersectionObserver] Update WPTs to the latest upstream version
        https://bugs.webkit.org/show_bug.cgi?id=189515

        Reviewed by Youenn Fablet.

        * web-platform-tests/intersection-observer/initial-observation-with-threshold-expected.txt: Added.
        * web-platform-tests/intersection-observer/initial-observation-with-threshold.html: Added.
        * web-platform-tests/intersection-observer/resources/intersection-observer-test-utils.js:
        (waitForNotification):
        * web-platform-tests/intersection-observer/w3c-import.log:

2018-09-11  Youenn Fablet  <youenn@apple.com>

        Remove MediaDevices NoInterfaceObject
        https://bugs.webkit.org/show_bug.cgi?id=189512

        Reviewed by Alex Christensen.

        * web-platform-tests/mediacapture-streams/MediaDevices-IDL-all-expected.txt:
        * web-platform-tests/mediacapture-streams/MediaDevices-IDL-enumerateDevices-expected.txt:

2018-09-11  Chris Dumez  <cdumez@apple.com>

        Unreviewed, rebaseline imported/w3c/web-platform-tests/css/cssom/interfaces.html after r235889.

        * web-platform-tests/css/cssom/interfaces-expected.txt:

== Rolled over to ChangeLog-2018-09-11 ==
