2016-04-25  Brent Fulgham  <bfulgham@apple.com>

        Add port 4190 (managesieve) to port blacklist
        https://bugs.webkit.org/show_bug.cgi?id=156986
        <rdar://problem/9119470>

        Reviewed by Daniel Bates.

        * platform/mac/security/block-test-expected.txt
        * security/block-test-expected.txt:
        * security/block-test.html:

2016-04-25  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline editing tests for ios-simulator-wk1

        Unreviewed test gardening

        * platform/ios-simulator-wk1/editing/deleting/delete-at-paragraph-boundaries-002-expected.txt:
        * +71 more

2016-04-25  Nan Wang  <n_wang@apple.com>

        AX: Crash at -[WebAccessibilityObjectWrapper accessibilityAttributeValue:] + 4391
        https://bugs.webkit.org/show_bug.cgi?id=156987

        Reviewed by Chris Fleizach.

        * accessibility/mac/slider-thumb-value-crash-expected.txt: Added.
        * accessibility/mac/slider-thumb-value-crash.html: Added.

2016-04-25  Brady Eidson  <beidson@apple.com>

        Attempt to fix a flaky test after r200032
        https://bugs.webkit.org/show_bug.cgi?id=156994

        * http/tests/local/fileapi/script-tests/file-last-modified-after-delete.js: Missed renaming this along with all the others.

2016-04-25  Simon Fraser  <simon.fraser@apple.com>

        Toggling animation-play-state can re-start a finished animation
        https://bugs.webkit.org/show_bug.cgi?id=156731

        Reviewed by Dean Jackson.

        * animations/animation-direction-reverse-expected.txt:
        * animations/animation-direction-reverse.html: This is a progression. The test was detecting a
        restarted animation.
        * animations/change-completed-animation-expected.txt: Added.
        * animations/change-completed-animation-transform-expected.html: Added.
        * animations/change-completed-animation-transform.html: Added. Ref test that ensures that the final
        state for normal and accelerated animations is correct.
        * animations/change-completed-animation.html: Added. Tests that changing a property doesn't trigger
        another animation, by detecting a second animationstart event.

2016-04-25  Simon Fraser  <simon.fraser@apple.com>

        play-state not parsed as part of animation shorthand
        https://bugs.webkit.org/show_bug.cgi?id=156959

        Reviewed by Darin Adler.

        * animations/animation-shorthand-expected.txt:
        * animations/animation-shorthand.html:
        * animations/play-state-in-shorthand-expected.txt: Added.
        * animations/play-state-in-shorthand.html: Added.
        * animations/resources/animation-test-helpers.js:
        (getPropertyValue):
        (comparePropertyValue):

2016-04-25  Simon Fraser  <simon.fraser@apple.com>

        Negative animation-delay is treated as 0s
        https://bugs.webkit.org/show_bug.cgi?id=141008

        Reviewed by Daniel Bates.
        
        Ref test that has an initially-paused animation on 'left' and with a
        3d transform.

        * animations/play-state-start-paused-expected.html: Added.
        * animations/play-state-start-paused.html: Added.

2016-04-25  Brady Eidson  <beidson@apple.com>

        Implement latest File object spec (including its constructor).
        https://bugs.webkit.org/show_bug.cgi?id=156511

        Reviewed by Darin Adler.

        * fast/files/file-constructor-expected.txt: Added.
        * fast/files/file-constructor.html: Added.
        
        * http/tests/local/fileapi/file-last-modified-after-delete-expected.txt:
        * http/tests/local/fileapi/script-tests/file-last-modified-after-delete.js:

        * http/tests/local/fileapi/file-last-modified-expected.txt:
        * http/tests/local/fileapi/script-tests/file-last-modified.js:

        * imported/blink/storage/indexeddb/blob-basics-metadata-expected.txt:

2016-04-25  Daniel Bates  <dabates@apple.com>

        REGRESSION (r196012): Subresource may be blocked by Content Security Policy if it only matches 'self'
        https://bugs.webkit.org/show_bug.cgi?id=156935
        <rdar://problem/25351286>

        Reviewed by Darin Adler.

        Add tests to ensure that we match 'self' correctly in an iframe with an about:blank document.

        * http/tests/security/contentSecurityPolicy/iframe-blank-url-programmatically-add-external-script-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/iframe-blank-url-programmatically-add-external-script.html: Added.
        * http/tests/security/contentSecurityPolicy/iframe-srcdoc-external-script-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/iframe-srcdoc-external-script.html: Added.

2016-04-25  Ryan Haddad  <ryanhaddad@apple.com>

        Marking media/video-fullscreen-restriction-removed.html as flaky on Mac
        https://bugs.webkit.org/show_bug.cgi?id=156983

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-04-25  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        Drop [UsePointersEvenForNonNullableObjectArguments] from File API interfaces
        https://bugs.webkit.org/show_bug.cgi?id=156898

        Reviewed by Chris Dumez.

        Checking FileReaderSync send method in case of null or undefined blob parameter.
        worker-read-blob-sync.html and worker-read-file-sync check the case of badly typed parameters.
        In all cases, TypeError is thrown.

        * fast/files/workers/resources/worker-file-reader-sync-bad-parameter.js: Added.
        (test):
        * fast/files/workers/worker-file-reader-sync-bad-parameter-expected.txt: Added.
        * fast/files/workers/worker-file-reader-sync-bad-parameter.html: Added.
        * fast/files/workers/worker-read-blob-sync-expected.txt: Rebasing expectation.
        * fast/files/workers/worker-read-file-sync-expected.txt: Ditto.

2016-04-25  Manuel Rego Casasnovas  <rego@igalia.com>

        [css-grid] Fix grid-template-columns|rows computed style with content alignment
        https://bugs.webkit.org/show_bug.cgi?id=156793

        Reviewed by Darin Adler.

        * fast/css-grid-layout/grid-template-columns-rows-computed-style-gaps-content-alignment-expected.txt: Added.
        * fast/css-grid-layout/grid-template-columns-rows-computed-style-gaps-content-alignment.html: Added.

2016-04-25  Frederic Wang  <fwang@igalia.com>

        Refactor RenderMathMLMenclose.
        https://bugs.webkit.org/show_bug.cgi?id=155019

        Reviewed by Sergio Villar Senin.

        * mathml/presentation/menclose-notation-attribute-set1.html: Removed.
        This is replaced with menclose-notation-values.
        * mathml/presentation/menclose-notation-attribute-set1-expected.txt: Removed.
        This is replaced with menclose-notation-values.
        * mathml/presentation/menclose-notation-attribute-set2-expected-mismatch.html: Removed.
        This is replaced with menclose-notation-values.
        * mathml/presentation/menclose-notation-attribute-set2.html: Removed.
        This is replaced with menclose-notation-values.
        * mathml/presentation/menclose-notation-values.html: Added.
        This test verifies the rendering of various menclose notations.
        * mathml/presentation/menclose-notation-equivalence.html: Added.
        This test verifies some equivalence for the notation attribute value.
        * mathml/presentation/menclose-notation-equivalence-expected.html: Added.
        * mathml/presentation/menclose-notation-radical.html: Update the test now that support for
        the radical notation is removed.
        * mathml/presentation/menclose-notation-radical-expected.html: ditto.
        * platform/gtk/mathml/presentation/menclose-notation-default-longdiv-expected.png: Update
        reference due to small changes in longdiv implementation.
        * platform/gtk/mathml/presentation/menclose-notation-default-longdiv-expected.txt: ditto.
        * platform/mac/mathml/presentation/menclose-notation-default-longdiv-expected.png: ditto.
        * platform/mac/mathml/presentation/menclose-notation-default-longdiv-expected.txt: ditto.
        * platform/ios-simulator/mathml/presentation/menclose-notation-default-longdiv-expected.txt: ditto
        * platform/gtk/mathml/presentation/menclose-notation-values-expected.png: Added.
        * platform/gtk/mathml/presentation/menclose-notation-values-expected.txt: Added.
        * platform/mac/mathml/presentation/menclose-notation-values-expected.png: Added.
        * platform/mac/mathml/presentation/menclose-notation-values-expected.txt: Added.
        * platform/ios-simulator/mathml/presentation/menclose-notation-values-expected.txt: Added.

2016-04-24  Gyuyoung Kim  <gyuyoung.kim@webkit.org>

        [EFL] Some media tests have been failed after bumping gstreamer ver.

        Unreviewed EFL gardening. Mark failing tests to timeout or failure.

        * platform/efl/TestExpectations:

2016-04-24  Chris Dumez  <cdumez@apple.com>

        Autogenerated IDBFactory.open() does the wrong thing if you pass an explicit 'undefined' as the second argument
        https://bugs.webkit.org/show_bug.cgi?id=156939

        Reviewed by Darin Adler.

        Update / rebaseline existing test now that passing undefined as second parameter to
        IDBFactory.open() no longer throws.

        * storage/indexeddb/intversion-bad-parameters-expected.txt:
        * storage/indexeddb/intversion-bad-parameters-private-expected.txt:
        * storage/indexeddb/resources/intversion-bad-parameters.js:
        (deleteSuccess):

2016-04-23  Chris Dumez  <cdumez@apple.com>

        [WebIDL] Drop [Default] WebKit-IDL extended attribute
        https://bugs.webkit.org/show_bug.cgi?id=156955

        Reviewed by Darin Adler.

        Rebaseline some tests now that a different exception type is thrown
        for some of our APIs when passing null.

        * editing/selection/extend-expected.txt:
        * fast/dom/Element/attr-param-typechecking-expected.txt:
        * fast/dom/NamedNodeMap-setNamedItem-crash-expected.txt:
        * fast/dynamic/insertAdjacentElement-expected.txt:

2016-04-24  Filip Pizlo <fpizlo@apple.com> and Andy VanWagoner <thetalecrafter@gmail.com>

        [INTL] Implement String.prototype.localeCompare in ECMA-402
        https://bugs.webkit.org/show_bug.cgi?id=147607

        Reviewed by Darin Adler.

        * js/dom/script-tests/string-prototype-properties.js:
        * js/dom/string-prototype-properties-expected.txt:
        * js/regress/locale-compare.html: Added.
        * js/regress/locale-compare-expected.txt: Added.
        * js/regress/scripts-tests/locale-compare.js: Added.
        * js/script-tests/string-localeCompare.js:
        * js/string-localeCompare-expected.txt:
        * js/string-localeCompare.html:

2016-04-22  Filip Pizlo  <fpizlo@apple.com>

        Speed up bound functions a bit
        https://bugs.webkit.org/show_bug.cgi?id=156889

        Reviewed by Saam Barati.

        This microbenchmark speeds up by >4x with this change.

        * js/regress/bound-function-call-expected.txt: Added.
        * js/regress/bound-function-call.html: Added.
        * js/regress/script-tests/bound-function-call.js: Added.
        (foo):

2016-04-22  Chris Dumez  <cdumez@apple.com>

        Cannot access the SQLTransaction.constructor.prototype
        https://bugs.webkit.org/show_bug.cgi?id=156613

        Reviewed by Darin Adler.

        Rebaseline existing test now that more SQL constructors are exposed on the
        global Window object. Also add a test to confirm that it is possible to
        access SQLTransaction.constructor.prototype and that it seems correct.

        * js/dom/global-constructors-attributes-expected.txt:
        * platform/mac-mavericks/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac/js/dom/global-constructors-attributes-expected.txt:
        * storage/websql/transaction-prototype-expected.txt: Added.
        * storage/websql/transaction-prototype.html: Added.

2016-04-22  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Source directives lost when using Function constructor repeatedly
        https://bugs.webkit.org/show_bug.cgi?id=156863
        <rdar://problem/25861064>

        Reviewed by Geoffrey Garen.

        * inspector/debugger/sourceURL-repeated-identical-executions-expected.txt: Added.
        * inspector/debugger/sourceURL-repeated-identical-executions.html: Added.

2016-04-22  Mark Lam  <mark.lam@apple.com>

        javascript jit bug affecting Google Maps.
        https://bugs.webkit.org/show_bug.cgi?id=153431

        Reviewed by Filip Pizlo.

        * js/regress/bug-153431-expected.txt: Added.
        * js/regress/bug-153431.html: Added.
        * js/regress/script-tests/bug-153431.js: Added.

2016-04-22  Geoffrey Garen  <ggaren@apple.com>

        super should be available in object literals
        https://bugs.webkit.org/show_bug.cgi?id=156933

        Reviewed by Saam Barati.

        Updated expected results and added a few new tests.

        * js/arrowfunction-syntax-errors-expected.txt:
        * js/class-syntax-super-expected.txt:
        * js/object-literal-methods-expected.txt:
        * js/script-tests/arrowfunction-syntax-errors.js:
        * js/script-tests/class-syntax-super.js:
        * js/script-tests/object-literal-methods.js:

2016-04-22  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaselining inspector/model/stack-trace.html after r199897

        Unreviewed test gardening.

        * inspector/model/stack-trace-expected.txt:

2016-04-22  Dave Hyatt  <hyatt@apple.com>

        REGRESSION (r189567): The top of Facebook's messenger.com looks visually broken
        https://bugs.webkit.org/show_bug.cgi?id=156869
        <rdar://problem/23204668>

        Reviewed by Zalan Bujtas.

        * fast/block/min-content-box-sizing-expected.html: Added.
        * fast/block/min-content-box-sizing.html: Added.

2016-04-22  Chris Dumez  <cdumez@apple.com>

        Support disabling at runtime IndexedDB constructors exposed to workers
        https://bugs.webkit.org/show_bug.cgi?id=156883

        Reviewed by Darin Adler.

        Add layout test coverage.

        * storage/indexeddb/modern/resources/workers-disabled.js:
        * storage/indexeddb/modern/resources/workers-enable.js:
        * storage/indexeddb/modern/workers-disabled-expected.txt:
        * storage/indexeddb/modern/workers-enable-expected.txt:

2016-04-22  Dave Hyatt  <hyatt@apple.com>

        -webkit-image-set doesn't work inside CSS variables
        https://bugs.webkit.org/show_bug.cgi?id=156915
        <rdar://problem/25473972>

        Reviewed by Zalan Bujtas.

        * fast/hidpi/image-srcset-simple-in-variable-1x-expected.txt: Added.
        * fast/hidpi/image-srcset-simple-in-variable-1x.html: Added.
        * fast/hidpi/image-srcset-simple-in-variable-2x-expected.txt: Added.
        * fast/hidpi/image-srcset-simple-in-variable-2x.html: Added.

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

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

        The LayoutTest added with this change is failing on all
        platforms. (Requested by ryanhaddad on #webkit).

        Reverted changeset:

        "REGRESSION (r189567): The top of Facebook's messenger.com
        looks visually broken"
        https://bugs.webkit.org/show_bug.cgi?id=156869
        http://trac.webkit.org/changeset/199877

2016-04-22  Antti Koivisto  <antti@apple.com>

        REGRESSION (r194898): Multi download of external SVG defs file by <use> xlinks:href (caching)
        https://bugs.webkit.org/show_bug.cgi?id=156368
        <rdar://problem/25611746>

        Reviewed by Simon Fraser.

        * http/tests/svg/resources/symbol-defs.svg: Added.
        * http/tests/svg/svg-use-external-expected.txt: Added.
        * http/tests/svg/svg-use-external.html: Added.

2016-04-22  Chris Dumez  <cdumez@apple.com>

        Drop [UsePointersEvenForNonNullableObjectArguments] from MutationObserver
        https://bugs.webkit.org/show_bug.cgi?id=156890

        Reviewed by Darin Adler.

        Rebaseline now that MutationObserver.observe() throws a TypeError instead
        of a NOT_FOUND_ERR when passed a null Node.

        * fast/dom/MutationObserver/observe-exceptions-expected.txt:

2016-04-22  Dave Hyatt  <hyatt@apple.com>

        REGRESSION (r189567): The top of Facebook's messenger.com looks visually broken
        https://bugs.webkit.org/show_bug.cgi?id=156869
        <rdar://problem/23204668>

        Reviewed by Zalan Bujtas.

        * fast/block/min-content-with-box-sizing-expected.html: Added.
        * fast/block/min-content-with-box-sizing.html: Added.

2016-04-22  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Enable the download attribute support
        https://bugs.webkit.org/show_bug.cgi?id=99025

        Reviewed by Žan Doberšek.

        Unskip tests that should pass now.

        * platform/gtk/TestExpectations:

2016-04-22  Manuel Rego Casasnovas  <rego@igalia.com>

        [css-grid] Fix bug with positioned items in vertical writing mode
        https://bugs.webkit.org/show_bug.cgi?id=156870

        Reviewed by Darin Adler.

        Add new test to check positioned items in different writing modes
        and direction combinations.

        * fast/css-grid-layout/grid-positioned-children-writing-modes-expected.html: Added.
        * fast/css-grid-layout/grid-positioned-children-writing-modes.html: Added.

2016-04-21  Chris Dumez  <cdumez@apple.com>

        Drop [UsePointersEvenForNonNullableObjectArguments] from Document
        https://bugs.webkit.org/show_bug.cgi?id=156881

        Reviewed by Darin Adler.

        Add test cases for cases where the type of the exception being thrown
        has changed.

        * fast/dom/Document/adoptNode-null-expected.txt: Added.
        * fast/dom/Document/adoptNode-null.html: Added.
        * fast/dom/Document/importNode-null-expected.txt: Added.
        * fast/dom/Document/importNode-null.html: Added.
        * fast/dom/importNode-null-expected.txt: Removed.
        * fast/dom/importNode-null.html: Removed.

2016-04-21  Dean Jackson  <dino@apple.com>

        Backdrop Filter should not be visible if element has visibility:hidden
        https://bugs.webkit.org/show_bug.cgi?id=149318
        <rdar://problem/22749780>

        Reviewed by Simon Fraser.

        Three tests that check if a backdrop filter should be visible when
        its owning element is visibility hidden.

        * css3/filters/backdrop/backdrop-with-visibility-hidden-changing-expected.txt: Added.
        * css3/filters/backdrop/backdrop-with-visibility-hidden-changing.html: Added.
        * css3/filters/backdrop/backdrop-with-visibility-hidden-expected.txt: Added.
        * css3/filters/backdrop/backdrop-with-visibility-hidden.html: Added.
        * css3/filters/backdrop/backdrop-with-visibility-hidden-2.html: Added.
        * css3/filters/backdrop/backdrop-with-visibility-hidden-2-expected.html: Added.

2016-04-21  Brady Eidson  <beidson@apple.com>

        Modern IDB (Workers): Get the IDBConnectionProxy from the Document to the WorkerGlobalScope.
        https://bugs.webkit.org/show_bug.cgi?id=156877

        Reviewed by Tim Horton.

        * storage/indexeddb/modern/workers-enable-expected.txt:

2016-04-21  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: sourceMappingURL not loaded in generated script
        https://bugs.webkit.org/show_bug.cgi?id=156022
        <rdar://problem/25438595>

        Reviewed by Geoffrey Garen.

        * inspector/console/messageAdded-from-named-evaluations-expected.txt: Added.
        * inspector/console/messageAdded-from-named-evaluations.html: Added.
        * inspector/debugger/js-stacktrace-expected.txt:
        * inspector/model/stack-trace-expected.txt:

2016-04-21  Simon Fraser  <simon.fraser@apple.com>

        ASSERTION FAILED: accumulation == TransformState::FlattenTransform in WebCore::GraphicsLayerCA::computeVisibleAndCoverageRect
        https://bugs.webkit.org/show_bug.cgi?id=155362

        Reviewed by Zalan Bujtas.

        Test cases that should not assert in debug builds.

        * compositing/clipping/preserve3d-flatten-assertion-nested.html: Added.
        * compositing/clipping/preserve3d-flatten-assertion.html: Added.

2016-04-21  Jiewen Tan  <jiewen_tan@apple.com>

        [iOS] DumpRenderTree crashed in com.apple.WebCore: WebCore::ResourceLoadNotifier::didFailToLoad
        https://bugs.webkit.org/show_bug.cgi?id=156829
        <rdar://problem/23348217>

        Reviewed by Daniel Bates.

        Unmark imported/blink/http/tests/css/remove-placeholder-styles.html as flaky because of bug fix.

        * platform/ios-simulator-wk1/TestExpectations:

2016-04-21  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Debugger statement gets a space after it when pretty printed
        https://bugs.webkit.org/show_bug.cgi?id=156867
        <rdar://problem/25862308>

        Reviewed by Geoffrey Garen.

        * inspector/formatting/formatting-javascript-expected.txt:
        * inspector/formatting/formatting-javascript.html:
        * inspector/formatting/resources/javascript-tests/other-statements-expected.js: Renamed from LayoutTests/inspector/formatting/resources/javascript-tests/throw-statement-expected.js.
        * inspector/formatting/resources/javascript-tests/other-statements.js: Renamed from LayoutTests/inspector/formatting/resources/javascript-tests/throw-statement.js.

2016-04-21  Brady Eidson  <beidson@apple.com>

        Modern IDB (Workers): More IDBConnectionProxy refactoring.
        https://bugs.webkit.org/show_bug.cgi?id=156855

        Reviewed by Darin Adler.

        * storage/indexeddb/modern/workers-enable-expected.txt: Revert some of the PASS expectations to FAIL, just for now.

2016-04-21  Ryan Haddad  <ryanhaddad@apple.com>

        Skip <area ping> tests on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=156857

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-04-21  Eric Carlson  <eric.carlson@apple.com>

        LayoutTest http/tests/media/hls/video-controls-live-stream.html is sometimes flaky
        https://bugs.webkit.org/show_bug.cgi?id=156851
        <rdar://problem/25792102>

        Reviewed by Daniel Bates.

        * http/tests/media/hls/video-controls-live-stream.html: Only listen for events once because
          we don't care if they fire more often.

2016-04-21  Daniel Bates  <dabates@apple.com>

        Add tests for <area ping>
        https://bugs.webkit.org/show_bug.cgi?id=79438
        <rdar://problem/22586699>

        Reviewed by Alexey Proskuryakov.

        * http/tests/navigation/ping-attribute/anchor-cookie.html: Extracted out code into functions setCookie(),
        clearLastPingResultAndRunTest() and clickElement() (defined in utilities.js) so that they can be
        used by this test and others. Also added HTML5 doctype declaration since it is unnecessary to run
        this test in quirks mode.
        * http/tests/navigation/ping-attribute/area-cookie-expected.txt: Added.
        * http/tests/navigation/ping-attribute/area-cookie.html: Added.
        * http/tests/navigation/ping-attribute/area-cross-origin-expected.txt: Added.
        * http/tests/navigation/ping-attribute/area-cross-origin-from-https-expected.txt: Added.
        * http/tests/navigation/ping-attribute/area-cross-origin-from-https.html: Added.
        * http/tests/navigation/ping-attribute/area-cross-origin.html: Added.
        * http/tests/navigation/ping-attribute/area-same-origin-expected.txt: Added.
        * http/tests/navigation/ping-attribute/area-same-origin.html: Added.
        * http/tests/navigation/ping-attribute/resources/utilities.js: Added.
        (setCookie):
        (clearLastPingResultAndRunTest.done):
        (clearLastPingResultAndRunTest):
        (clickElement):

2016-04-21  Antoine Quint  <graouts@apple.com>

        Creating a large number of WebGL contexts should recycle older contexts
        https://bugs.webkit.org/show_bug.cgi?id=156689
        <rdar://problem/19535330>

        Reviewed by Dean Jackson.

        * webgl/many-contexts-expected.txt:
        * webgl/many-contexts.html:

        New output for this existing test since a lot of warnings are now logged to
        indicate that we've reached the active contexts limit. We also removed the
        check that the last context created was null since it no longer is due to this
        source change (older contexts are lost instead).

        * webgl/max-active-contexts-console-warning-expected.txt: Added.
        * webgl/max-active-contexts-console-warning.html: Added.

        This new test checks that we log a warning when we've created one context more
        than the active contexts limit.

        * webgl/max-active-contexts-gc-expected.txt: Added.
        * webgl/max-active-contexts-gc.html: Added.

        This new test checks that contexts that are garbage collected do not count
        agaist the active contexts limit.

        * webgl/max-active-contexts-oldest-context-lost-expected.txt: Added.
        * webgl/max-active-contexts-oldest-context-lost.html: Added.

        This new test checks that older contexts are lost when we reach the active
        contexts limit and we create a new context.

        * webgl/max-active-contexts-webglcontextlost-prevent-default-expected.txt: Added.
        * webgl/max-active-contexts-webglcontextlost-prevent-default.html: Added.

        This new test checks that calling `event.preventDefault()` in a `webglcontextlost`
        event handler does not prevent a context from being lost when the active contexts
        limit is reached.

2016-04-21  Dave Hyatt  <hyatt@apple.com>

        Don't hyphenate the last word in a paragraph of text.
        https://bugs.webkit.org/show_bug.cgi?id=156803

        Reviewed by Simon Fraser.

        * fast/text/hyphenate-avoid-orphaned-word.html: Added.
        * platform/mac/fast/text/hyphenate-avoid-orphaned-word-expected.txt: Added.
        * platform/mac/fast/text/hyphenate-limit-before-after-expected.txt:

2016-04-21  Carlos Garcia Campos  <cgarcia@igalia.com>

        Unreviewed GTK+ gardening. Update expectations for some editing tests that are slow on Debug.

        All these pass for me locally when run with --no-timeout.

        * platform/gtk/TestExpectations:

2016-04-21  Carlos Garcia Campos  <cgarcia@igalia.com>

        Unreviewed GTK+ gardening. Rebaseline tests after r180867.

        * platform/gtk/editing/execCommand/5142012-1-expected.txt:
        * platform/gtk/editing/inserting/insert-at-end-02-expected.txt:
        * platform/gtk/editing/pasteboard/4989774-expected.txt:

2016-04-21  Nan Wang  <n_wang@apple.com>

        AX: stringForTextMarkerRange returning empty string for document range
        https://bugs.webkit.org/show_bug.cgi?id=156819

        Reviewed by Chris Fleizach.

        * accessibility/mac/text-marker-string-for-document-range-expected.txt: Added.
        * accessibility/mac/text-marker-string-for-document-range.html: Added.

2016-04-20  Ryan Haddad  <ryanhaddad@apple.com>

        Adding ios-simulator-wk1 specific baselines for compositing and css3 LayoutTests due to contentsOpaque difference

        Unreviewed test gardening.

        * Truncating changelog due to large number of added files

2016-04-20  Brady Eidson  <beidson@apple.com>

        Modern IDB (Workers): Introduce "IDBConnectionProxy" for future threading abstraction, and adopt it in IDBFactory.
        https://bugs.webkit.org/show_bug.cgi?id=156810

        Reviewed by Alex Christensen.

        * storage/indexeddb/intversion-bad-parameters-expected.txt:
        * storage/indexeddb/intversion-bad-parameters-private-expected.txt:
        * storage/indexeddb/modern/opendatabase-request-event-expected.txt:
        * storage/indexeddb/modern/opendatabase-request-event-private-expected.txt:
        * storage/indexeddb/modern/opendatabase-request-expected.txt:
        * storage/indexeddb/modern/opendatabase-request-private-expected.txt:
        * storage/indexeddb/modern/workers-enable-expected.txt:
        * storage/indexeddb/version-change-event-basic-expected.txt:
        * storage/indexeddb/version-change-event-basic-private-expected.txt:

2016-04-20  Ryan Haddad  <ryanhaddad@apple.com>

        Marking compositing/webgl/webgl-reflection.html as failing on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=156812

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-04-20  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: console.table(navigator) throws exception about `rowPreview.propertyPreviews.length`
        https://bugs.webkit.org/show_bug.cgi?id=156698
        <rdar://problem/25778244>

        Reviewed by Timothy Hatcher.

        * inspector/console/console-table-expected.txt:
        * inspector/console/console-table.html:

2016-04-20  Ryan Haddad  <ryanhaddad@apple.com>

        Remove flaky expectation for imported/mozilla/svg/image/image-filter-01.svg on ios-simulator-wk2

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/TestExpectations:

2016-04-19  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: Make debounce use an ES6 Proxy

        https://bugs.webkit.org/show_bug.cgi?id=156756
        rdar://problem/25809771

        Reviewed by Joseph Pecoraro.

        * inspector/unit-tests/debounce-expected.txt: Added.
        * inspector/unit-tests/debounce.html: Added.

2016-04-20  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline tests for iOS simulator.

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/css2.1/t0905-c5525-flthw-00-c-g-expected.txt:
        * platform/ios-simulator-wk2/css2.1/t0905-c5526-flthw-00-c-g-expected.txt:
        * platform/ios-simulator/fast/canvas/set-colors-expected.txt: Added.
        * platform/ios-simulator/fast/text/emoji-expected.txt:

2016-04-20  Yoav Weiss  <yoav@yoav.ws>

        Speculative unflake of dynamic_remove_preload_href layout test
        https://bugs.webkit.org/show_bug.cgi?id=156773

        Reviewed by Alexey Proskuryakov.

        * http/tests/preload/dynamic_remove_preload_href.html: Avoid using a blocking script based timeout.

2016-04-20  Brady Eidson  <beidson@apple.com>

        Modern IDB (Workers): Enable INDEXED_DATABASE_IN_WORKERS compile time flag, but disabled in RuntimeEnabledFeatures.
        https://bugs.webkit.org/show_bug.cgi?id=156782

        Reviewed by Alex Christensen.

        Note: One test has some "FAIL" lines in the expected results, which is intentional.
        As work on this progresses, those FAILs will become PASSes and the expectations will be updated.
        
        * storage/indexeddb/modern/resources/workers-disabled.js: Added.
        * storage/indexeddb/modern/resources/workers-enable.js: Added.
        * storage/indexeddb/modern/workers-disabled-expected.txt: Added.
        * storage/indexeddb/modern/workers-disabled.html: Added.
        * storage/indexeddb/modern/workers-enable-expected.txt: Added.
        * storage/indexeddb/modern/workers-enable.html: Added.

2016-04-20  Brent Fulgham  <bfulgham@apple.com>

        [WK2][Mac][iOS] WebContent crash when using special file:// URI scheme @ WebKit::resolveSymlinksInPath(WTF::CString const&) + 159
        https://bugs.webkit.org/show_bug.cgi?id=156747
        <rdar://problem/24648176>

        Reviewed by Alexey Proskuryakov.

        * fast/url/file-uri-with-embedded-null-no-crash-expected.txt: Added.
        * fast/url/file-uri-with-embedded-null-no-crash.html: Added.

2016-04-20  Dave Hyatt  <hyatt@apple.com>

        Hangable punctuation measurement using the wrong indices.
        https://bugs.webkit.org/show_bug.cgi?id=155899

        Reviewed by Simon Fraser.

        * fast/text/hanging-punctuation-variable-font-size-expected.html: Added.
        * fast/text/hanging-punctuation-variable-font-size.html: Added.

2016-04-20  Chris Dumez  <cdumez@apple.com>

        Drop [UsePointersEvenForNonNullableObjectArguments] from several Canvas interfaces
        https://bugs.webkit.org/show_bug.cgi?id=156781

        Reviewed by Darin Adler.

        Update outdated test which expected a legacy TYPE_MISMATCH_ERR exception
        to be thrown when passing null instead of the newer TypeError.

        * canvas/philip/tests/2d.drawImage.null.html:

2016-04-20  Chris Dumez  <cdumez@apple.com>

        Drop [UsePointersEvenForNonNullableObjectArguments] from WebAudio
        https://bugs.webkit.org/show_bug.cgi?id=156777

        Reviewed by Darin Adler.

        Added test coverage for the type of the exception being thrown when
        pasing null to various WebAudio API.

        * webaudio/audiobuffer-expected.txt:
        * webaudio/audiobuffer.html:
        * webaudio/createMediaStreamSource-null-expected.txt: Added.
        * webaudio/createMediaStreamSource-null.html: Added.
        * webaudio/decode-audio-data-basic-expected.txt:
        * webaudio/decode-audio-data-basic.html:
        * webaudio/mediaelementaudiosourcenode-expected.txt:
        * webaudio/mediaelementaudiosourcenode.html:

2016-04-20  Brady Eidson  <beidson@apple.com>

        Addressing additional review feedback for:
        Modern IDB: Lots of IDB bindings cleanup (including making IDBVersionChangeEvent constructible).
        https://bugs.webkit.org/show_bug.cgi?id=156760

        * storage/indexeddb/modern/idbversionchangeevent-constructor-expected.txt:
        * storage/indexeddb/modern/idbversionchangeevent-constructor.html:

2016-04-20  Frederic Wang  <fwang@igalia.com>

        Refactor RenderMathMLSpace to avoid using flexbox
        https://bugs.webkit.org/show_bug.cgi?id=155168

        Reviewed by Martin Robinson.

        * mathml/presentation/mspace-prefered-width-expected.html: Update the expectation so that the logical width and preferred width are both equal to the one specified by the width attribute.

2016-04-20  Carlos Garcia Campos  <cgarcia@igalia.com>

        Unreviewed GTK+ gardening. Mark HLS tests release expectations as release only.

        * platform/gtk/TestExpectations:

2016-04-20  Gyuyoung Kim  <gyuyoung.kim@webkit.org>

        Unreviewed EFL gardening. Follow up gardening for media test.

        * platform/efl/TestExpectations: Unskip 3 media tests.

2016-04-19  Michael Saboff  <msaboff@apple.com>

        iTunes crashing JavaScriptCore.dll
        https://bugs.webkit.org/show_bug.cgi?id=156647

        Reviewed by Filip Pizlo.

        Disabled fast/workers/dedicated-worker-lifecycle.html as it creates
        more workers that we have ThreadSpecific keys.  We need at least one
        key per JSC VM we create.  I didn't want to weaken the test for other
        platforms.

        * platform/win/TestExpectations:

2016-04-19  Brent Fulgham  <bfulgham@apple.com>

        Remove remaining bits of dynamic <link> rel='icon' loading
        https://bugs.webkit.org/show_bug.cgi?id=156727

        Reviewed by Darin Adler.

        Rename 'test-link-rel-icon-beforeload.html' to 'test-link-rel-subresource-beforeload.html'.

        * fast/dom/icon-url-property-expected.txt: Removed.
        * fast/dom/icon-url-property.html: Removed.
        * platform/gtk/TestExpectations: Remove references to deleted tests.
        * platform/ios-simulator/TestExpectations: Ditto. 
        * platform/wk2/TestExpectations: Ditto.
        * webarchive/test-link-rel-icon-beforeload-expected.webarchive: Removed.
        * webarchive/test-link-rel-icon-beforeload.html: Removed.
        * webarchive/test-link-rel-subresource-beforeload-expected.webarchive: Copied from LayoutTests/webarchive/test-link-rel-icon-beforeload-expected.webarchive.
        * webarchive/test-link-rel-subresource-beforeload.html: Copied from LayoutTests/webarchive/test-link-rel-icon-beforeload.html.

2016-04-19  Chris Dumez  <cdumez@apple.com>

        AudioBufferSourceNode.buffer should be nullable
        https://bugs.webkit.org/show_bug.cgi?id=156769

        Reviewed by Darin Adler.

        Update existing layout test to check that:
        - AudioBufferSourceNode.buffer is initially null
        - AudioBufferSourceNode.buffer can be set to null
        - We cannot create an AudioBuffer that has too many channels

        * webaudio/audiobuffersource-channels-expected.txt:
        * webaudio/audiobuffersource-channels.html:

2016-04-19  Brady Eidson  <beidson@apple.com>

        Modern IDB: Lots of IDB bindings cleanup (including making IDBVersionChangeEvent constructible).
        https://bugs.webkit.org/show_bug.cgi?id=156760

        Reviewed by Darin Adler (and looked over by Chris Dumez and Alex Christensen).

        * js/dom/global-constructors-attributes-idb-expected.txt: Updated for removed attributes.
        * storage/indexeddb/modern/idbversionchangeevent-constructor-expected.txt: Added.
        * storage/indexeddb/modern/idbversionchangeevent-constructor.html: Added.

2016-04-19  Gyuyoung Kim  <gyuyoung.kim@webkit.org>

        [EFL] Unskip media tests since r199649

        Unreviewed EFL gardening.

        * platform/efl/TestExpectations: r199649 fixed media test crash as well.

2016-04-19  Mark Lam  <mark.lam@apple.com>

        Re-landing: ES6: Implement RegExp.prototype[@@search].
        https://bugs.webkit.org/show_bug.cgi?id=156331

        Reviewed by Keith Miller.

        * js/regress/regexp-prototype-search-observable-side-effects-expected.txt: Added.
        * js/regress/regexp-prototype-search-observable-side-effects.html: Added.
        * js/regress/regexp-prototype-search-observable-side-effects2-expected.txt: Added.
        * js/regress/regexp-prototype-search-observable-side-effects2.html: Added.

        * js/regress/script-tests/regexp-prototype-search-observable-side-effects.js: Added.
        * js/regress/script-tests/regexp-prototype-search-observable-side-effects2.js: Added.

        * js/regress/script-tests/string-prototype-search-observable-side-effects.js: Added.
        * js/regress/script-tests/string-prototype-search-observable-side-effects2.js: Added.
        * js/regress/script-tests/string-prototype-search-observable-side-effects3.js: Added.
        * js/regress/script-tests/string-prototype-search-observable-side-effects4.js: Added.

        * js/regress/string-prototype-search-observable-side-effects-expected.txt: Added.
        * js/regress/string-prototype-search-observable-side-effects.html: Added.
        * js/regress/string-prototype-search-observable-side-effects2-expected.txt: Added.
        * js/regress/string-prototype-search-observable-side-effects2.html: Added.
        * js/regress/string-prototype-search-observable-side-effects3-expected.txt: Added.
        * js/regress/string-prototype-search-observable-side-effects3.html: Added.
        * js/regress/string-prototype-search-observable-side-effects4-expected.txt: Added.
        * js/regress/string-prototype-search-observable-side-effects4.html: Added.

2016-04-19  Alex Christensen  <achristensen@webkit.org>

        Rebase test after r199738

        * fast/canvas/webgl/fragment-shader-assertion-expected.txt:
        ANGLE gives us a more descriptive error now.  No big deal.  
        This test was added to make sure it didn't crash in http://trac.webkit.org/changeset/199340
        and it still does not crash.

2016-04-19  Keith Miller  <keith_miller@apple.com>

        ObjcInstance::stringValue should not call NSObject's description method
        https://bugs.webkit.org/show_bug.cgi?id=156758

        Reviewed by Geoffrey Garen.

        Test that we don't use the NSObject's description method when stringifying a WebScriptObject.

        * platform/mac/fast/objc/webScriptObject-does-not-call-description-on-nsobject-expected.txt: Added.
        * platform/mac/fast/objc/webScriptObject-does-not-call-description-on-nsobject.html: Added.
        * platform/wk2/TestExpectations:

2016-04-19  Alex Christensen  <achristensen@webkit.org>

        Update ANGLE
        https://bugs.webkit.org/show_bug.cgi?id=156755

        Reviewed by Dean Jackson.

        * webgl/1.0.2/conformance/glsl/reserved/webgl_preprocessor_reserved-expected.txt: Removed.
        * webgl/1.0.2/conformance/glsl/reserved/webgl_preprocessor_reserved.html: Removed.
        Removed invalid test based on https://github.com/KhronosGroup/WebGL/pull/1230

2016-04-19  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        imported/w3c/web-platform-tests/streams/readable-streams/general.https.html is a flaky failure
        https://bugs.webkit.org/show_bug.cgi?id=155760

        Reviewed by Alexey Proskuryakov.

        * TestExpectations: removed flaky expectation.

2016-04-19  Mark Lam  <mark.lam@apple.com>

        Re-landing: ES6: Implement String.prototype.split and RegExp.prototype[@@split].
        https://bugs.webkit.org/show_bug.cgi?id=156013

        Reviewed by Keith Miller.

        * js/Object-getOwnPropertyNames-expected.txt:
        * js/dom/string-prototype-properties-expected.txt:

        * js/regress/regexp-prototype-split-observable-side-effects-expected.txt: Added.
        * js/regress/regexp-prototype-split-observable-side-effects.html: Added.
        * js/regress/regexp-prototype-split-observable-side-effects2-expected.txt: Added.
        * js/regress/regexp-prototype-split-observable-side-effects2.html: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-flags-expected.txt: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-flags.html: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-global-expected.txt: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-global.html: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-ignoreCase-expected.txt: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-ignoreCase.html: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-multiline-expected.txt: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-multiline.html: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-sticky-expected.txt: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-sticky.html: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-unicode-expected.txt: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-unicode.html: Added.
        * js/regress/regexp-prototype-split-observable-side-effects4-expected.txt: Added.
        * js/regress/regexp-prototype-split-observable-side-effects4.html: Added.

        * js/regress/script-tests/regexp-prototype-split-observable-side-effects.js: Added.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects2.js: Added.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects3-flags.js: Added.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects3-global.js: Added.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects3-ignoreCase.js: Added.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects3-multiline.js: Added.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects3-sticky.js: Added.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects3-unicode.js: Added.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects4.js: Added.

        * js/regress/script-tests/string-prototype-split-observable-side-effects.js: Added.
        * js/regress/script-tests/string-prototype-split-observable-side-effects2.js: Added.
        * js/regress/script-tests/string-prototype-split-observable-side-effects3-flags.js: Added.
        * js/regress/script-tests/string-prototype-split-observable-side-effects3-global.js: Added.
        * js/regress/script-tests/string-prototype-split-observable-side-effects3-ignoreCase.js: Added.
        * js/regress/script-tests/string-prototype-split-observable-side-effects3-multiline.js: Added.
        * js/regress/script-tests/string-prototype-split-observable-side-effects3-sticky.js: Added.
        * js/regress/script-tests/string-prototype-split-observable-side-effects3-unicode.js: Added.
        * js/regress/script-tests/string-prototype-split-observable-side-effects4.js: Added.

        * js/regress/string-prototype-split-observable-side-effects-expected.txt: Added.
        * js/regress/string-prototype-split-observable-side-effects.html: Added.
        * js/regress/string-prototype-split-observable-side-effects2-expected.txt: Added.
        * js/regress/string-prototype-split-observable-side-effects2.html: Added.
        * js/regress/string-prototype-split-observable-side-effects3-flags-expected.txt: Added.
        * js/regress/string-prototype-split-observable-side-effects3-flags.html: Added.
        * js/regress/string-prototype-split-observable-side-effects3-global-expected.txt: Added.
        * js/regress/string-prototype-split-observable-side-effects3-global.html: Added.
        * js/regress/string-prototype-split-observable-side-effects3-ignoreCase-expected.txt: Added.
        * js/regress/string-prototype-split-observable-side-effects3-ignoreCase.html: Added.
        * js/regress/string-prototype-split-observable-side-effects3-multiline-expected.txt: Added.
        * js/regress/string-prototype-split-observable-side-effects3-multiline.html: Added.
        * js/regress/string-prototype-split-observable-side-effects3-sticky-expected.txt: Added.
        * js/regress/string-prototype-split-observable-side-effects3-sticky.html: Added.
        * js/regress/string-prototype-split-observable-side-effects3-unicode-expected.txt: Added.
        * js/regress/string-prototype-split-observable-side-effects3-unicode.html: Added.
        * js/regress/string-prototype-split-observable-side-effects4-expected.txt: Added.
        * js/regress/string-prototype-split-observable-side-effects4.html: Added.

        * js/script-tests/Object-getOwnPropertyNames.js:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.14_String.prototype.split/S15.5.4.14_A1_T3-expected.txt:

2016-04-19  Brady Eidson  <beidson@apple.com>

        Modern IDB: ObjectStore Blob Support.
        https://bugs.webkit.org/show_bug.cgi?id=143193

        Reviewed by Alex Christensen.

        Note: The blob-basics-metadata.html test has some failure lines in it because we don't support the 
        File constructor.
        
        Once support is added, that test will start failing with the correct results, at which point we
        can update expectations.

        * imported/blink/storage/indexeddb/blob-basics-metadata-expected.txt: Added.
        * imported/blink/storage/indexeddb/blob-basics-metadata.html: Added.
        * imported/blink/storage/indexeddb/blob-delete-objectstore-db-expected.txt: Added.
        * imported/blink/storage/indexeddb/blob-delete-objectstore-db.html: Added.
        * imported/blink/storage/indexeddb/blob-valid-after-deletion-expected.txt: Added.
        * imported/blink/storage/indexeddb/blob-valid-after-deletion.html: Added.
        * imported/blink/storage/indexeddb/blob-valid-before-commit-expected.txt: Added.
        * imported/blink/storage/indexeddb/blob-valid-before-commit.html: Added.
        * imported/blink/storage/indexeddb/empty-blob-file-expected.txt: Added.
        * imported/blink/storage/indexeddb/empty-blob-file.html: Added.
        * imported/blink/storage/indexeddb/resources/empty.txt: Added.
        * imported/blink/storage/indexeddb/resources/shared.js: Added.
        * imported/blink/storage/indexeddb/resources/test-data.html: Added.
        * imported/blink/storage/indexeddb/resources/test-data.txt: Added.

        * platform/wk2/TestExpectations:
        
        * storage/indexeddb/modern/blob-simple-expected.txt: Added.
        * storage/indexeddb/modern/blob-simple.html: Added.
        * storage/indexeddb/modern/resources/blob-simple.js: Added.
        
        * storage/indexeddb/noblobs-expected.txt: Removed.
        * storage/indexeddb/noblobs-private-expected.txt: Removed.
        * storage/indexeddb/noblobs-private.html: Removed.
        * storage/indexeddb/noblobs.html: Removed.
        * storage/indexeddb/resources/noblobs.js: Removed.

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

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

        WebKit tests crash on Windows 32 (Requested by msaboff on
        #webkit).

        Reverted changeset:

        "iTunes crashing JavaScriptCore.dll"
        https://bugs.webkit.org/show_bug.cgi?id=156647
        http://trac.webkit.org/changeset/199726

2016-04-19  Sergio Villar Senin  <svillar@igalia.com>

        [css-grid] Use the margin box for non-auto minimum sizes
        https://bugs.webkit.org/show_bug.cgi?id=156711

        Reviewed by Darin Adler.

        * fast/css-grid-layout/min-height-border-box.html:
        * fast/css-grid-layout/min-width-margin-box-expected.txt: Added.
        * fast/css-grid-layout/min-width-margin-box.html: Added.

2016-04-19  Michael Saboff  <msaboff@apple.com>

        iTunes crashing JavaScriptCore.dll
        https://bugs.webkit.org/show_bug.cgi?id=156647

        Reviewed by Saam Barati.

        Disabled fast/workers/dedicated-worker-lifecycle.html as it creates
        more workers that we have ThreadSpecific keys.  We need at least one
        key per JSC VM we create.  I didn't want to weaken the test for other
        platforms.

        * platform/win/TestExpectations:

2016-04-19  Yusuke Suzuki  <utatane.tea@gmail.com>

        [INTL] Use @thisNumberValue instead of `instanceof @Number`
        https://bugs.webkit.org/show_bug.cgi?id=156680

        Reviewed by Saam Barati.

        * js/number-toLocaleString-expected.txt:
        * js/script-tests/number-toLocaleString.js:

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

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

        It caused a serious regression on 32 bit platform (Requested
        by gskachkov on #webkit).

        Reverted changeset:

        "calling super() a second time in a constructor should throw"
        https://bugs.webkit.org/show_bug.cgi?id=151113
        http://trac.webkit.org/changeset/199712

2016-04-19  Carlos Garcia Campos  <cgarcia@igalia.com>

        Unreviewed GTK+ gardening. Update CSP tests.

        Rebaseline http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-basics.html after r197118 and
        remove specific expectations of http/tests/security/contentSecurityPolicy/source-list-parsing-10.html.

        * platform/gtk/http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-basics-expected.txt:
        * platform/gtk/http/tests/security/contentSecurityPolicy/source-list-parsing-10-expected.txt: Removed.

2016-04-19  Carlos Garcia Campos  <cgarcia@igalia.com>

        Unreviewed GTK+ gardening. Rebaseline fast/events/updateLayoutForHitTest.html after r195263.

        * platform/gtk/fast/events/updateLayoutForHitTest-expected.txt:

2016-04-19  Carlos Garcia Campos  <cgarcia@igalia.com>

        Unreviewed GTK+ gardening. Rebaseline fast/transforms/bounding-rect-zoom.html after r197450.

        * platform/gtk/fast/transforms/bounding-rect-zoom-expected.txt:

2016-04-19  Carlos Garcia Campos  <cgarcia@igalia.com>

        Unreviewed GTK+ gardening. Rebaseline tests after r199659.

        We are now using the theme colors for the menu lists text.

        * platform/gtk/fast/forms/basic-selects-expected.txt:
        * platform/gtk/fast/forms/disabled-select-change-index-expected.txt:
        * platform/gtk/fast/forms/menulist-style-color-expected.txt:
        * platform/gtk/fast/forms/select-baseline-expected.txt:
        * platform/gtk/fast/forms/select-disabled-appearance-expected.txt:

2016-04-19  Carlos Garcia Campos  <cgarcia@igalia.com>

        Unreviewed GTK+ gardening. Rebaseline tests after r199034.

        * platform/gtk/fast/block/float/016-expected.txt:
        * platform/gtk/fast/css/bidi-override-in-anonymous-block-expected.txt:
        * platform/gtk/media/video-zoom-controls-expected.txt:
        * platform/gtk/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug1055-2-expected.txt:

2016-04-19  Joanmarie Diggs  <jdiggs@igalia.com>

        [GTK] accessibility/gtk/entry-and-password.html is failing since r194847
        https://bugs.webkit.org/show_bug.cgi?id=153062

        Reviewed by Carlos Garcia Campos.

        The auto-fill-crash.html test has expectations which include the children
        count for the text input. These expectations were incorrect for ATK where
        accessible text inputs lack accessible text children.

        * accessibility/auto-fill-crash.html: Modified to take platform into account.
        * platform/gtk/TestExpectations: Unskipped entry-and-password.html.
        * platform/gtk/accessibility/auto-fill-crash-expected.txt: Added.

2016-04-19  Carlos Garcia Campos  <cgarcia@igalia.com>

        Unreviewed GTK+ gardening. Rebaseline tests after r190840.

        * platform/gtk/fast/html/details-remove-summary-1-and-click-expected.txt:
        * platform/gtk/fast/html/details-remove-summary-4-and-click-expected.txt:

2016-04-09  Skachkov Oleksandr  <gskachkov@gmail.com>

        calling super() a second time in a constructor should throw
        https://bugs.webkit.org/show_bug.cgi?id=151113

        Reviewed by Saam Barati and Keith Miller.

        * js/class-syntax-super-expected.txt:
        * js/script-tests/class-syntax-super.js:

2016-04-18  Martin Robinson  <mrobinson@igalia.com>

        [GTK] Possible off-by-one in hyphenation code
        https://bugs.webkit.org/show_bug.cgi?id=156661

        Reviewed by Michael Catanzaro.

        * platform/gtk/TestExpectations: Unskip a test that is now passing.
        * platform/gtk/fast/text/hyphenate-character-expected.png:
        * platform/gtk/fast/text/hyphenate-character-expected.txt:
        * platform/gtk/fast/text/hyphenate-first-word-expected.png:
        * platform/gtk/fast/text/hyphenate-first-word-expected.txt:
        * platform/gtk/fast/text/hyphenate-limit-before-after-expected.png:
        * platform/gtk/fast/text/hyphenate-limit-before-after-expected.txt:
        * platform/gtk/fast/text/hyphenate-limit-lines-expected.png:
        * platform/gtk/fast/text/hyphenate-limit-lines-expected.txt:
        * platform/gtk/fast/text/hyphenate-locale-expected.png:
        * platform/gtk/fast/text/hyphenate-locale-expected.txt:

2016-04-18  Brent Fulgham  <bfulgham@apple.com>

        Unreviewed test fix after r199696.

        * inspector/console/x-frame-options-message-expected.txt: Rebaseline.):

2016-04-18  Gavin Barraclough  <barraclough@apple.com>

        WebKit should adopt journal_mode=wal for all SQLite databases.
        https://bugs.webkit.org/show_bug.cgi?id=133496

        Reviewed by Brady Eidson.

        Enabling sqlite3 WAL mode on iOS causes a test failure, but appears just be something that should fail still failing, only in a different way.
        Enabling & marking test as failing for now. Tracking test failure here:
            https://bugs.webkit.org/show_bug.cgi?id=156718

        * platform/ios-simulator/TestExpectations:
            - storage/websql/alter-to-info-table.html [ Failure ]

2016-04-18  Chris Dumez  <cdumez@apple.com>

        Crash in ElementDescendantIterator::operator--() when calling m_ancestorSiblingStack.last()
        https://bugs.webkit.org/show_bug.cgi?id=156715
        <rdar://problem/25750864>

        Reviewed by Antti Koivisto.

        Add regression test that reproduced the crash.

        * fast/dom/collection-backward-traversal-crash-expected.txt: Added.
        * fast/dom/collection-backward-traversal-crash.html: Added.

2016-04-18  Brent Fulgham  <bfulgham@apple.com>

        Remove support for X-Frame-Options in `<meta>`
        https://bugs.webkit.org/show_bug.cgi?id=156625
        <rdar://problem/25748714>

        Rubberstamped by Darin Adler.

        * http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-expected.txt:
        * http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-in-body-expected.txt:
        * http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-parent-same-origin-allow-expected.txt:
        * http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-parent-same-origin-deny-expected.txt:
        * http/tests/security/xssAuditor/meta-tag-http-refresh-x-frame-options-ignored-expected.txt:

2016-04-18  Brent Fulgham  <bfulgham@apple.com>

        CSP: Remove stubs for dynamically-added favicons (via link rel="icon")
        https://bugs.webkit.org/show_bug.cgi?id=153151
        <rdar://problem/24383176>

        Reviewed by Darin Adler.

        Remove the unused dynamic favicon code and tests.

        * TestExpectations:
        * http/tests/security/contentSecurityPolicy/icon-allowed-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/icon-allowed.html: Removed.
        * http/tests/security/contentSecurityPolicy/icon-blocked-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/icon-blocked.html: Removed.

2016-04-18  Eric Carlson  <eric.carlson@apple.com>

        Media element "user gesture for fullscreen" restriction is never lifted
        https://bugs.webkit.org/show_bug.cgi?id=156547
        <rdar://problem/25707814>

        Reviewed by Jer Noble.

        * media/video-fullscreen-restriction-removed-expected.txt: Added.
        * media/video-fullscreen-restriction-removed.html: Added.

2016-04-18  Frederic Wang  <fred.wang@free.fr>

        Mark script-height reftest as ImageOnlyFailure on iOS
        https://bugs.webkit.org/show_bug.cgi?id=153918

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-04-18  Frederic Wang  <fwang@igalia.com>

        Refactor RenderMathMLScripts layout to avoid using flexbox
        https://bugs.webkit.org/show_bug.cgi?id=153917

        Reviewed by Martin Robinson.

        We import tests from the MathML in HTML5 test suite to verify various OpenType MATH parameters.
        We also add a test for the italic correction of large operators (bug 130325).
        Finally, we adjust some tests and expectations to take into account the new rendering.

        * imported/mathml-in-html5/LICENSE: Added.
        * imported/mathml-in-html5/README.md: Added.
        * imported/mathml-in-html5/fonts/math/scripts-spaceafterscript3000.woff: Renamed from LayoutTests/mathml/mathml-in-html5/fonts/scripts-spaceafterscript3000.woff.
        * imported/mathml-in-html5/fonts/math/scripts-subscriptbaselinedropmin9000.woff: Renamed from LayoutTests/mathml/mathml-in-html5/fonts/scripts-subscriptbaselinedropmin9000.woff.
        * imported/mathml-in-html5/fonts/math/scripts-subscriptshiftdown6000.woff: Renamed from LayoutTests/mathml/mathml-in-html5/fonts/scripts-subscriptshiftdown6000.woff.
        * imported/mathml-in-html5/fonts/math/scripts-subscripttopmax4000.woff: Renamed from LayoutTests/mathml/mathml-in-html5/fonts/scripts-subscripttopmax4000.woff.
        * imported/mathml-in-html5/fonts/math/scripts-subsuperscriptgapmin11000-superscriptbottommaxwithsubscript3000.woff: Renamed from LayoutTests/mathml/mathml-in-html5/fonts/scripts-subsuperscriptgapmin11000-superscriptbottommaxwithsubscript3000.woff.
        * imported/mathml-in-html5/fonts/math/scripts-subsuperscriptgapmin11000.woff: Renamed from LayoutTests/mathml/mathml-in-html5/fonts/scripts-subsuperscriptgapmin11000.woff.
        * imported/mathml-in-html5/fonts/math/scripts-superscriptbaselinedropmax10000.woff: Renamed from LayoutTests/mathml/mathml-in-html5/fonts/scripts-superscriptbaselinedropmax10000.woff.
        * imported/mathml-in-html5/fonts/math/scripts-superscriptbottommin8000.woff: Renamed from LayoutTests/mathml/mathml-in-html5/fonts/scripts-superscriptbottommin8000.woff.
        * imported/mathml-in-html5/fonts/math/scripts-superscriptshiftup7000.woff: Renamed from LayoutTests/mathml/mathml-in-html5/fonts/scripts-superscriptshiftup7000.woff.
        * imported/mathml-in-html5/fonts/math/scripts-superscriptshiftupcramped5000.woff: Renamed from LayoutTests/mathml/mathml-in-html5/fonts/scripts-superscriptshiftupcramped5000.woff.
        * imported/mathml-in-html5/mathml/presentation-markup/scripts/subsup-parameters-1-expected.txt: Renamed from LayoutTests/mathml/mathml-in-html5/subsup-parameters-1-expected.txt.
        * imported/mathml-in-html5/mathml/presentation-markup/scripts/subsup-parameters-1.html: Renamed from LayoutTests/mathml/mathml-in-html5/subsup-parameters-1.html.
        * mathml/msubsup-fuzz-expected.txt: Test adjustment: Update the reference now that nothing
        is displayed for invalid markup.
        * accessibility/mac/mathml-multiscript-expected.txt: ditto.
        * mathml/opentype/large-operators-italic-correction.html: Added. This test verifies that the
        italic correction from the MATH table is used for positioning subscripts of large operators.
        * mathml/opentype/large-operators-italic-correction-expected.txt: Added.
        * mathml/presentation/bug95015.html: Test adjustment: move down a bit the covering red
        rectangle, since the script is slightly lower.
        * mathml/presentation/bug95015-expected.html: ditto
        * mathml/presentation/multiscripts-positions.html: Test adjustment: Modify the expected
        vertical positions of scripts now that we follow Gecko's behavior.
        * mathml/presentation/multiscripts-positions-expected.html: ditto.
        * mathml/presentation/multiscripts-noscripts-expected.html: There seem to be small errors in
        the ascent of mmultiscripts, probably due to the conversions between firstLineBaseline (int)
        and LayoutUnit (fractional pixel). For now, let's tweak the tests.
        * mathml/presentation/multiscripts-noscripts.html: ditto.
        * mathml/presentation/scripts-height-expected.html: ditto
        * mathml/presentation/scripts-height.html: ditto
        * mathml/presentation/scripts-horizontal-alignment.html: Modify the test to make it work
        with the new layout rules.
        * mathml/presentation/scripts-horizontal-alignment-expected.html: ditto.
        * platform/gtk/accessibility/math-multiscript-attributes-expected.txt: Test adjustment:
        Update reference to take into account a small shift.
        * platform/mac/accessibility/math-multiscript-attributes-expected.txt: ditto.
        * platform/gtk/mathml/presentation/roots-expected.png: Test adjustment: Update reference to
        take into account small rendering changes.
        * platform/gtk/mathml/presentation/roots-expected.txt: ditto.
        * platform/ios-simulator/mathml/presentation/roots-expected.txt: ditto.
        * platform/mac/TestExpectations: Mark some tests for scripts as failing on mac. MATH fonts
        are really needed to make them reliable.
        * platform/ios-simulator/TestExpectations: Ditto

2016-04-18  Manuel Rego Casasnovas  <rego@igalia.com>

        [css-grid] Use grid-template-areas to determine the explicit grid
        https://bugs.webkit.org/show_bug.cgi?id=156575

        Reviewed by Darin Adler.

        Created new test to check the right behavior.

        * fast/css-grid-layout/explicit-grid-size-expected.txt: Added.
        * fast/css-grid-layout/explicit-grid-size.html: Added.
        * fast/css-grid-layout/grid-template-shorthand-get-set-expected.txt:
        Small modification as now the columns defined by
        grid-tempalte-areas are in the explicit grid.
        * fast/css-grid-layout/grid-template-shorthand-get-set.html:
        Ditto.

2016-04-18  Manuel Rego Casasnovas  <rego@igalia.com>

        [css-grid] Fix positioned items with content alignment
        https://bugs.webkit.org/show_bug.cgi?id=156597

        Reviewed by Darin Adler.

        * fast/css-grid-layout/grid-positioned-items-content-alignment-expected.txt: Added.
        * fast/css-grid-layout/grid-positioned-items-content-alignment-rtl-expected.txt: Added.
        * fast/css-grid-layout/grid-positioned-items-content-alignment-rtl.html: Added.
        * fast/css-grid-layout/grid-positioned-items-content-alignment.html: Added.

2016-04-18  Yusuke Suzuki  <utatane.tea@gmail.com>

        [Fetch] Use @isArray instead of `instanceof @Array`
        https://bugs.webkit.org/show_bug.cgi?id=156682

        Reviewed by Alex Christensen.

        * fetch/header-constructor-is-array-expected.txt: Added.
        * fetch/header-constructor-is-array.html: Added.

2016-04-17  Yoav Weiss  <yoav@yoav.ws>

        Initial Link preload support
        https://bugs.webkit.org/show_bug.cgi?id=156334

        Added tests that make sure that `<link rel=preload>` performs its basic
        tasks and preloads resources.

        Reviewed by Darin Adler.

        * http/tests/preload/download_resources-expected.txt: Added.
        * http/tests/preload/download_resources.html: Added.
        * http/tests/preload/dynamic_adding_preload-expected.txt: Added.
        * http/tests/preload/dynamic_adding_preload.html: Added.
        * http/tests/preload/dynamic_remove_preload_href-expected.txt: Added.
        * http/tests/preload/dynamic_remove_preload_href.html: Added.
        * http/tests/preload/dynamic_removing_preload-expected.txt: Added.
        * http/tests/preload/dynamic_removing_preload.html: Added.
        * imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt: Adjusted expected results to progressions.
        * imported/w3c/web-platform-tests/html/dom/reflection-metadata-expected.txt: Adjusted expected results to progressions.
        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt: Adjusted expected results to progressions.

2016-04-17  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        [Streams] Consume HTTP data as a ReadableStream
        https://bugs.webkit.org/show_bug.cgi?id=138968

        Reviewed by Alex Christensen.

        * fast/xmlhttprequest/xmlhttprequest-responsetype-stream-expected.txt: Added.
        * fast/xmlhttprequest/xmlhttprequest-responsetype-stream.html: Added.
        * http/tests/xmlhttprequest/streams/streams-read-api-cancelled-expected.txt: Added.
        * http/tests/xmlhttprequest/streams/streams-read-api-cancelled.html: Added.
        * http/tests/xmlhttprequest/streams/streams-read-api-closed-expected.txt: Added.
        * http/tests/xmlhttprequest/streams/streams-read-api-closed.html: Added.
        * http/tests/xmlhttprequest/streams/streams-read-api-expected.txt: Added.
        * http/tests/xmlhttprequest/streams/streams-read-api.html: Added.
        * http/tests/xmlhttprequest/streams/streams-read-expected.txt: Added.
        * http/tests/xmlhttprequest/streams/streams-read.html: Added.

2016-04-16  Matt Baker  <mattbaker@apple.com>

        Web Inspector: Adopt Number.prototype.toLocaleString For All Sizes and Times
        https://bugs.webkit.org/show_bug.cgi?id=152033
        <rdar://problem/23815589>

        Reviewed by Timothy Hatcher.

        Add test coverage for string formatters, and additional test cases for
        Number.percentageString and Number.secondsToString.

        * inspector/unit-tests/number-utilities-expected.txt:
        * inspector/unit-tests/number-utilities.html:
        * inspector/unit-tests/string-utilities-expected.txt: Added.
        * inspector/unit-tests/string-utilities.html: Added.

2016-04-15  Myles C. Maxfield  <mmaxfield@apple.com>

        [Font Loading] Test promise gets rejected when unknown format used
        https://bugs.webkit.org/show_bug.cgi?id=156643

        Reviewed by Simon Fraser.

        When all the sources have an unknown format, the promise should be rejected.

        * fast/text/font-face-javascript-expected.txt:
        * fast/text/font-face-javascript.html:

2016-04-15  Daniel Bates  <dabates@apple.com>

        CSP: Ignore paths in CSP matching after redirects
        https://bugs.webkit.org/show_bug.cgi?id=153154
        <rdar://problem/24383215>

        Reviewed by Brent Fulgham.

        Add tests to ensure that we ignore the path component of a source expression when matching
        a sub-resource URL that is the result of a redirect.

        * TestExpectations: Unskip test http/tests/security/contentSecurityPolicy/redirect-does-not-match-paths.html as it now passes.
        * http/tests/security/contentSecurityPolicy/audio-redirect-allowed2-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/audio-redirect-allowed2.html: Added.
        * http/tests/security/contentSecurityPolicy/embed-redirect-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/embed-redirect-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/embed-redirect-allowed2-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/embed-redirect-allowed2.html: Added.
        * http/tests/security/contentSecurityPolicy/embed-redirect-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/embed-redirect-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/embed-redirect-blocked2-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/embed-redirect-blocked2.html: Added.
        * http/tests/security/contentSecurityPolicy/embed-redirect-blocked3-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/embed-redirect-blocked3.html: Added.
        * http/tests/security/contentSecurityPolicy/font-redirect-allowed2-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/font-redirect-allowed2.html: Added.
        * http/tests/security/contentSecurityPolicy/form-action-src-redirect-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/form-action-src-redirect-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/form-action-src-redirect-allowed2-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/form-action-src-redirect-allowed2.html: Added.
        * http/tests/security/contentSecurityPolicy/iframe-redirect-allowed-by-child-src-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/iframe-redirect-allowed-by-child-src.html: Added.
        * http/tests/security/contentSecurityPolicy/iframe-redirect-allowed-by-child-src2-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/iframe-redirect-allowed-by-child-src2.html: Added.
        * http/tests/security/contentSecurityPolicy/iframe-redirect-allowed-by-frame-src-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/iframe-redirect-allowed-by-frame-src.html: Added.
        * http/tests/security/contentSecurityPolicy/iframe-redirect-allowed-by-frame-src2-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/iframe-redirect-allowed-by-frame-src2.html: Added.
        * http/tests/security/contentSecurityPolicy/iframe-redirect-blocked-by-child-src-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/iframe-redirect-blocked-by-child-src.html: Added.
        * http/tests/security/contentSecurityPolicy/iframe-redirect-blocked-by-frame-src-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/iframe-redirect-blocked-by-frame-src.html: Added.
        * http/tests/security/contentSecurityPolicy/image-redirect-allowed2-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/image-redirect-allowed2.html: Added.
        * http/tests/security/contentSecurityPolicy/object-redirect-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/object-redirect-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/object-redirect-allowed2-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/object-redirect-allowed2.html: Added.
        * http/tests/security/contentSecurityPolicy/object-redirect-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/object-redirect-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/object-redirect-blocked2-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/object-redirect-blocked2.html: Added.
        * http/tests/security/contentSecurityPolicy/object-redirect-blocked3-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/object-redirect-blocked3.html: Added.
        * http/tests/security/contentSecurityPolicy/redirect-does-not-match-paths-expected.txt: Update expected result now that we pass this test.
        * http/tests/security/contentSecurityPolicy/resources/alert-pass.html:
        * http/tests/security/contentSecurityPolicy/resources/redirect.pl: For resourceType == "image", load image http://127.0.0.1:8000/security/resources/abe.png
        instead of http://127.0.0.1:8000/resources/square20.jpg as the latter does not exist.
        * http/tests/security/contentSecurityPolicy/resources/xsl-redirect-allowed.php:
        * http/tests/security/contentSecurityPolicy/script-redirect-allowed2-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/script-redirect-allowed2.html: Added.
        * http/tests/security/contentSecurityPolicy/stylesheet-redirect-allowed2-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/stylesheet-redirect-allowed2.html: Added.
        * http/tests/security/contentSecurityPolicy/svg-font-redirect-allowed2-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/svg-font-redirect-allowed2.html: Added.
        * http/tests/security/contentSecurityPolicy/svg-image-redirect-allowed2-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/svg-image-redirect-allowed2.html: Added.
        * http/tests/security/contentSecurityPolicy/track-redirect-allowed2-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/track-redirect-allowed2.html: Added.
        * http/tests/security/contentSecurityPolicy/video-redirect-allowed2-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/video-redirect-allowed2.html: Added.
        * http/tests/security/contentSecurityPolicy/xsl-redirect-allowed.html:
        * http/tests/security/contentSecurityPolicy/xsl-redirect-allowed2-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/xsl-redirect-allowed2.html: Copied from LayoutTests/http/tests/security/contentSecurityPolicy/xsl-redirect-allowed.html.
        * platform/ios-simulator/TestExpectations: Skip tests {embed, object}-redirect-blocked{2, 3}.html as they make
        use of a plug-in and plug-ins are not supported on iOS.
        * platform/wk2/TestExpectations: Skip tests {embed, object}-redirect-blocked3.html on WebKit2 as they fail
        because of <https://bugs.webkit.org/show_bug.cgi?id=156612>.

2016-04-15  Myles C. Maxfield  <mmaxfield@apple.com>

        [CSS Font Loading] FontFace's promise may never be resolved/rejected if Content Security Policy blocks all the URLs
        https://bugs.webkit.org/show_bug.cgi?id=156605

        Reviewed by Daniel Bates.

        * fast/text/font-loading-csp-block-all-expected.txt: Added.
        * fast/text/font-loading-csp-block-all.html: Added.

2016-04-15  Myles C. Maxfield  <mmaxfield@apple.com>

        ASSERT when loading github.com
        https://bugs.webkit.org/show_bug.cgi?id=156604
        <rdar://problem/19890634>

        Reviewed by Darin Adler.

        * fast/forms/checkValidity-cloneNode-crash-expected.txt: Added.
        * fast/forms/checkValidity-cloneNode-crash.html: Added.

2016-04-15  Brent Fulgham  <bfulgham@apple.com>

        Remove support for X-Frame-Options in `<meta>`
        https://bugs.webkit.org/show_bug.cgi?id=156625
        <rdar://problem/25748714>

        Reviewed by Darin Adler.

        Revise tests to match our desired behavior based on RFC 7034 (Section 4).

        * http/tests/security/XFrameOptions/resources/x-frame-options-deny-meta-tag-subframe-in-body.html:
        * http/tests/security/XFrameOptions/resources/x-frame-options-deny-meta-tag-subframe-parent-same-origin-deny.html:
        * http/tests/security/XFrameOptions/resources/x-frame-options-deny-meta-tag-subframe.html:
        * http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-expected.txt: Removed.
        * http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body-expected.txt: Removed.
        * http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body.html: Removed.
        * http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-allow-expected.txt: Removed.
        * http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-allow.html: Removed.
        * http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny-expected.txt: Removed.
        * http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny.html: Removed.
        * http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag.html: Removed.
        * http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-expected.txt: Added.
        * http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-in-body-expected.txt: Added.
        * http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-in-body.html: Copied from LayoutTests/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body.html.
        * http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-parent-same-origin-allow-expected.txt: Added.
        * http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-parent-same-origin-allow.html: Copied from LayoutTests/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-allow.html.
        * http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-parent-same-origin-deny-expected.txt: Added.
        * http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-parent-same-origin-deny.html: Copied from LayoutTests/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny.html.
        * http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag.html: Copied from LayoutTests/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag.html.
        * http/tests/security/xssAuditor/meta-tag-http-refresh-x-frame-options-expected.txt: Removed.
        * http/tests/security/xssAuditor/meta-tag-http-refresh-x-frame-options-ignored-expected.txt: Added.
        * http/tests/security/xssAuditor/meta-tag-http-refresh-x-frame-options-ignored.html: Copied from LayoutTests/http/tests/security/xssAuditor/meta-tag-http-refresh-x-frame-options.html.
        * http/tests/security/xssAuditor/meta-tag-http-refresh-x-frame-options.html: Removed.
        * inspector/console/x-frame-options-message-expected.txt: Rebaselined.
        * platform/win/TestExpectations:

2016-04-15  Jiewen Tan  <jiewen_tan@apple.com>

        Mark inspector/formatting/formatting-javascript.html as flaky on mac
        https://bugs.webkit.org/show_bug.cgi?id=156634

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-04-15  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: sourceMappingURL not used when sourceURL is set
        https://bugs.webkit.org/show_bug.cgi?id=156021
        <rdar://problem/25438417>

        Reviewed by Timothy Hatcher.

        * inspector/debugger/scriptParsed.html:
        * inspector/debugger/search-scripts.html:
        * inspector/debugger/setBreakpointByUrl-sourceURL.html:
        * inspector/debugger/sourceURLs.html:
        Update tests that need to handle sourceURL separately.
        
        * inspector/model/resources/relationship-named.js: Added.
        * inspector/model/resources/relationship-normal.js: Added.
        * inspector/model/script-resource-relationship-expected.txt: Added.
        * inspector/model/script-resource-relationship.html: Added.
        Tests for Script and Resource relationships.

2016-04-15  Jiewen Tan  <jiewen_tan@apple.com>

        Mark fast/text/font-face-javascript.html as flaky
        https://bugs.webkit.org/show_bug.cgi?id=156631

        Unreviewed test gardening.

        * TestExpectations:

2016-04-15  Jiewen Tan  <jiewen_tan@apple.com>

        Mark imported/w3c/web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute.html as flaky on mac-wk1
        https://bugs.webkit.org/show_bug.cgi?id=156629

        Unreviewed test gardening.

        * platform/mac-wk1/TestExpectations:

2016-04-14  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Cleanup inspector/debugger tests
        https://bugs.webkit.org/show_bug.cgi?id=156619

        Reviewed by Brian Burg.

        * inspector/debugger/breakpoint-action-detach.html:
        * inspector/debugger/breakpoint-action-with-exception.html:
        * inspector/debugger/breakpoint-condition-detach.html:
        * inspector/debugger/breakpoint-condition-with-bad-script.html:
        * inspector/debugger/breakpoint-condition-with-exception.html:
        * inspector/debugger/breakpoint-eval-with-exception.html:
        * inspector/debugger/breakpoint-inside-conditons-and-actions.html:
        * inspector/debugger/call-frame-function-name.html:
        * inspector/debugger/call-frame-this-host.html:
        * inspector/debugger/call-frame-this-nonstrict.html:
        * inspector/debugger/call-frame-this-strict.html:
        * inspector/debugger/debugger-statement.html:
        * inspector/debugger/didSampleProbe-multiple-probes.html:
        * inspector/debugger/hit-breakpoint-from-console.html:
        * inspector/debugger/nested-inspectors.html:
        * inspector/debugger/pause-on-assert.html:
        * inspector/debugger/regress-133182.html:
        * inspector/debugger/removeBreakpoint.html:
        * inspector/debugger/setBreakpoint-actions.html:
        * inspector/debugger/setBreakpoint-autoContinue.html:
        * inspector/debugger/setBreakpoint-column.html:
        * inspector/debugger/setBreakpoint-condition.html:
        * inspector/debugger/setBreakpoint-dfg-and-modify-local.html:
        * inspector/debugger/setBreakpoint-dfg-callee-and-examine-dfg-local.html:
        * inspector/debugger/setBreakpoint-dfg.html:
        * inspector/debugger/setBreakpoint-options-exception.html:
        * inspector/debugger/setBreakpoint.html:
        * inspector/debugger/setBreakpointByUrl-sourceURL.html:
        * inspector/debugger/setPauseOnExceptions-all.html:
        * inspector/debugger/setPauseOnExceptions-none.html:
        * inspector/debugger/setPauseOnExceptions-uncaught.html:
        Activate breakpoints in protocol tests that may set breakpoints and pause.
        Inspector tests automatically enable breakpoints.

        * inspector/debugger/setVariableValue-expected.txt: Removed.
        * inspector/debugger/setVariableValue.html: Removed.
        * platform/gtk/TestExpectations:
        Remove references to bad test. The protocol command no longer exists.

2016-04-15  John Wilander  <wilander@apple.com>

        Refactor WebSockets handshake to use StringView instead of String for header validation.
        https://bugs.webkit.org/show_bug.cgi?id=155602

        Reviewed by Darin Adler.

        * http/tests/websocket/tests/hybi/bad-handshake-crash-expected.txt:
            Fixed so that new error output is expected.
        * http/tests/websocket/tests/hybi/handshake-ok-with-http-version-beyond-1_1-expected.txt:
        * http/tests/websocket/tests/hybi/handshake-ok-with-http-version-beyond-1_1.html:
        * http/tests/websocket/tests/hybi/handshake-ok-with-http-version-beyond-1_1_wsh.py:
            Now tests HTTP versions that are higher than 1.1, are lower than 1.1, have bad characters, and are empty.
        * http/tests/websocket/tests/hybi/long-invalid-header-expected.txt:
            Fixed so that slightly refined error output is expected.

2016-04-15  Joanmarie Diggs  <jdiggs@igalia.com>

        AX: Presentational role on SVG elements is trumped by child 'title' and 'desc' elements
        https://bugs.webkit.org/show_bug.cgi?id=156519

        Reviewed by Chris Fleizach.

        Update w3c-svg-presentational-role.html expectations because there are test cases in which
        elements are now being included in the accessibility tree as a result of this change. Also
        add new test cases which lack child 'title' and 'desc' elements.

        * accessibility/w3c-svg-content-language-attribute.html: Added.
        * accessibility/w3c-svg-presentational-role.html: New test cases added.
        * platform/gtk/accessibility/w3c-svg-content-language-attribute-expected.txt: Added.
        * platform/gtk/accessibility/w3c-svg-presentational-role-expected.txt: Updated.
        * platform/mac/accessibility/w3c-svg-content-language-attribute-expected.txt: Added.
        * platform/mac/accessibility/w3c-svg-presentational-role-expected.txt: Updated.

2016-04-15  Carlos Garcia Campos  <cgarcia@igalia.com>

        Selection.deleteFromDocument should not leave a selection character
        https://bugs.webkit.org/show_bug.cgi?id=151442

        Reviewed by Michael Catanzaro.

        * editing/selection/deleteFromDocument-expected.txt:
        * editing/selection/deleteFromDocument.html:
        * imported/blink/editing/selection/deleteFromDocument-undo-crash-expected.txt: Added.
        * imported/blink/editing/selection/deleteFromDocument-undo-crash.html: Added.
        * TestExpectations: Skip imported/blink/editing/selection/deleteFromDocument-undo-crash.html in Debug.
        * platform/gtk/TestExpectations: Unskip imported/blink/editing/selection/deleteFromDocument-crash.html.
        * platform/win/TestExpectations: Ditto.

2016-04-15  Brady Eidson  <beidson@apple.com>

        Add the message property to DOMError.
        https://bugs.webkit.org/show_bug.cgi?id=139173

        Reviewed by Alex Christensen.

        * storage/indexeddb/createIndex-after-failure-expected.txt:
        * storage/indexeddb/createIndex-after-failure-private-expected.txt:
        * storage/indexeddb/intversion-upgrades-expected.txt:
        * storage/indexeddb/intversion-upgrades-private-expected.txt:

2016-04-15  Jiewen Tan  <jiewen_tan@apple.com>

        Mark perf/array-binary-search.html as flaky on ios-simulator-wk2
        https://bugs.webkit.org/show_bug.cgi?id=153049

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/TestExpectations:

2016-04-14  Jiewen Tan  <jiewen_tan@apple.com>

        Mark fast/animation/request-animation-frame-iframe2.html as flaky on ios-simulator-wk2
        https://bugs.webkit.org/show_bug.cgi?id=156620

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/TestExpectations:

2016-04-14  Jiewen Tan  <jiewen_tan@apple.com>

        Mark fast/animation/request-animation-frame-during-modal.html as flaky on ios-simulator-wk2
        https://bugs.webkit.org/show_bug.cgi?id=82762

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/TestExpectations:

2016-04-14  Jiewen Tan  <jiewen_tan@apple.com>

        Mark inspector/console/addInspectedNode.html as flaky on mac-wk2 for ElCapitan
        https://bugs.webkit.org/show_bug.cgi?id=155138

        Unreviewed test gardening.

        * platform/mac-wk2/TestExpectations:

2016-04-14  Jiewen Tan  <jiewen_tan@apple.com>

        Mark http/tests/cache/disk-cache/disk-cache-vary-no-body.html as flaky on ios-simulator-wk2
        https://bugs.webkit.org/show_bug.cgi?id=149087

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/TestExpectations:

2016-04-14  Jiewen Tan  <jiewen_tan@apple.com>

        Mark http/tests/cache/disk-cache/disk-cache-vary.html as flaky for ios-simulator-wk2
        https://bugs.webkit.org/show_bug.cgi?id=149087

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/TestExpectations:

2016-04-14  Daniel Bates  <dabates@apple.com>

        Cleanup: Run all Content Security Policy 1.1 tests by default

        It is now feasible to run all tests in directory LayoutTests/http/tests/security/contentSecurityPolicy/1.1
        by default following r199172, r199525 and r199538. There is still work to be done to make all CSP 1.1 tests
        pass. The number of 1.1 tests that either fail or timeout now represent a minority of all 1.1 tests.

        * TestExpectations: Remove all CSP tests marked PASS, remove the entry to skip all tests in directory
        LayoutTests/http/tests/security/contentSecurityPolicy/1.1, and sort the list of failing tests by
        bug number, filename.

2016-04-14  Mark Lam  <mark.lam@apple.com>

        Add svn:eol-style=LF to LayoutTests/ietestcenter/Javascript/TestCases/ files.
        https://bugs.webkit.org/show_bug.cgi?id=156588

        Rubber-stamped by Geoffrey Garen.

        These files are currently using CRs in their eols.  As a result, the EWS bots
        will always fail to apply a patch if the patch touches one these files.  Adding
        svn:eol-style=LF to them should resolve the issue.

        Specifically, I ran the following command:
        $ svn propset svn:eol-style LF LayoutTests/ietestcenter/Javascript/TestCases/*

        Note: this patch will touch 1306 files (not including this ChangeLog).

        * ietestcenter/Javascript/TestCases/10.4.2-1-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/10.4.2-1-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/10.4.2-1-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/10.4.2-1-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/10.4.2-1-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/10.4.2-2-c-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.return.inner):
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/10.6-10-c-ii-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/10.6-10-c-ii-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/10.6-12-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/10.6-12-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/10.6-13-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/10.6-5-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/10.6-6-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/10.6-6-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/10.6-6-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/10.6-6-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.1.4-0.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.1.5-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.1.5-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.1.5_4-4-a-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.1.5_4-4-a-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.1.5_4-4-b-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/11.1.5_4-4-b-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/11.1.5_4-4-c-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/11.1.5_4-4-c-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/11.1.5_4-4-d-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/11.1.5_4-4-d-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/11.1.5_4-4-d-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/11.1.5_4-4-d-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/11.1.5_5-4-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/11.1.5_6-3-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/11.1.5_6-3-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/11.1.5_7-3-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/11.1.5_7-3-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/11.13.1-1-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.13.1-1-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.13.1-1-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.13.1-1-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.13.1-4-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/11.4.1-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.4.1-2-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.4.1-2-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.4.1-2-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.4.1-2-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.4.1-2-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.4.1-2-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.4.1-3-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.4.1-3-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.4.1-3-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.4.1-4.a-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/11.4.1-4.a-10.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.4.1-4.a-11.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.4.1-4.a-12.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.4.1-4.a-13.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/11.4.1-4.a-14.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.4.1-4.a-15.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.4.1-4.a-16.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.4.1-4.a-17.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.4.1-4.a-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.getter):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/11.4.1-4.a-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/11.4.1-4.a-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.4.1-4.a-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.4.1-4.a-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.4.1-4.a-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.4.1-4.a-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.4.1-4.a-9.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.4.1-5-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.4.1-5-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/11.4.1-5-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/12.10-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.f):
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/12.10-0-10.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.f.innerf):
        (ES5Harness.registerTest.test.testcase.f):
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/12.10-0-11.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.f.innerf):
        (ES5Harness.registerTest.test.testcase.f):
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/12.10-0-12.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.f.innerf):
        (ES5Harness.registerTest.test.testcase.f):
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/12.10-0-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.with.f):
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/12.10-0-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/12.10-0-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/12.10-0-9.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.f.innerf):
        (ES5Harness.registerTest.test.testcase.f):
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/12.10-2-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/12.10-2-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/12.10-2-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/12.10-7-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/12.14-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/12.14-10.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.f.innerf):
        (ES5Harness.registerTest.test.testcase.f):
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/12.14-11.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.f.innerf):
        (ES5Harness.registerTest.test.testcase.f):
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/12.14-12.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.f.innerf):
        (ES5Harness.registerTest.test.testcase.f):
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/12.14-13.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/12.14-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.capturedFoo):
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/12.14-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/12.14-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/12.14-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.o.foo):
        (ES5Harness.registerTest.test.testcase.catch.foo):
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/12.14-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.o.foo):
        (ES5Harness.registerTest.test.testcase.catch.foo):
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/12.14-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/12.14-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/12.14-9.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.f.innerf):
        (ES5Harness.registerTest.test.testcase.f):
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/12.2.1-11.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/12.2.1-12.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.10.6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.10.7.1-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.10.7.2-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.10.7.3-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.10.7.4-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.10.7.5-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.12-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12-0-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12-0-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-0-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-0-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-0-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-0-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-0-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-0-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-0-9.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-g1-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-g1-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-g1-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-g1-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-g2-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-g2-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-g2-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-g2-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-g2-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-g4-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-g4-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-g4-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-g4-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-g5-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-g5-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-g5-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-g6-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-g6-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-g6-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-g6-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-g6-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-g6-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.1.1-g6-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.2-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.2-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.2-0-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-0-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-11-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-11-10.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-11-11.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-11-12.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-11-13.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-11-14.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-11-15.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-11-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-11-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-11-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-11-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-11-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precodition):
        * ietestcenter/Javascript/TestCases/15.12.3-11-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-11-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-11-9.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-4-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-5-a-i-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-5-b-i-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-6-a-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-6-a-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-6-b-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-6-b-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-6-b-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-6-b-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-7-a-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-8-a-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-8-a-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-8-a-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-8-a-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3-8-a-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3_2-2-b-i-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.obj.toJSON):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3_2-2-b-i-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.obj.toJSON):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3_2-2-b-i-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.obj.toJSON):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3_2-3-a-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3_2-3-a-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3_2-3-a-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3_4-1-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3_4-1-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.12.3_4-1-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.10-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.2.3.10-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.10-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.10-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.11-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.2.3.11-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.11-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.11-4-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.11-4-10.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.11-4-11.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.11-4-12.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.11-4-13.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.11-4-14.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.11-4-15.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.11-4-16.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.11-4-17.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.11-4-18.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.11-4-19.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.11-4-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.11-4-20.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.11-4-21.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.11-4-22.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.11-4-23.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.11-4-24.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.11-4-25.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.11-4-26.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.11-4-27.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.11-4-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.11-4-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.11-4-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.11-4-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.11-4-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.11-4-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.11-4-9.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.12-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.2.3.12-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.12-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.12-3-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.12-3-10.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.12-3-11.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.12-3-12.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.12-3-13.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.12-3-14.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.12-3-15.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.12-3-16.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.12-3-17.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.12-3-18.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.12-3-19.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.12-3-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.12-3-20.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.12-3-21.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.12-3-22.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.12-3-23.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.12-3-24.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.12-3-25.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.12-3-26.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.12-3-27.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.12-3-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.12-3-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.12-3-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.12-3-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.12-3-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.12-3-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.12-3-9.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.13-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.2.3.13-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.13-0-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.13-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.13-2-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.13-2-10.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.13-2-11.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.13-2-12.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.13-2-13.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.13-2-14.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.13-2-15.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.13-2-16.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.13-2-17.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.13-2-18.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.13-2-19.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.13-2-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.13-2-20.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.13-2-21.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.13-2-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.13-2-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.13-2-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.13-2-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.13-2-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.13-2-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.13-2-9.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.14-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.2.3.14-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.14-1-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.14-1-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.14-1-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.14-1-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.14-1-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.14-2-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.14-2-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.14-2-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.Array):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.14-2-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.14-2-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.14-2-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.14-3-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.14-3-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.14-3-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.14-3-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.testArgs2):
        (ES5Harness.registerTest.test.testcase.testArgs3):
        (ES5Harness.registerTest.test.testcase.testArgs4):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.14-3-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.2-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.2.3.2-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.2-0-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.2-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.2-2-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.2-2-10.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.2-2-11.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.2-2-12.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.2-2-13.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.2-2-14.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.2-2-15.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.2-2-16.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.2-2-17.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.2-2-18.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.2-2-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.base):
        (ES5Harness.registerTest.test.testcase.derived):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.2-2-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.2-2-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.2-2-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.2-2-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.2-2-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.2-2-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.2-2-9.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.2.3.3-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-2-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-2-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-10.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-100.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-101.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-102.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-103.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-104.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-105.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-106.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-107.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-108.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-109.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-11.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-110.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-111.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-112.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-113.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-114.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-115.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-116.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-117.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-118.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-119.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-12.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-120.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-121.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-122.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-123.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-124.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-125.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-126.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-127.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-128.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-129.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-13.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-130.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-131.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-132.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-133.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-134.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-135.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-136.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-137.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-138.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-139.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-14.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-140.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-141.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-142.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-143.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-144.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-145.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-146.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-147.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-148.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-149.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-15.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-150.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-151.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-152.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-153.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-154.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-155.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-156.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-157.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-158.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-159.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-16.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-160.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-161.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-162.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-163.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-164.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-165.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-166.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-167.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-168.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-169.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-17.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-170.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-171.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-172.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-173.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-174.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-175.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-176.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-177.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-178.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-179.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-18.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-180.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-182.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-185.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-186.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-187.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-188.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-189.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-19.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-190.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-191.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-192.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-193.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-194.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-195.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-196.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-197.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-198.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-199.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-20.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-200.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-201.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-202.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-203.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-204.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-205.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-206.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-207.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-208.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-209.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-21.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-210.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-211.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-212.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-213.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-214.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-215.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-216.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-217.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-218.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-219.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-22.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-220.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-221.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-222.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-23.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-24.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-25.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-26.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-27.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-28.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-29.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.getter):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-30.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-31.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-32.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-33.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-34.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-35.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-36.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-37.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-38.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-39.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-40.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-41.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-42.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-43.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-44.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-45.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-46.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-47.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-48.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-49.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-50.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-51.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-52.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-53.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-54.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-55.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-56.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-57.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-58.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-59.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-60.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-61.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-62.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-63.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-64.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-65.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-66.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-67.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-68.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-69.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-70.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-71.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-72.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-73.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-74.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-75.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-76.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-77.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-78.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-79.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-80.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-81.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-82.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-84.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-85.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-86.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-88.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-89.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-9.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-90.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-91.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-92.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-93.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-94.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-96.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-97.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-98.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.3-4-99.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.4-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.2.3.4-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.4-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.4-4-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.4-4-b-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.5-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.2.3.5-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.5-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.5-2-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.base):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.5-3-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.base):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.5-4-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.base):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.6-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.2.3.6-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.6-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.6-3-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.getter):
        (ES5Harness.registerTest.test.testcase.desc.get getter):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.6-3-10.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.desc.set setter):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.6-3-11.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.desc.set setter):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.6-3-12.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.desc.set setter):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.6-3-13.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.desc.set setter):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.6-3-14.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.desc.set setter):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.6-3-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.getter):
        (ES5Harness.registerTest.test.testcase.desc.get getter):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.6-3-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.setter):
        (ES5Harness.registerTest.test.testcase.desc.set setter):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.6-3-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.setter):
        (ES5Harness.registerTest.test.testcase.desc.set setter):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.6-3-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.desc.get getter):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.6-3-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.desc.get getter):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.6-3-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.desc.get getter):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.6-3-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.desc.get getter):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.6-3-9.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.desc.get getter):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.6-4-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.6-4-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.sameDataDescriptorValues):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.6-4-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.sameAccessorDescriptorValues):
        (ES5Harness.registerTest.test.testcase.desc):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.7-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.2.3.7-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.7-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.8-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.2.3.8-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.8-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.9-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.2.3.9-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.2.3.9-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.3.2.1-11-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.3.2.1-11-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.3.2.1-11-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.3.3.2-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.3.4.5-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.3.4.5-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.3.4.5-13.b-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.3.4.5-13.b-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.3.4.5-13.b-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.3.4.5-13.b-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.3.4.5-13.b-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.3.4.5-15-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.3.4.5-15-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.3.4.5-16-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.3.4.5-2-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.3.4.5-2-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.3.4.5-2-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.3.4.5-2-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.3.4.5-2-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.3.4.5-2-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.3.4.5-2-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.3.4.5-2-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.3.4.5-2-9.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.3.4.5-8-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.3.4.5-8-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.3.4.5-9-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.3.4.5-9-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.3.2-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.4.3.2-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.3.2-0-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.3.2-0-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.3.2-0-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.3.2-0-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.3.2-0-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.4.4.14-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-1-10.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-1-11.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-1-12.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-1-13.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-1-14.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-1-15.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-1-16.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-1-18.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-1-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-1-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-1-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-1-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-1-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-1-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-1-9.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-10-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-10-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.test.testcase.get var):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-2-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-2-10.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.test.testcase.get var.Con):
        (ES5Harness.registerTest.test.testcase.get var):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-2-11.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.test.testcase.get var.Con):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-2-12.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-2-13.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.try.):
        (ES5Harness.registerTest.test.testcase.try.get var):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-2-14.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.test.testcase.set var.Con):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-2-15.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-2-17.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-2-18.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.func):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-2-19.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-2-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-2-20.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-2-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.Con):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-2-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-2-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.test.testcase.get var.Con):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-2-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.try.):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-2-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.Con):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-2-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.test.testcase.get Object):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-2-9.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.Con):
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-3-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-3-10.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-3-11.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-3-12.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-3-13.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-3-14.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-3-15.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-3-16.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-3-17.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-3-18.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-3-19.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.obj.length.toString):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-3-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-3-20.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.obj.length.valueOf):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-3-21.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.obj.length.toString):
        (ES5Harness.registerTest.test.testcase.obj.length.valueOf):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-3-22.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.obj.length.toString):
        (ES5Harness.registerTest.test.testcase.obj.length.valueOf):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-3-23.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.proto.valueOf):
        (ES5Harness.registerTest.test.testcase.Con):
        (ES5Harness.registerTest.test.testcase.child.toString):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-3-24.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-3-25.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-3-28.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-3-29.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-3-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-3-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-3-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-3-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-3-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-3-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-3-9.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-4-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-4-10.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-4-11.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-4-12.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-4-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-4-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-4-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-4-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-4-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.i.Array.prototype.indexOf.call.):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-4-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.i.Array.prototype.indexOf.call.):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-4-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-4-9.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-5-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-5-10.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-5-11.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-5-12.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-5-13.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-5-14.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-5-15.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-5-16.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-5-17.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-5-18.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-5-19.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-5-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-5-20.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-5-21.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.fromIndex.toString):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-5-22.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.fromIndex.valueOf):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-5-23.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.fromIndex.toString):
        (ES5Harness.registerTest.test.testcase.fromIndex.valueOf):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-5-24.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.fromIndex.toString):
        (ES5Harness.registerTest.test.testcase.fromIndex.valueOf):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-5-25.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.proto.valueOf):
        (ES5Harness.registerTest.test.testcase.Con):
        (ES5Harness.registerTest.test.testcase.child.toString):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-5-28.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.fromIndex.valueOf):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-5-29.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.test.testcase.get var.fromIndex.valueOf):
        (ES5Harness.registerTest.test.testcase.get var):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-5-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-5-30.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.test.testcase.get var.fromIndex.valueOf):
        (ES5Harness.registerTest.test.testcase.get var):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-5-31.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-5-32.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-5-33.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-5-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-5-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-5-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-5-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-5-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-5-9.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-6-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-7-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-7-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-7-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-7-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-7-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-7-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-8-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-8-10.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-8-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-8-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-8-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-8-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-8-9.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.obj.toString):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-10.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-11.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.obj.toString):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.obj.toString):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.obj.toString):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.obj1.toString):
        (ES5Harness.registerTest.test.testcase.obj2.toString):
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.obj.toString):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-9.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-a-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-a-11.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.test.testcase.get Object):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-a-12.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.test.testcase.get Object):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-a-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.targetObj):
        (ES5Harness.registerTest.test.testcase.fromIndex.valueOf):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-a-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.targetObj):
        (ES5Harness.registerTest.test.testcase.fromIndex.valueOf):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-a-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-a-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.fromIndex.valueOf):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-a-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.fromIndex.valueOf):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-b-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-b-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.test.testcase.get try):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-b-i-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-b-i-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-b-i-24.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-b-i-25.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.func):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-b-i-26.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.func):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-b-i-27.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.func):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-b-i-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-b-i-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-b-i-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.try.):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-b-i-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.try.):
        (ES5Harness.registerTest.test.testcase.try.get return):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-b-i-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-b-i-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-b-ii-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-b-ii-10.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-b-ii-11.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-b-ii-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-b-ii-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-b-ii-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-b-ii-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-b-ii-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-b-ii-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-b-ii-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-b-ii-9.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-b-iii-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.14-9-b-iii-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.test.testcase.get Object):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.4.4.15-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-1-10.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-1-11.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-1-12.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-1-13.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-1-14.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-1-15.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-1-16.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-1-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-1-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-1-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-1-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-1-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-1-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-1-9.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-2-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-2-10.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.test.testcase.get var.Con):
        (ES5Harness.registerTest.test.testcase.get var):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-2-11.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.test.testcase.get var.Con):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-2-12.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-2-13.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.try.):
        (ES5Harness.registerTest.test.testcase.try.get var):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-2-14.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.test.testcase.set var.Con):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-2-15.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-2-17.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-2-18.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.targetObj):
        (ES5Harness.registerTest.test.testcase.arguments.2):
        (ES5Harness.registerTest.test.testcase.func):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-2-19.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-2-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-2-20.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-2-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.Con):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-2-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-2-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.test.testcase.get var.Con):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-2-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.try.):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-2-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.Con):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-2-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-2-9.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.Con):
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-3-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-3-10.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-3-11.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-3-12.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-3-13.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-3-14.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-3-15.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-3-16.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-3-17.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-3-18.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-3-19.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.obj.length.toString):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-3-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-3-20.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.obj.length.valueOf):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-3-21.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.obj.length.toString):
        (ES5Harness.registerTest.test.testcase.obj.length.valueOf):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-3-22.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.obj.length.toString):
        (ES5Harness.registerTest.test.testcase.obj.length.valueOf):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-3-23.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.proto.valueOf):
        (ES5Harness.registerTest.test.testcase.Con):
        (ES5Harness.registerTest.test.testcase.child.toString):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-3-24.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-3-25.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-3-26.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-3-27.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-3-28.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-3-29.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-3-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-3-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-3-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-3-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-3-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-3-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-3-9.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-4-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-4-10.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-4-11.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-4-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-4-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-4-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-4-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-4-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.i.Array.prototype.lastIndexOf.call.):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-4-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.o.toString):
        (ES5Harness.registerTest.test.testcase.i.Array.prototype.lastIndexOf.call.):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-4-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-4-9.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-5-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-5-10.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-5-11.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-5-12.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-5-13.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-5-14.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-5-15.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-5-16.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-5-17.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-5-18.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-5-19.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-5-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-5-20.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-5-21.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.fromIndex.toString):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-5-22.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.fromIndex.valueOf):
        (ES5Harness.registerTest.test.testcase.targetObj):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-5-23.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.fromIndex.toString):
        (ES5Harness.registerTest.test.testcase.fromIndex.valueOf):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-5-24.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.fromIndex.toString):
        (ES5Harness.registerTest.test.testcase.fromIndex.valueOf):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-5-25.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.proto.valueOf):
        (ES5Harness.registerTest.test.testcase.Con):
        (ES5Harness.registerTest.test.testcase.child.toString):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-5-28.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.fromIndex.valueOf):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-5-29.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.test.testcase.get var.fromIndex.valueOf):
        (ES5Harness.registerTest.test.testcase.get var):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-5-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-5-30.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.test.testcase.get var.fromIndex.valueOf):
        (ES5Harness.registerTest.test.testcase.get var):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-5-31.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-5-32.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-5-33.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-5-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-5-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-5-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-5-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-5-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-5-9.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-6-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-6-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-6-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-6-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-6-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-6-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-7-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-7-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-7-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-7-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.obj.toString):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-10.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-11.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.obj.toString):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.obj.toString):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.obj.toString):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.obj1.toString):
        (ES5Harness.registerTest.test.testcase.obj2.toString):
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.obj.toString):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-9.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-a-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-a-11.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.test.testcase.get Object):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-a-12.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.test.testcase.get Object):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-a-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.targetObj):
        (ES5Harness.registerTest.test.testcase.fromIndex.valueOf):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-a-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.targetObj):
        (ES5Harness.registerTest.test.testcase.fromIndex.valueOf):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-a-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-a-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.fromIndex.valueOf):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-a-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.fromIndex.valueOf):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-b-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-b-i-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-b-i-2.js: Added property svn:eol-style.
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-b-i-24.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-b-i-25.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.func):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-b-i-26.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.func):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-b-i-27.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.func):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-b-i-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-b-i-4.js: Added property svn:eol-style.
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-b-i-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.try.):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-b-i-6.js: Added property svn:eol-style.
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-b-i-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-b-i-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-b-ii-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-b-ii-10.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-b-ii-11.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-b-ii-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-b-ii-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-b-ii-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-b-ii-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-b-ii-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-b-ii-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-b-ii-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-b-ii-9.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-b-iii-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-8-b-iii-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.test.testcase.get Object):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-9-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.15-9-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.):
        (ES5Harness.registerTest.test.testcase.get var):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.4.4.16-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-4-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-4-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-4-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-4-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-4-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-4-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-5-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-5-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-5-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-5-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-5-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-5-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-7-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-7-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-7-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-7-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-7-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-7-b-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-7-c-ii-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-7-c-ii-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-7-c-ii-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-8-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-8-10.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-8-11.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-8-12.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-8-13.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-8-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-8-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-8-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-8-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-8-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.o.valueOf):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-8-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.o.toString):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.16-8-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.4.4.17-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-4-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-4-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-4-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-4-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-4-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-4-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-4-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-4-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-4-9.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-5-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-5-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-5-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-5-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-5-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-5-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-7-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-7-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-7-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-7-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-7-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-7-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-7-b-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-7-c-ii-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-7-c-ii-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-7-c-ii-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-8-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-8-10.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-8-11.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-8-12.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-8-13.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-8-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-8-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-8-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-8-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-8-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.o.valueOf):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-8-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.o.toString):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.17-8-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.4.4.18-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-4-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-4-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-4-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-4-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-4-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-4-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-4-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-4-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-5-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-5-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-5-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-5-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-5-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-5-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-7-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-7-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-7-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-7-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-7-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-7-b-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-7-c-ii-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-7-c-ii-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.bCalled.false.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-8-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-8-10.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-8-11.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-8-12.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-8-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-8-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-8-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-8-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-8-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.o.valueOf):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-8-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.o.toString):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-8-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.18-8-9.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.19-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.4.4.19-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.19-4-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.19-4-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.19-4-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.19-4-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.19-4-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.19-4-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.19-4-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.19-4-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.19-5-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.19-5-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.19-5-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.19-5-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.19-5-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.19-5-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.19-5-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.o.toString):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.19-5-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.19-8-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.19-8-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.19-8-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.19-8-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.19-8-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.19-8-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.19-8-b-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.19-8-c-ii-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.19-8-c-ii-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.bCalled.false.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.19-8-c-iii-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.19-9-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.19-9-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.19-9-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.19-9-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.4.4.20-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-10-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-10-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-10-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-10-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-4-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-4-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-4-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-4-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-4-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-4-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-4-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-4-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-5-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-5-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-5-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-5-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-5-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-5-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-6-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-6-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-6-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-6-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-6-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-6-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.o.valueOf):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-6-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.o.toString):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-6-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-9-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-9-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-9-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-9-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-9-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-9-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-9-b-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-9-c-ii-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-9-c-ii-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.bCalled.false.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.20-9-c-iii-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.4.4.21-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-10-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-10-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-10-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-10-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-10-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-10-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-10-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-10-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-4-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-4-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-4-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-4-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-4-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-4-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-4-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-4-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-5-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-5-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-5-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-5-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-5-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-5-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.o.valueOf):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-5-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.o.toString):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-5-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-7-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-7-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-7-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-7-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-7-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-7-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.o.valueOf):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-7-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.o.toString):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-7-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-7-9.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-8-c-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-8-c-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-8-c-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-9-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-9-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-9-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-9-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-9-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-9-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-9-b-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-9-c-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-9-c-ii-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-9-c-ii-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-9-c-ii-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.21-9-c-ii-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.4.4.22-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-10-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-10-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-10-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-10-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-10-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-10-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-10-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-10-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-4-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-4-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-4-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-4-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-4-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-4-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-4-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-4-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-5-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-5-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-5-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-5-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-5-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-5-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.o.valueOf):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-5-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.o.toString):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-5-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-7-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-7-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-7-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-7-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-7-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-7-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.o.valueOf):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-7-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.o.toString):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-7-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-7-9.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.foo):
        (ES5Harness.registerTest.test.testcase.cb):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-8-c-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-8-c-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-8-c-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-9-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-9-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-9-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-9-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-9-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-9-b-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-9-c-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-9-c-ii-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-9-c-ii-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-9-c-ii-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.4.22-9-c-ii-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test.testcase.callbackfn):
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.4.5-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.4.5.1-3.d-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.4.5.1-3.d-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.4.5.1-3.d-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.4.5.1-5-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.4.5.1-5-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.5.4.20-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.5.4.20-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-1-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-1-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-1-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-1-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-1-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-1-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-1-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-10.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-11.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-12.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-13.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-14.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-16.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-18.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-19.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-20.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-21.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-22.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-24.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-27.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-28.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-29.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-30.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-32.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-34.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-35.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-36.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-37.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-38.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-39.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-40.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-41.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-42.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-43.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-44.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-45.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-46.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-47.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-48.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-49.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-50.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-51.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-52.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-53.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-54.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-55.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-56.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-57.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-58.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-59.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-60.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.4.20-4-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.5.5.5.2-1-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.5.5.5.2-1-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.5.5.5.2-3-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.5.5.5.2-3-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.5.5.5.2-3-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.5.5.5.2-3-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.5.5.5.2-3-5.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.5.5.5.2-3-6.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.5.5.5.2-3-7.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.5.5.5.2-3-8.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.5.5.5.2-7-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.5.5.5.2-7-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.5.5.5.2-7-3.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.5.5.5.2-7-4.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.7.3-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.7.3-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.7.3.1-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.7.3.1-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.7.4-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.9.4.4-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.9.4.4-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.9.5.43-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.9.5.43-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):
        * ietestcenter/Javascript/TestCases/15.9.5.44-0-1.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.9.5.44-0-2.js: Added property svn:eol-style.
        (ES5Harness.registerTest.test):
        (ES5Harness.registerTest.precondition):

2016-04-14  Dean Jackson  <dino@apple.com>

        CrashTracer: com.apple.WebKit.WebContent at com.apple.WebCore: WebCore::CachedResource::addClientToSet + 27
        https://bugs.webkit.org/show_bug.cgi?id=156602
        <rdar://problem/18921091>

        Reviewed by Simon Fraser.

        Tests that an animation between two inherited crossfade elements will not crash.

        * transitions/crossfade-transition-expected.txt: Added.
        * transitions/crossfade-transition.html: Added.

2016-04-14  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Add a JavaScript Formatting test for template strings
        https://bugs.webkit.org/show_bug.cgi?id=156600

        Reviewed by Brian Burg.

        * inspector/formatting/formatting-javascript-expected.txt:
        * inspector/formatting/formatting-javascript.html:
        * inspector/formatting/resources/javascript-tests/template-strings-expected.js: Added.
        * inspector/formatting/resources/javascript-tests/template-strings.js: Added.

2016-04-14  Antonio Gomes  <tonikitoo@webkit.org>

        Allow listbox content and scrollbar to intrude padding area.
        https://bugs.webkit.org/show_bug.cgi?id=128489

        Reviewed by Myles C. Maxfield.

        * fast/forms/listbox-selection-3-expected.txt: Added.
        * fast/forms/listbox-selection-3.html: Added.
        * fast/forms/listbox-padding-clip-selected.html: Added.
        * fast/forms/listbox-padding-clip-selected-expected.html: Added.
        * fast/forms/listbox-padding-clip-expected-mismatch.html: Renamed from listbox-padding-clip-overlay-expected.html.
        * fast/forms/listbox-padding-clip-overlay-expected-mismatch.html: Renamed from listbox-padding-clip-expected.html.

2016-04-14  Manuel Rego Casasnovas  <rego@igalia.com>

        [css-grid] Implement CSSGridTemplateAreasValue::equals
        https://bugs.webkit.org/show_bug.cgi?id=156578

        Reviewed by Darin Adler.

        * fast/css-grid-layout/grid-template-areas-infinite-loop-expected.txt: Added.
        * fast/css-grid-layout/grid-template-areas-infinite-loop.html: Added.

2016-04-14  Mark Lam  <mark.lam@apple.com>

        Update treatment of invoking RegExp.prototype methods on RegExp.prototype.
        https://bugs.webkit.org/show_bug.cgi?id=155922

        Reviewed by Keith Miller.

        * fast/regex/script-tests/toString.js:
        * fast/regex/toString-expected.txt:
        * ietestcenter/Javascript/15.10.7.1-1-expected.txt:
        * ietestcenter/Javascript/TestCases/15.10.7.1-1.js:
        (ES5Harness.registerTest.test):
        * js/kde/RegExp-expected.txt:
        * js/kde/script-tests/RegExp.js:
        * js/pic/cached-named-property-getter.html:
        * js/regexp-flags-expected.txt:
        * js/script-tests/regexp-flags.js:
        - updated test behaviors in some cases, and rebased results as needed.

        * js/regress/regexp-prototype-is-not-instance-expected.txt: Added.
        * js/regress/regexp-prototype-is-not-instance.html: Added.
        * js/regress/script-tests/regexp-prototype-is-not-instance.js: Added.
        - Tests new RegExp.prototype method behaviors.


2016-04-14  Frederic Wang  <fwang@igalia.com>

        Ensure that RenderMathMLOperator::stretchTo functions are called with stretchy operators that have the correct direction
        https://bugs.webkit.org/show_bug.cgi?id=156542

        Reviewed by Darin Adler.

        Add a test to ensure that nonstretchy or horizontal operators in a
        RenderMathMLRow do not stretch. This is similar to the existing test
        for munderover and we improve a bit that one too.
        Besides the verification of the rendering, these two tests will also
        check that the RenderMathMLOperator::stretchTo calls are not done in a
        way that violates the ASSERT at the top of stretchTo.

        * mathml/presentation/row-nonstretchy-or-horizontal.html: Added.
        * mathml/presentation/row-nonstretchy-or-horizontal-expected.html: Added.
        * mathml/presentation/underover-nonstretchy-horizontal.html: Removed.
        * mathml/presentation/underover-nonstretchy-horizontal-expected.html: Removed.
        * mathml/presentation/underover-nonstretchy-or-vertical.html: Renamed from LayoutTests/mathml/presentation/underover-nonstretchy-horizontal.html.
        We now also test the case of vertical operators in munderover.
        * mathml/presentation/underover-nonstretchy-or-vertical-expected.html: Renamed from LayoutTests/mathml/presentation/underover-nonstretchy-horizontal-expected.html.

2016-04-14  Darin Adler  <darin@apple.com>

        Remove UsePointersEvenForNonNullableObjectArguments from Internals
        https://bugs.webkit.org/show_bug.cgi?id=156539

        Reviewed by Alex Christensen.

        * fast/forms/color/input-color-onchange-event-expected.txt: Updated.
        * fast/forms/color/input-color-onchange-event.html: Removed unneeded test of how the
        internals object handles incorrect values passed to the test function. This wasn't testing
        actual WebKit code at all, it was just a test of the internals object implementation.

2016-04-14  Daniel Bates  <dabates@apple.com>

        CSP: Ignore report-only policy delivered via meta element
        https://bugs.webkit.org/show_bug.cgi?id=156565
        <rdar://problem/25718167>

        Reviewed by Brent Fulgham.

        Add new test LayoutTests/http/tests/security/contentSecurityPolicy/1.1/reportonly-in-meta-ignored2.html
        to ensure that we ignore X-WebKit-CSP-Report-Only when delivered via a meta element.

        Rename test report-multiple-violations-0{1, 2}.html and eval-allowed-in-report-only-mode-and-sends-report.html
        to report-multiple-violations-0{1, 2}.php and eval-allowed-in-report-only-mode-and-sends-report.php, respectively,
        so that we can make use of PHP to deliver the report-only policy via an HTTP header instead of via a meta element
        as the latter is no longer supported. Additionally, fix up code style in some tests to make them more
        consistent with the code style we use for tests.

        * TestExpectations: Update some entries due to renaming and mark tests reportonly-in-meta-ignored.html
        and reportonly-in-meta-ignored2.html as PASS so that we run them.
        * http/tests/security/contentSecurityPolicy/1.1/reportonly-in-meta-ignored-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/reportonly-in-meta-ignored.html:
        * http/tests/security/contentSecurityPolicy/1.1/reportonly-in-meta-ignored2-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/reportonly-in-meta-ignored2.html: Added.
        * http/tests/security/contentSecurityPolicy/eval-allowed-in-report-only-mode-and-sends-report.php: Renamed from LayoutTests/http/tests/security/contentSecurityPolicy/eval-allowed-in-report-only-mode-and-sends-report.html.
        * http/tests/security/contentSecurityPolicy/eval-allowed-in-report-only-mode-expected.txt:
        * http/tests/security/contentSecurityPolicy/eval-allowed-in-report-only-mode.php: Renamed from LayoutTests/http/tests/security/contentSecurityPolicy/eval-allowed-in-report-only-mode.html.
        * http/tests/security/contentSecurityPolicy/report-multiple-violations-01.php: Renamed from LayoutTests/http/tests/security/contentSecurityPolicy/report-multiple-violations-01.html.
        * http/tests/security/contentSecurityPolicy/report-multiple-violations-02.php: Renamed from LayoutTests/http/tests/security/contentSecurityPolicy/report-multiple-violations-02.html.
        * http/tests/security/contentSecurityPolicy/report-only-report-uri-missing.html: Removed.
        * http/tests/security/contentSecurityPolicy/report-only-report-uri-missing.php: Added.

2016-04-14  Antoine Quint  <graouts@apple.com>

        WebGL based canvases composite incorrectly after changing size
        https://bugs.webkit.org/show_bug.cgi?id=152556
        <rdar://problem/24012678>

        Reviewed by Dean Jackson.

        Adding a new test that sets the size of the backing store to a different
        size than the layout size after the layout size of the <canvas> element
        has been applied to ensure that the implementation correctly retains the
        layout size as the canvas backing store is resized.

        * webgl/webgl-backing-store-size-update-expected.html: Added.
        * webgl/webgl-backing-store-size-update.html: Added.

2016-04-13  Joseph Pecoraro  <pecoraro@apple.com>

        JSContext Inspector: Improve Class instances and JSC API Exported Values view in Console / ObjectTree
        https://bugs.webkit.org/show_bug.cgi?id=156566
        <rdar://problem/16392365>

        Reviewed by Timothy Hatcher.

        * inspector/console/console-table-expected.txt:
        * inspector/model/remote-object.html:
        * platform/mac/inspector/model/remote-object-expected.txt:
        More values are treated as not-lossless and therefore expandable.

2016-04-13  Daniel Bates  <dabates@apple.com>

        CSP: Nested browsing context created for <object> or <embed> should respect object-src directive
        https://bugs.webkit.org/show_bug.cgi?id=156563
        <rdar://problem/25715713>

        Reviewed by Darin Adler.

        Add tests to ensure that nested browsing context created for <object> and <embed> respect
        the object-src directive.

        * http/tests/security/contentSecurityPolicy/object-src-allows-embed-blocked-by-child-src-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/object-src-allows-embed-blocked-by-child-src.html: Added.
        * http/tests/security/contentSecurityPolicy/object-src-allows-embed-blocked-by-frame-src-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/object-src-allows-embed-blocked-by-frame-src.html: Added.
        * http/tests/security/contentSecurityPolicy/object-src-allows-object-blocked-by-child-src-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/object-src-allows-object-blocked-by-child-src.html: Added.
        * http/tests/security/contentSecurityPolicy/object-src-allows-object-blocked-by-frame-src-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/object-src-allows-object-blocked-by-frame-src.html: Added.
        * http/tests/security/contentSecurityPolicy/object-src-blocks-embed-allowed-by-child-src-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/object-src-blocks-embed-allowed-by-child-src.html: Added.
        * http/tests/security/contentSecurityPolicy/object-src-blocks-embed-allowed-by-frame-src-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/object-src-blocks-embed-allowed-by-frame-src.html: Added.
        * http/tests/security/contentSecurityPolicy/object-src-blocks-object-allowed-by-child-src-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/object-src-blocks-object-allowed-by-child-src.html: Added.
        * http/tests/security/contentSecurityPolicy/object-src-blocks-object-allowed-by-frame-src-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/object-src-blocks-object-allowed-by-frame-src.html: Added.

2016-04-13  Daniel Bates  <dabates@apple.com>

        CSP: Remove duplicate test meta-outside-head.html
        https://bugs.webkit.org/show_bug.cgi?id=156556

        Reviewed by Brent Fulgham.

        It is unnecessary to keep the test http/tests/security/contentSecurityPolicy/1.1/meta-outside-head.html as
        the functionality it exercises is covered by test http/tests/security/contentSecurityPolicy/meta-tag-ignored-if-not-in-head.html.
        The output of the latter test better conveys the purpose of the test and how to interpret its result than
        the former.

        * http/tests/security/contentSecurityPolicy/1.1/meta-outside-head-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/meta-outside-head.html: Removed.

2016-04-13  Daniel Bates  <dabates@apple.com>

        CSP: Remove experimental directive reflected-xss
        https://bugs.webkit.org/show_bug.cgi?id=156554

        Reviewed by Brent Fulgham.

        Remove tests for directive reflected-xss and update the expected results of existing XSS Auditor tests
        to reflect the change made to the wording of the error message emitted when an XSS attack is blocked.

        * fast/frames/xss-auditor-handles-file-urls-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-allow-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-allow.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-allow-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-allow.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-block-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-block.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-filter-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-filter.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-invalid-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-invalid.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-unset-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-unset.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-allow-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-allow.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-block-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-block.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-filter-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-filter.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-invalid-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-invalid.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-unset-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-unset.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-allow-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-allow.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-block-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-block.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-filter-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-filter.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-invalid-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-invalid.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-unset-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-unset.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-allow-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-allow.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-block-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-block.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-filter-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-filter.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-invalid-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-invalid.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-unset-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-unset.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-allow-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-allow.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-block-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-block.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-filter-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-filter.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-invalid-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-invalid.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-unset-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-unset.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-block-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-block.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-empty-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-empty.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-filter-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-filter.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-invalid-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-invalid.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-parsing-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-parsing.html: Removed.
        * http/tests/security/contentSecurityPolicy/resources/reflected-xss-and-xss-protection.js: Removed.
        * http/tests/security/xssAuditor/anchor-url-dom-write-location-expected.txt:
        * http/tests/security/xssAuditor/anchor-url-dom-write-location-inline-event-expected.txt:
        * http/tests/security/xssAuditor/anchor-url-dom-write-location-inline-event-null-char-expected.txt:
        * http/tests/security/xssAuditor/anchor-url-dom-write-location-javascript-URL-expected.txt:
        * http/tests/security/xssAuditor/anchor-url-dom-write-location2-expected.txt:
        * http/tests/security/xssAuditor/base-href-control-char-expected.txt:
        * http/tests/security/xssAuditor/base-href-expected.txt:
        * http/tests/security/xssAuditor/base-href-null-char-expected.txt:
        * http/tests/security/xssAuditor/base-href-scheme-relative-expected.txt:
        * http/tests/security/xssAuditor/cookie-injection-expected.txt:
        * http/tests/security/xssAuditor/dom-write-URL-expected.txt:
        * http/tests/security/xssAuditor/dom-write-location-expected.txt:
        * http/tests/security/xssAuditor/dom-write-location-inline-event-expected.txt:
        * http/tests/security/xssAuditor/dom-write-location-javascript-URL-expected.txt:
        * http/tests/security/xssAuditor/embed-tag-code-attribute-2-expected.txt:
        * http/tests/security/xssAuditor/embed-tag-code-attribute-expected.txt:
        * http/tests/security/xssAuditor/embed-tag-control-char-expected.txt:
        * http/tests/security/xssAuditor/embed-tag-expected.txt:
        * http/tests/security/xssAuditor/embed-tag-in-path-unterminated-expected.txt:
        * http/tests/security/xssAuditor/embed-tag-javascript-url-expected.txt:
        * http/tests/security/xssAuditor/embed-tag-null-char-expected.txt:
        * http/tests/security/xssAuditor/form-action-expected.txt:
        * http/tests/security/xssAuditor/formaction-on-button-expected.txt:
        * http/tests/security/xssAuditor/formaction-on-input-expected.txt:
        * http/tests/security/xssAuditor/frameset-injection-expected.txt:
        * http/tests/security/xssAuditor/full-block-iframe-no-inherit-expected.txt:
        * http/tests/security/xssAuditor/get-from-iframe-expected.txt:
        * http/tests/security/xssAuditor/iframe-injection-expected.txt:
        * http/tests/security/xssAuditor/iframe-javascript-url-expected.txt:
        * http/tests/security/xssAuditor/iframe-javascript-url-more-encoding-expected.txt:
        * http/tests/security/xssAuditor/iframe-javascript-url-twice-url-encode-expected.txt:
        * http/tests/security/xssAuditor/iframe-javascript-url-twice-url-encode2-expected.txt:
        * http/tests/security/xssAuditor/iframe-javascript-url-twice-url-encode3-expected.txt:
        * http/tests/security/xssAuditor/iframe-javascript-url-url-encoded-expected.txt:
        * http/tests/security/xssAuditor/iframe-onload-GBK-char-expected.txt:
        * http/tests/security/xssAuditor/iframe-onload-in-svg-tag-expected.txt:
        * http/tests/security/xssAuditor/iframe-srcdoc-expected.txt:
        * http/tests/security/xssAuditor/iframe-srcdoc-property-blocked-expected.txt:
        * http/tests/security/xssAuditor/img-onerror-GBK-char-expected.txt:
        * http/tests/security/xssAuditor/img-onerror-accented-char-expected.txt:
        * http/tests/security/xssAuditor/img-onerror-non-ASCII-char-default-encoding-expected.txt:
        * http/tests/security/xssAuditor/img-onerror-non-ASCII-char-expected.txt:
        * http/tests/security/xssAuditor/img-onerror-non-ASCII-char2-default-encoding-expected.txt:
        * http/tests/security/xssAuditor/img-onerror-non-ASCII-char2-expected.txt:
        * http/tests/security/xssAuditor/img-tag-with-comma-expected.txt:
        * http/tests/security/xssAuditor/inline-event-HTML-entities-expected.txt:
        * http/tests/security/xssAuditor/javascript-link-HTML-entities-control-char-expected.txt:
        * http/tests/security/xssAuditor/javascript-link-HTML-entities-expected.txt:
        * http/tests/security/xssAuditor/javascript-link-HTML-entities-named-expected.txt:
        * http/tests/security/xssAuditor/javascript-link-HTML-entities-null-char-expected.txt:
        * http/tests/security/xssAuditor/javascript-link-ampersand-expected.txt:
        * http/tests/security/xssAuditor/javascript-link-control-char-expected.txt:
        * http/tests/security/xssAuditor/javascript-link-expected.txt:
        * http/tests/security/xssAuditor/javascript-link-null-char-expected.txt:
        * http/tests/security/xssAuditor/javascript-link-one-plus-one-expected.txt:
        * http/tests/security/xssAuditor/javascript-link-url-encoded-expected.txt:
        * http/tests/security/xssAuditor/link-onclick-ampersand-expected.txt:
        * http/tests/security/xssAuditor/link-onclick-control-char-expected.txt:
        * http/tests/security/xssAuditor/link-onclick-entities-expected.txt:
        * http/tests/security/xssAuditor/link-onclick-expected.txt:
        * http/tests/security/xssAuditor/link-onclick-null-char-expected.txt:
        * http/tests/security/xssAuditor/link-opens-new-window-expected.txt:
        * http/tests/security/xssAuditor/malformed-HTML-expected.txt:
        * http/tests/security/xssAuditor/malformed-xss-protection-header-1-expected.txt:
        * http/tests/security/xssAuditor/malformed-xss-protection-header-2-expected.txt:
        * http/tests/security/xssAuditor/malformed-xss-protection-header-3-expected.txt:
        * http/tests/security/xssAuditor/malformed-xss-protection-header-4-expected.txt:
        * http/tests/security/xssAuditor/malformed-xss-protection-header-5-expected.txt:
        * http/tests/security/xssAuditor/malformed-xss-protection-header-6-expected.txt:
        * http/tests/security/xssAuditor/malformed-xss-protection-header-7-expected.txt:
        * http/tests/security/xssAuditor/malformed-xss-protection-header-8-expected.txt:
        * http/tests/security/xssAuditor/malformed-xss-protection-header-9-expected.txt:
        * http/tests/security/xssAuditor/meta-tag-http-refresh-javascript-url-expected.txt:
        * http/tests/security/xssAuditor/object-embed-tag-control-char-expected.txt:
        * http/tests/security/xssAuditor/object-embed-tag-expected.txt:
        * http/tests/security/xssAuditor/object-embed-tag-null-char-expected.txt:
        * http/tests/security/xssAuditor/object-tag-expected.txt:
        * http/tests/security/xssAuditor/object-tag-javascript-url-expected.txt:
        * http/tests/security/xssAuditor/open-attribute-body-expected.txt:
        * http/tests/security/xssAuditor/open-event-handler-iframe-expected.txt:
        * http/tests/security/xssAuditor/open-iframe-src-01-expected.txt:
        * http/tests/security/xssAuditor/open-iframe-src-02-expected.txt:
        * http/tests/security/xssAuditor/open-iframe-src-03-expected.txt:
        * http/tests/security/xssAuditor/open-script-src-01-expected.txt:
        * http/tests/security/xssAuditor/open-script-src-02-expected.txt:
        * http/tests/security/xssAuditor/open-script-src-03-expected.txt:
        * http/tests/security/xssAuditor/open-script-src-04-expected.txt:
        * http/tests/security/xssAuditor/post-from-iframe-expected.txt:
        * http/tests/security/xssAuditor/property-escape-comment-01-expected.txt:
        * http/tests/security/xssAuditor/property-escape-comment-02-expected.txt:
        * http/tests/security/xssAuditor/property-escape-comment-03-expected.txt:
        * http/tests/security/xssAuditor/property-escape-entity-01-expected.txt:
        * http/tests/security/xssAuditor/property-escape-entity-02-expected.txt:
        * http/tests/security/xssAuditor/property-escape-entity-03-expected.txt:
        * http/tests/security/xssAuditor/property-escape-expected.txt:
        * http/tests/security/xssAuditor/property-escape-long-expected.txt:
        * http/tests/security/xssAuditor/property-escape-quote-01-expected.txt:
        * http/tests/security/xssAuditor/property-escape-quote-02-expected.txt:
        * http/tests/security/xssAuditor/property-escape-quote-03-expected.txt:
        * http/tests/security/xssAuditor/reflection-in-path-expected.txt:
        * http/tests/security/xssAuditor/resources/echo-intertag.pl:
        * http/tests/security/xssAuditor/script-tag-Big5-char-expected.txt:
        * http/tests/security/xssAuditor/script-tag-Big5-char-twice-url-encode-16bit-unicode-expected.txt:
        * http/tests/security/xssAuditor/script-tag-Big5-char-twice-url-encode-expected.txt:
        * http/tests/security/xssAuditor/script-tag-Big5-char2-expected.txt:
        * http/tests/security/xssAuditor/script-tag-addslashes-backslash-expected.txt:
        * http/tests/security/xssAuditor/script-tag-addslashes-double-quote-expected.txt:
        * http/tests/security/xssAuditor/script-tag-addslashes-null-char-expected.txt:
        * http/tests/security/xssAuditor/script-tag-addslashes-single-quote-expected.txt:
        * http/tests/security/xssAuditor/script-tag-control-char-expected.txt:
        * http/tests/security/xssAuditor/script-tag-convoluted-expected.txt:
        * http/tests/security/xssAuditor/script-tag-entities-expected.txt:
        * http/tests/security/xssAuditor/script-tag-expected.txt:
        * http/tests/security/xssAuditor/script-tag-expression-follows-expected.txt:
        * http/tests/security/xssAuditor/script-tag-inside-svg-tag-expected.txt:
        * http/tests/security/xssAuditor/script-tag-inside-svg-tag2-expected.txt:
        * http/tests/security/xssAuditor/script-tag-inside-svg-tag3-expected.txt:
        * http/tests/security/xssAuditor/script-tag-near-start-expected.txt:
        * http/tests/security/xssAuditor/script-tag-null-char-expected.txt:
        * http/tests/security/xssAuditor/script-tag-post-control-char-expected.txt:
        * http/tests/security/xssAuditor/script-tag-post-expected.txt:
        * http/tests/security/xssAuditor/script-tag-post-null-char-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-16bit-unicode-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-16bit-unicode-surrogate-pair-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-16bit-unicode2-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-16bit-unicode3-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-16bit-unicode4-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-16bit-unicode5-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-actual-comma-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-callbacks-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-comma-01-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-comma-02-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-fancy-unicode-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-injected-comment-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-invalid-closing-tag-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-invalid-url-encoding-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-source-control-char-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-source-data-url-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-source-data-url2-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-source-data-url3-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-source-double-quote-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-source-entities-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-source-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-source-no-quote-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-source-null-char-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-source-relative-scheme-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-source-same-host-with-query-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-source-unterminated-01-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-source-unterminated-02-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-source-unterminated-03-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-three-times-url-encoded-16bit-unicode-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-trailing-comment-U2028-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-trailing-comment-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-trailing-comment2-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-trailing-comment3-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-trailing-comment4-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-trailing-comment5-expected.txt:
        * http/tests/security/xssAuditor/script-tag-with-trailing-script-and-urlencode-expected.txt:
        * http/tests/security/xssAuditor/svg-animate-expected.txt:
        * http/tests/security/xssAuditor/svg-script-tag-expected.txt:
        * http/tests/security/xssAuditor/xss-filter-bypass-big5-expected.txt:
        * http/tests/security/xssAuditor/xss-filter-bypass-long-string-expected.txt:
        * http/tests/security/xssAuditor/xss-filter-bypass-sjis-expected.txt:

2016-04-13  Michael Saboff  <msaboff@apple.com>

        Some tests fail with ES6 `u` (Unicode) flag for regular expressions
        https://bugs.webkit.org/show_bug.cgi?id=151597

        Reviewed by Geoffrey Garen.

        Updated tests.

        * js/regexp-unicode-expected.txt:
        * js/script-tests/regexp-unicode.js:

2016-04-13  Chris Dumez  <cdumez@apple.com>

        We should not speculatively revalidate cached redirects
        https://bugs.webkit.org/show_bug.cgi?id=156548
        <rdar://problem/25583886>

        Reviewed by Darin Adler.

        Add layout test to make sure that speculative loading does not break
        redirects. This replicates the issue seen with fonts.css on stripe.com.

        * http/tests/cache/disk-cache/speculative-validation/cacheable-redirect-expected.txt: Added.
        * http/tests/cache/disk-cache/speculative-validation/cacheable-redirect.html: Added.
        * http/tests/cache/disk-cache/speculative-validation/resources/cacheable-redirect-frame.php: Added.
        * http/tests/cache/disk-cache/speculative-validation/resources/css-to-revalidate.php: Added.
        * http/tests/cache/disk-cache/speculative-validation/resources/redirect-to-css.php: Added.

2016-04-13  Zalan Bujtas  <zalan@apple.com>

        Text on compositing layer with negative letter-spacing is truncated.
        https://bugs.webkit.org/show_bug.cgi?id=156550
        <rdar://problem/24212140>

        Reviewed by Antti Koivisto.

        Negative letter-spacing affects the right edge of content's visual overflow (for both RTL and LTR).
        This is similar to how normal line layout adjusts it at InlineFlowBox::addTextBoxVisualOverflow().

        * fast/text/negative-letter-spacing-visual-overflow-expected.html: Added.
        * fast/text/negative-letter-spacing-visual-overflow.html: Added.

2016-04-13  Eric Carlson  <eric.carlson@apple.com>

        [iOS] remote command should be considered user events
        https://bugs.webkit.org/show_bug.cgi?id=156546
        <rdar://problem/25560877>

        Reviewed by Jer Noble.

        * media/remote-control-command-is-user-gesture-expected.txt: Added.
        * media/remote-control-command-is-user-gesture.html: Added.

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

        Unreviewed, rolling out r199502 and r199511.
        https://bugs.webkit.org/show_bug.cgi?id=156557

        Appears to have in-browser perf regression (Requested by mlam
        on #webkit).

        Reverted changesets:

        "ES6: Implement String.prototype.split and
        RegExp.prototype[@@split]."
        https://bugs.webkit.org/show_bug.cgi?id=156013
        http://trac.webkit.org/changeset/199502

        "ES6: Implement RegExp.prototype[@@search]."
        https://bugs.webkit.org/show_bug.cgi?id=156331
        http://trac.webkit.org/changeset/199511

2016-04-13  Antonio Gomes  <tonikitoo@webkit.org>

        Non-resizable text field looks resizable
        https://bugs.webkit.org/show_bug.cgi?id=152271

        Reviewed by Darin Adler.

        * fast/css/resize-not-inherited-expected.html: Added.
        * fast/css/resize-not-inherited.html: Added.
        * fast/css/resize-single-line-input-no-paint-expected.html: Added.
        * fast/css/resize-single-line-input-no-paint.html: Added.

2016-04-13  Mark Lam  <mark.lam@apple.com>

        ES6: Implement RegExp.prototype[@@search].
        https://bugs.webkit.org/show_bug.cgi?id=156331

        Reviewed by Keith Miller.

        * js/regress/regexp-prototype-search-observable-side-effects-expected.txt: Added.
        * js/regress/regexp-prototype-search-observable-side-effects.html: Added.
        * js/regress/regexp-prototype-search-observable-side-effects2-expected.txt: Added.
        * js/regress/regexp-prototype-search-observable-side-effects2.html: Added.

        * js/regress/script-tests/regexp-prototype-search-observable-side-effects.js: Added.
        * js/regress/script-tests/regexp-prototype-search-observable-side-effects2.js: Added.

        * js/regress/script-tests/string-prototype-search-observable-side-effects.js: Added.
        * js/regress/script-tests/string-prototype-search-observable-side-effects2.js: Added.
        * js/regress/script-tests/string-prototype-search-observable-side-effects3.js: Added.
        * js/regress/script-tests/string-prototype-search-observable-side-effects4.js: Added.

        * js/regress/string-prototype-search-observable-side-effects-expected.txt: Added.
        * js/regress/string-prototype-search-observable-side-effects.html: Added.
        * js/regress/string-prototype-search-observable-side-effects2-expected.txt: Added.
        * js/regress/string-prototype-search-observable-side-effects2.html: Added.
        * js/regress/string-prototype-search-observable-side-effects3-expected.txt: Added.
        * js/regress/string-prototype-search-observable-side-effects3.html: Added.
        * js/regress/string-prototype-search-observable-side-effects4-expected.txt: Added.
        * js/regress/string-prototype-search-observable-side-effects4.html: Added.

2016-04-13  Jiewen Tan  <jiewen_tan@apple.com>

        Mark fast/canvas/webgl/gl-teximage.html as flaky on Macs
        https://bugs.webkit.org/show_bug.cgi?id=58766

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-04-13  Jiewen Tan  <jiewen_tan@apple.com>

        Mark imported/w3c/web-platform-tests/streams/readable-streams/general.https.html as flaky
        https://bugs.webkit.org/show_bug.cgi?id=155760

        Unreviewed test gardening.

        * TestExpectations:

2016-04-13  Jiewen Tan  <jiewen_tan@apple.com>

        Mark media/track/track-in-band-duplicate-tracks-when-source-changes.html as flaky on Yosemite
        https://bugs.webkit.org/show_bug.cgi?id=124222

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-04-13  Mark Lam  <mark.lam@apple.com>

        ES6: Implement String.prototype.split and RegExp.prototype[@@split].
        https://bugs.webkit.org/show_bug.cgi?id=156013

        Reviewed by Keith Miller.

        Re-landing r199393 now that the shadow chicken crash has been fixed.

        * js/Object-getOwnPropertyNames-expected.txt:
        * js/dom/string-prototype-properties-expected.txt:

        * js/regress/regexp-prototype-split-observable-side-effects-expected.txt: Added.
        * js/regress/regexp-prototype-split-observable-side-effects.html: Added.
        * js/regress/regexp-prototype-split-observable-side-effects2-expected.txt: Added.
        * js/regress/regexp-prototype-split-observable-side-effects2.html: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-flags-expected.txt: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-flags.html: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-global-expected.txt: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-global.html: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-ignoreCase-expected.txt: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-ignoreCase.html: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-multiline-expected.txt: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-multiline.html: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-sticky-expected.txt: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-sticky.html: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-unicode-expected.txt: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-unicode.html: Added.
        * js/regress/regexp-prototype-split-observable-side-effects4-expected.txt: Added.
        * js/regress/regexp-prototype-split-observable-side-effects4.html: Added.

        * js/regress/script-tests/regexp-prototype-split-observable-side-effects.js: Added.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects2.js: Added.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects3-flags.js: Added.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects3-global.js: Added.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects3-ignoreCase.js: Added.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects3-multiline.js: Added.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects3-sticky.js: Added.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects3-unicode.js: Added.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects4.js: Added.

        * js/regress/script-tests/string-prototype-split-observable-side-effects.js: Added.
        * js/regress/script-tests/string-prototype-split-observable-side-effects2.js: Added.
        * js/regress/script-tests/string-prototype-split-observable-side-effects3-flags.js: Added.
        * js/regress/script-tests/string-prototype-split-observable-side-effects3-global.js: Added.
        * js/regress/script-tests/string-prototype-split-observable-side-effects3-ignoreCase.js: Added.
        * js/regress/script-tests/string-prototype-split-observable-side-effects3-multiline.js: Added.
        * js/regress/script-tests/string-prototype-split-observable-side-effects3-sticky.js: Added.
        * js/regress/script-tests/string-prototype-split-observable-side-effects3-unicode.js: Added.
        * js/regress/script-tests/string-prototype-split-observable-side-effects4.js: Added.

        * js/regress/string-prototype-split-observable-side-effects-expected.txt: Added.
        * js/regress/string-prototype-split-observable-side-effects.html: Added.
        * js/regress/string-prototype-split-observable-side-effects2-expected.txt: Added.
        * js/regress/string-prototype-split-observable-side-effects2.html: Added.
        * js/regress/string-prototype-split-observable-side-effects3-flags-expected.txt: Added.
        * js/regress/string-prototype-split-observable-side-effects3-flags.html: Added.
        * js/regress/string-prototype-split-observable-side-effects3-global-expected.txt: Added.
        * js/regress/string-prototype-split-observable-side-effects3-global.html: Added.
        * js/regress/string-prototype-split-observable-side-effects3-ignoreCase-expected.txt: Added.
        * js/regress/string-prototype-split-observable-side-effects3-ignoreCase.html: Added.
        * js/regress/string-prototype-split-observable-side-effects3-multiline-expected.txt: Added.
        * js/regress/string-prototype-split-observable-side-effects3-multiline.html: Added.
        * js/regress/string-prototype-split-observable-side-effects3-sticky-expected.txt: Added.
        * js/regress/string-prototype-split-observable-side-effects3-sticky.html: Added.
        * js/regress/string-prototype-split-observable-side-effects3-unicode-expected.txt: Added.
        * js/regress/string-prototype-split-observable-side-effects3-unicode.html: Added.
        * js/regress/string-prototype-split-observable-side-effects4-expected.txt: Added.
        * js/regress/string-prototype-split-observable-side-effects4.html: Added.

        * js/script-tests/Object-getOwnPropertyNames.js:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.14_String.prototype.split/S15.5.4.14_A1_T3-expected.txt:

2016-04-12  Antti Koivisto  <antti@apple.com>

        Crash at com.apple.JavaScriptCore: bool WTF::startsWith<WTF::StringImpl, WTF::StringImpl> + 8
        https://bugs.webkit.org/show_bug.cgi?id=156512
        rdar://problem/24220567

        Reviewed by Benjamin Poulain.

        Land a test that verifies that setting attr to null does not crash with attribute selectors.
        This was fixed by http://trac.webkit.org/changeset/199392.

        * fast/css/attribute-selector-null-crash-expected.html: Added.
        * fast/css/attribute-selector-null-crash.html: Added.

2016-04-12  Mark Lam  <mark.lam@apple.com>

        Rollout: ES6: Implement String.prototype.split and RegExp.prototype[@@split].
        https://bugs.webkit.org/show_bug.cgi?id=156013

        Speculative rollout to fix 32-bit shadow-chicken.yaml/tests/v8-v6/v8-regexp.js.shadow-chicken test failure.

        Not reviewed.

        * js/Object-getOwnPropertyNames-expected.txt:
        * js/dom/string-prototype-properties-expected.txt:
        * js/regress/regexp-prototype-split-observable-side-effects-expected.txt: Removed.
        * js/regress/regexp-prototype-split-observable-side-effects.html: Removed.
        * js/regress/regexp-prototype-split-observable-side-effects2-expected.txt: Removed.
        * js/regress/regexp-prototype-split-observable-side-effects2.html: Removed.
        * js/regress/regexp-prototype-split-observable-side-effects3-flags-expected.txt: Removed.
        * js/regress/regexp-prototype-split-observable-side-effects3-flags.html: Removed.
        * js/regress/regexp-prototype-split-observable-side-effects3-global-expected.txt: Removed.
        * js/regress/regexp-prototype-split-observable-side-effects3-global.html: Removed.
        * js/regress/regexp-prototype-split-observable-side-effects3-ignoreCase-expected.txt: Removed.
        * js/regress/regexp-prototype-split-observable-side-effects3-ignoreCase.html: Removed.
        * js/regress/regexp-prototype-split-observable-side-effects3-multiline-expected.txt: Removed.
        * js/regress/regexp-prototype-split-observable-side-effects3-multiline.html: Removed.
        * js/regress/regexp-prototype-split-observable-side-effects3-sticky-expected.txt: Removed.
        * js/regress/regexp-prototype-split-observable-side-effects3-sticky.html: Removed.
        * js/regress/regexp-prototype-split-observable-side-effects3-unicode-expected.txt: Removed.
        * js/regress/regexp-prototype-split-observable-side-effects3-unicode.html: Removed.
        * js/regress/regexp-prototype-split-observable-side-effects4-expected.txt: Removed.
        * js/regress/regexp-prototype-split-observable-side-effects4.html: Removed.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects.js: Removed.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects2.js: Removed.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects3-flags.js: Removed.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects3-global.js: Removed.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects3-ignoreCase.js: Removed.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects3-multiline.js: Removed.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects3-sticky.js: Removed.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects3-unicode.js: Removed.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects4.js: Removed.
        * js/regress/script-tests/string-prototype-split-observable-side-effects.js: Removed.
        * js/regress/script-tests/string-prototype-split-observable-side-effects2.js: Removed.
        * js/regress/script-tests/string-prototype-split-observable-side-effects3-flags.js: Removed.
        * js/regress/script-tests/string-prototype-split-observable-side-effects3-global.js: Removed.
        * js/regress/script-tests/string-prototype-split-observable-side-effects3-ignoreCase.js: Removed.
        * js/regress/script-tests/string-prototype-split-observable-side-effects3-multiline.js: Removed.
        * js/regress/script-tests/string-prototype-split-observable-side-effects3-sticky.js: Removed.
        * js/regress/script-tests/string-prototype-split-observable-side-effects3-unicode.js: Removed.
        * js/regress/script-tests/string-prototype-split-observable-side-effects4.js: Removed.
        * js/regress/string-prototype-split-observable-side-effects-expected.txt: Removed.
        * js/regress/string-prototype-split-observable-side-effects.html: Removed.
        * js/regress/string-prototype-split-observable-side-effects2-expected.txt: Removed.
        * js/regress/string-prototype-split-observable-side-effects2.html: Removed.
        * js/regress/string-prototype-split-observable-side-effects3-flags-expected.txt: Removed.
        * js/regress/string-prototype-split-observable-side-effects3-flags.html: Removed.
        * js/regress/string-prototype-split-observable-side-effects3-global-expected.txt: Removed.
        * js/regress/string-prototype-split-observable-side-effects3-global.html: Removed.
        * js/regress/string-prototype-split-observable-side-effects3-ignoreCase-expected.txt: Removed.
        * js/regress/string-prototype-split-observable-side-effects3-ignoreCase.html: Removed.
        * js/regress/string-prototype-split-observable-side-effects3-multiline-expected.txt: Removed.
        * js/regress/string-prototype-split-observable-side-effects3-multiline.html: Removed.
        * js/regress/string-prototype-split-observable-side-effects3-sticky-expected.txt: Removed.
        * js/regress/string-prototype-split-observable-side-effects3-sticky.html: Removed.
        * js/regress/string-prototype-split-observable-side-effects3-unicode-expected.txt: Removed.
        * js/regress/string-prototype-split-observable-side-effects3-unicode.html: Removed.
        * js/regress/string-prototype-split-observable-side-effects4-expected.txt: Removed.
        * js/regress/string-prototype-split-observable-side-effects4.html: Removed.
        * js/script-tests/Object-getOwnPropertyNames.js:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.14_String.prototype.split/S15.5.4.14_A1_T3-expected.txt:

2016-04-12  Keith Miller  <keith_miller@apple.com>

        [ES6] Add support for Symbol.isConcatSpreadable.
        https://bugs.webkit.org/show_bug.cgi?id=155351

        Reviewed by Saam Barati.

        Fix tests for Symbol.isConcatSpreadable on the Symbol object.

        * js/Object-getOwnPropertyNames-expected.txt:
        * js/dom/array-prototype-properties-expected.txt:
        * js/script-tests/Object-getOwnPropertyNames.js:

2016-04-12  Mark Lam  <mark.lam@apple.com>

        ES6: Implement String.prototype.split and RegExp.prototype[@@split].
        https://bugs.webkit.org/show_bug.cgi?id=156013

        Reviewed by Keith Miller.

        * js/Object-getOwnPropertyNames-expected.txt:
        * js/dom/string-prototype-properties-expected.txt:

        * js/regress/regexp-prototype-split-observable-side-effects-expected.txt: Added.
        * js/regress/regexp-prototype-split-observable-side-effects.html: Added.
        * js/regress/regexp-prototype-split-observable-side-effects2-expected.txt: Added.
        * js/regress/regexp-prototype-split-observable-side-effects2.html: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-flags-expected.txt: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-flags.html: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-global-expected.txt: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-global.html: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-ignoreCase-expected.txt: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-ignoreCase.html: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-multiline-expected.txt: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-multiline.html: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-sticky-expected.txt: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-sticky.html: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-unicode-expected.txt: Added.
        * js/regress/regexp-prototype-split-observable-side-effects3-unicode.html: Added.
        * js/regress/regexp-prototype-split-observable-side-effects4-expected.txt: Added.
        * js/regress/regexp-prototype-split-observable-side-effects4.html: Added.

        * js/regress/script-tests/regexp-prototype-split-observable-side-effects.js: Added.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects2.js: Added.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects3-flags.js: Added.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects3-global.js: Added.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects3-ignoreCase.js: Added.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects3-multiline.js: Added.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects3-sticky.js: Added.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects3-unicode.js: Added.
        * js/regress/script-tests/regexp-prototype-split-observable-side-effects4.js: Added.

        * js/regress/script-tests/string-prototype-split-observable-side-effects.js: Added.
        * js/regress/script-tests/string-prototype-split-observable-side-effects2.js: Added.
        * js/regress/script-tests/string-prototype-split-observable-side-effects3-flags.js: Added.
        * js/regress/script-tests/string-prototype-split-observable-side-effects3-global.js: Added.
        * js/regress/script-tests/string-prototype-split-observable-side-effects3-ignoreCase.js: Added.
        * js/regress/script-tests/string-prototype-split-observable-side-effects3-multiline.js: Added.
        * js/regress/script-tests/string-prototype-split-observable-side-effects3-sticky.js: Added.
        * js/regress/script-tests/string-prototype-split-observable-side-effects3-unicode.js: Added.
        * js/regress/script-tests/string-prototype-split-observable-side-effects4.js: Added.

        * js/regress/string-prototype-split-observable-side-effects-expected.txt: Added.
        * js/regress/string-prototype-split-observable-side-effects.html: Added.
        * js/regress/string-prototype-split-observable-side-effects2-expected.txt: Added.
        * js/regress/string-prototype-split-observable-side-effects2.html: Added.
        * js/regress/string-prototype-split-observable-side-effects3-flags-expected.txt: Added.
        * js/regress/string-prototype-split-observable-side-effects3-flags.html: Added.
        * js/regress/string-prototype-split-observable-side-effects3-global-expected.txt: Added.
        * js/regress/string-prototype-split-observable-side-effects3-global.html: Added.
        * js/regress/string-prototype-split-observable-side-effects3-ignoreCase-expected.txt: Added.
        * js/regress/string-prototype-split-observable-side-effects3-ignoreCase.html: Added.
        * js/regress/string-prototype-split-observable-side-effects3-multiline-expected.txt: Added.
        * js/regress/string-prototype-split-observable-side-effects3-multiline.html: Added.
        * js/regress/string-prototype-split-observable-side-effects3-sticky-expected.txt: Added.
        * js/regress/string-prototype-split-observable-side-effects3-sticky.html: Added.
        * js/regress/string-prototype-split-observable-side-effects3-unicode-expected.txt: Added.
        * js/regress/string-prototype-split-observable-side-effects3-unicode.html: Added.
        * js/regress/string-prototype-split-observable-side-effects4-expected.txt: Added.
        * js/regress/string-prototype-split-observable-side-effects4.html: Added.

        * js/script-tests/Object-getOwnPropertyNames.js:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.14_String.prototype.split/S15.5.4.14_A1_T3-expected.txt:

2016-04-12  Chris Dumez  <cdumez@apple.com>

        Attr.value should not be nullable
        https://bugs.webkit.org/show_bug.cgi?id=156515

        Reviewed by Benjamin Poulain.

        Add layout test and rebaseline existing one now that Attr.value is no
        longer nullable.

        * fast/dom/Attr/value-not-nullable-expected.txt: Added.
        * fast/dom/Attr/value-not-nullable.html: Added.
        * fast/dom/coreDOM-element-attribute-js-null-expected.txt:
        * fast/dom/coreDOM-element-attribute-js-null.xhtml:

2016-04-12  David Kilzer  <ddkilzer@apple.com>

        Web Inspector: inspector/heap/getRemoteObject.html is flakey
        <http://webkit.org/b/156077>

        Unreviewed test expectations update.

        * platform/mac-wk2/TestExpectations:
        (inspector/heap/getRemoteObject.html): Update bug number.

2016-04-12  David Kilzer  <ddkilzer@apple.com>

        Web Inspector: inspector/heap/getRemoteObject.html is flakey
        <http://webkit.org/b/156514>

        Unreviewed test expectations update.

        * platform/mac-wk2/TestExpectations:
        (inspector/heap/getRemoteObject.html): Mark as flakey.

2016-04-12  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Should be able to expand Objects in Heap Allocations View to see exactly what it retains
        https://bugs.webkit.org/show_bug.cgi?id=156419
        <rdar://problem/25633863>

        Reviewed by Timothy Hatcher.

        * inspector/unit-tests/heap-snapshot-expected.txt:
        * inspector/unit-tests/heap-snapshot.html:
        Add a quick test that retainedNodes returns a list of edges.

2016-04-12  Myles C. Maxfield  <mmaxfield@apple.com>

        [RTL Scrollbars] Overlay scrollbars push contents inwards
        https://bugs.webkit.org/show_bug.cgi?id=156225
        <rdar://problem/25137040>

        Reviewed by Darin Adler.

        * fast/scrolling/rtl-scrollbars-overlay-no-push-contents-expected.html: Added.
        * fast/scrolling/rtl-scrollbars-overlay-no-push-contents.html: Added.

2016-04-12  Myles C. Maxfield  <mmaxfield@apple.com>

        [OS X] Flakey crash after ScrollAnimatorMac destruction
        https://bugs.webkit.org/show_bug.cgi?id=156372

        Reviewed by Darin Adler.

        Migrate to the new mechanism for disabling mock scrollbars in tests.

        * fast/scrolling/rtl-scrollbars-animation-property.html:

2016-04-12  Saam barati  <sbarati@apple.com>

        We incorrectly parse arrow function expressions
        https://bugs.webkit.org/show_bug.cgi?id=156373

        Reviewed by Mark Lam.

        * js/parser-syntax-check-expected.txt:
        * js/script-tests/parser-syntax-check.js:
        (catch):

2016-03-17  Sergio Villar Senin  <svillar@igalia.com>

        [css-grid] Add parsing support for <auto-repeat> syntax
        https://bugs.webkit.org/show_bug.cgi?id=155583

        Reviewed by Antti Koivisto.

        * fast/css-grid-layout/grid-element-auto-repeat-get-set-expected.txt: Added.
        * fast/css-grid-layout/grid-element-auto-repeat-get-set.html: Added.

2016-04-12  Alex Christensen  <achristensen@webkit.org>

        Remove failing assertion in ANGLE
        https://bugs.webkit.org/show_bug.cgi?id=156485

        Reviewed by Dean Jackson.

        * fast/canvas/webgl/fragment-shader-assertion-expected.txt: Added.
        * fast/canvas/webgl/fragment-shader-assertion.html: Added.

2016-04-11  Brent Fulgham  <bfulgham@apple.com>

        Use WeakPtrs to avoid using deallocated Widgets and ScrollableAreas
        https://bugs.webkit.org/show_bug.cgi?id=156420
        <rdar://problem/25637378>

        Reviewed by Darin Adler.

        * fast/events/wheel-event-destroys-overflow-expected.txt: Added.
        * fast/events/wheel-event-destroys-overflow.html: Added.
        * platform/ios-simulator/TestExpectations: Skip wheel-event test on iOS.

2016-04-11  Dean Jackson  <dino@apple.com>

        putImageData needs to premultiply input
        https://bugs.webkit.org/show_bug.cgi?id=156488
        <rdar://problem/25672675>

        Reviewed by Zalan Bujtas.

        Tests that putImageData is taking unmultiplied data,
        premultiplying it, then copying into the backing store.

        * fast/canvas/putImageData-unmultiplied-expected.html: Added.
        * fast/canvas/putImageData-unmultiplied.html: Added.

2016-04-11  Jiewen Tan  <jiewen_tan@apple.com>

        Unskip imported/w3c/web-platform-tests/IndexedDB/idbindex-multientry-big.htm
        https://bugs.webkit.org/show_bug.cgi?id=156480

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-04-11  Jiewen Tan  <jiewen_tan@apple.com>

        Skip imported/w3c/web-platform-tests/IndexedDB/idbindex-multientry-big.htm on ios-simulators
        https://bugs.webkit.org/show_bug.cgi?id=156480

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-04-11  Jiewen Tan  <jiewen_tan@apple.com>

        fast/loader/opaque-base-url.html crashing during mac and ios debug tests
        https://bugs.webkit.org/show_bug.cgi?id=156179
        <rdar://problem/25507719>

        Reviewed by Ryosuke Niwa.

        * fast/loader/iframe-src-invalid-url-expected.txt: Added.
        * fast/loader/iframe-src-invalid-url.html: Added.

2016-04-11  Said Abou-Hallawa  <sabouhallawa@apple,com>

        Merge CG ImageSource and non CG ImageSource implementation in one file
        https://bugs.webkit.org/show_bug.cgi?id=155456

        Reviewed by Darin Adler.
        
        Add a test for image sub-sampling. The image subsampling is enabled by
        default for iOS platform only. But it can be explicitly enabled through
        the setting ImageSubsamplingEnabled.

        * fast/images/image-subsampling-expected.html: Added.
        * fast/images/image-subsampling.html: Added.

2016-04-11  Zalan Bujtas  <zalan@apple.com>

        REGRESSION (r193857): Text selection causes text to disappear.
        https://bugs.webkit.org/show_bug.cgi?id=156448
        rdar://problem/25578952

        Reviewed by Simon Fraser.

        Apparently when the end position of the selection range is smaller than the start position, we need
        to repaint the entire text as it indicates selection clearing.

        * fast/text/text-disappear-on-deselect-expected.html: Added.
        * fast/text/text-disappear-on-deselect.html: Added.

2016-04-11  Chris Dumez  <cdumez@apple.com>

        DOMTokenList.contains() should not throw
        https://bugs.webkit.org/show_bug.cgi?id=156453

        Reviewed by Ryosuke Niwa.

        Update existing layout tests now that DOMTokenList.contains() no longer
        throws when called with an invalid token.

        * fast/dom/HTMLElement/class-list-expected.txt:
        * fast/dom/HTMLElement/class-list-quirks-expected.txt:
        * fast/dom/HTMLElement/script-tests/class-list.js:
        (shouldThrowDOMException): Deleted.
        * fast/dom/HTMLOutputElement/dom-settable-token-list-expected.txt:
        * fast/dom/HTMLOutputElement/script-tests/dom-settable-token-list.js:
        (shouldThrowDOMException): Deleted.
        * fast/dom/rel-list-expected.txt:
        * fast/dom/rel-list.html:

2016-04-11  Frederic Wang  <fwang@igalia.com>

        Refactor RenderMathMLFraction layout to avoid using flexbox
        https://bugs.webkit.org/show_bug.cgi?id=153917

        Reviewed by Sergio Villar Senin.

        * TestExpectations: No longer skip mathml/presentation/fractions-positions.html
        * mathml/opentype/fraction-line-expected.html: Added. New test to verify AxisHeight and
        FractionRuleThickness parameters.
        * mathml/opentype/fraction-line.html: Added. New test to verify axis height and rule
        thickness parameters.
        * mathml/presentation/fractions-linethickness-expected.html: Adjust the test to be sure that
        the default rule thickness is 1px.
        * mathml/presentation/fractions-linethickness.html: Adjust the test to be sure that the
        default rule thickness is 1px.
        * platform/gtk/mathml/presentation/roots-expected.txt: Update reference to take into account
        changes in the render tree.
        * platform/ios-simulator/mathml/presentation/roots-expected.txt: Ditto
        * platform/mac/TestExpectations: Mark fraction-line and fractions-linethickness as
        possibly failing since these tests require Latin Modern Math to work reliably.
        * platform/ios-simulator/TestExpectations: Ditto

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

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

        broke 300 tests (Requested by mcatanzaro on #webkit).

        Reverted changeset:

        "Merge CG ImageSource and non CG ImageSource implementation in
        one file"
        https://bugs.webkit.org/show_bug.cgi?id=155456
        http://trac.webkit.org/changeset/199290

2016-04-11  Frederic Wang  <fwang@igalia.com>

        Refactor RenderMathMLUnderOver layout functions to avoid using flexbox
        https://bugs.webkit.org/show_bug.cgi?id=153742

        Reviewed by Sergio Villar Senin.

        Apply some small adjustments to the expectations of MathML tests after
        the refactoring of RenderMathMLUnderOver. We also add a test for
        non-stretchy horizontal operators in underover.

        * platform/gtk/mathml/opentype/horizontal-expected.png:
        * platform/gtk/mathml/opentype/horizontal-expected.txt:
        * platform/gtk/mathml/opentype/opentype-stretchy-horizontal-expected.png:
        * platform/gtk/mathml/opentype/opentype-stretchy-horizontal-expected.txt:
        * platform/mac/mathml/opentype/opentype-stretchy-horizontal-expected.png:
        * platform/mac/mathml/opentype/opentype-stretchy-horizontal-expected.txt:
        * mathml/mn-as-list-item-assert.html: Move the test description out of the invalid munderover
        so that it is still displayed.
        * mathml/mn-as-list-item-assert-expected.txt: Update the text expectation.
        * mathml/presentation/underover-nonstretchy-horizontal.html: Ensure that nonstretchy horizontal operators are not stretched in munderover.
        * mathml/presentation/underover-nonstretchy-horizontal-expected.html: Ditto.

2016-04-11  Antti Koivisto  <antti@apple.com>

        Implement functional :host() pseudo class
        https://bugs.webkit.org/show_bug.cgi?id=156397
        <rdar://problem/25621445>

        Reviewed by Darin Adler.

        Enable, fix and expand the test.

        * fast/shadow-dom/css-scoping-shadow-host-functional-rule.html:
        * platform/mac/TestExpectations:

2016-04-11  Said Abou-Hallawa  <sabouhallawa@apple,com>

        Merge CG ImageSource and non CG ImageSource implementation in one file
        https://bugs.webkit.org/show_bug.cgi?id=155456

        Reviewed by Darin Adler.
        
        Add a test for image sub-sampling. The image subsampling is enabled by
        default for iOS platform only. But it can be explicitly enabled through
        the setting ImageSubsamplingEnabled.

        * fast/images/image-subsampling-expected.html: Added.
        * fast/images/image-subsampling.html: Added.

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

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

        Broke Windows build (Requested by ap on #webkit).

        Reverted changeset:

        "Implement functional :host() pseudo class"
        https://bugs.webkit.org/show_bug.cgi?id=156397
        http://trac.webkit.org/changeset/199268

2016-04-09  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] Update another GStreamer test expectation

        Unreviewed.

        * platform/gtk/TestExpectations:

2016-04-09  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] Update some more IndexedDB test expectations.

        Unreviewed.

        * platform/gtk/TestExpectations:

2016-04-09  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] Remove failure expectation from storage/indexeddb/connection-leak.html

        It's skipped in the global TestExpectations, see bug #152643.

        * platform/gtk/TestExpectations:

2016-04-09  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] Gardening unexpected passes and IndexedDB tests.

        Unreviewed gardening.

        * platform/gtk/TestExpectations:

2016-04-09  Antti Koivisto  <antti@apple.com>

        Implement functional :host() pseudo class
        https://bugs.webkit.org/show_bug.cgi?id=156397
        <rdar://problem/25621445>

        Reviewed by Darin Adler.

        Enable, fix and expand the test.

        * fast/shadow-dom/css-scoping-shadow-host-functional-rule.html:
        * platform/mac/TestExpectations:

2016-04-07  Darin Adler  <darin@apple.com>

        Improve IDL support for object arguments that are neither optional nor nullable
        https://bugs.webkit.org/show_bug.cgi?id=156149

        Reviewed by Chris Dumez.

        * fast/canvas/canvas-path-addPath-expected.txt: Updated expected result to expect
        TypeError rather than TYPE_MISMATCH_ERR. A progression.
        * fast/text/font-face-set-javascript-expected.txt: Ditto.

2016-04-08  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: XHRs and Web Worker scripts are not searchable
        https://bugs.webkit.org/show_bug.cgi?id=154214
        <rdar://problem/24643587>

        Reviewed by Timothy Hatcher.

        * inspector/page/resources/search-script.js: Added.
        * inspector/page/resources/search-stylesheet.css: Added.
        * inspector/page/resources/search-worker.js: Added.
        * inspector/page/resources/search-xhr.txt: Added.
        * inspector/page/searchInResources-expected.txt: Added.
        * inspector/page/searchInResources.html: Added.
        Test for the Page domain's search commands.

2016-04-08  Joanmarie Diggs  <jdiggs@igalia.com>

        AX: "AXLandmarkApplication" is an inappropriate subrole for ARIA "application" since it's no longer a landmark
        https://bugs.webkit.org/show_bug.cgi?id=155403

        Reviewed by Chris Fleizach.

        The new subrole is AXWebApplication and the new role description is "web application".
        As part of the fix, the WebCore AccessibilityRole for ARIA's "application" role was
        renamed from LandmarkApplicationRole to WebApplicationRole.

        The roles-exposed.html and aria-grouping-roles.html test expectations were also updated.

        * accessibility/mac/aria-grouping-roles-expected.txt:
        * accessibility/mac/aria-grouping-roles.html:
        * platform/mac/accessibility/roles-exposed-expected.txt:

2016-04-08  Zalan Bujtas  <zalan@apple.com>

        Focus ring drawn at incorrect location on image map with CSS transform.
        https://bugs.webkit.org/show_bug.cgi?id=143527
        <rdar://problem/21908735>

        Reviewed by Simon Fraser.

        Implement pathForFocusRing for HTMLAreaElement.

        * fast/images/image-map-outline-in-positioned-container-expected.html: Added.
        * fast/images/image-map-outline-in-positioned-container.html: Added.
        * fast/images/image-map-outline-with-paint-root-offset-expected.html: Added.
        * fast/images/image-map-outline-with-paint-root-offset.html: Added.
        * fast/images/image-map-outline-with-scale-transform-expected.html: Added.
        * fast/images/image-map-outline-with-scale-transform.html: Added.

2016-04-08  Filip Pizlo  <fpizlo@apple.com>

        Add IC support for arguments.length
        https://bugs.webkit.org/show_bug.cgi?id=156389

        Reviewed by Geoffrey Garen.

        * js/regress/direct-arguments-length-expected.txt: Added.
        * js/regress/direct-arguments-length.html: Added.
        * js/regress/direct-arguments-overridden-length-expected.txt: Added.
        * js/regress/direct-arguments-overridden-length.html: Added.
        * js/regress/direct-arguments-possibly-overridden-length-expected.txt: Added.
        * js/regress/direct-arguments-possibly-overridden-length.html: Added.
        * js/regress/scoped-arguments-length-expected.txt: Added.
        * js/regress/scoped-arguments-length.html: Added.
        * js/regress/scoped-arguments-overridden-length-expected.txt: Added.
        * js/regress/scoped-arguments-overridden-length.html: Added.
        * js/regress/scoped-arguments-possibly-overridden-length-expected.txt: Added.
        * js/regress/scoped-arguments-possibly-overridden-length.html: Added.
        * js/regress/script-tests/direct-arguments-length.js: Added.
        (args):
        * js/regress/script-tests/direct-arguments-overridden-length.js: Added.
        (args):
        * js/regress/script-tests/direct-arguments-possibly-overridden-length.js: Added.
        (args1):
        (args2):
        * js/regress/script-tests/scoped-arguments-length.js: Added.
        (args):
        * js/regress/script-tests/scoped-arguments-overridden-length.js: Added.
        (args):
        * js/regress/script-tests/scoped-arguments-possibly-overridden-length.js: Added.
        (args1):
        (args2):

2016-04-08  Joseph Pecoraro  <pecoraro@apple.com>

        Redefining a method of the same name hits an assertion
        https://bugs.webkit.org/show_bug.cgi?id=144258

        Reviewed by Ryosuke Niwa.

        * TestExpectations:
        * js/script-tests/class-syntax-semicolon.js:
        This test no longer asserts.

2016-04-08  Joanmarie Diggs  <jdiggs@igalia.com>

        AX: [ATK] Crash getting text under element in CSS table
        https://bugs.webkit.org/show_bug.cgi?id=156328

        Reviewed by Chris Fleizach.

        While this crash is currently seen only for ATK, there is nothing to
        prevent another port from attempting to get all the text under a CSS
        RenderTable. Hence the shared test.

        * accessibility/generated-content-with-display-table-crash.html: Added.
        * platform/gtk/accessibility/generated-content-with-display-table-crash-expected.txt: Added.
        * platform/mac/accessibility/generated-content-with-display-table-crash-expected.txt: Added.

2016-04-08  Matt Baker  <mattbaker@apple.com>

        Web Inspector: Quick Open fails to match pattern "bB" in file "abBc"
        https://bugs.webkit.org/show_bug.cgi?id=156398

        Reviewed by Timothy Hatcher.

        * inspector/unit-tests/resource-query-controller-expected.txt:
        * inspector/unit-tests/resource-query-controller.html:
        Test that two repeated characters in the search string are correctly
        matched when the first character is lowercase and the second is uppercase.

2016-04-08  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        Testharness-based tests that time out should be able to produce a detailled output
        https://bugs.webkit.org/show_bug.cgi?id=145313

        Reviewed by Xabier Rodriguez-Calvar.

        * TestExpectations: Removed TIMEOUT for some tests for which testharness.timeout will be called just before WTR times out.
        * platform/gtk/imported/w3c/web-platform-tests/fetch/api/request/request-cache-expected.txt: GTK specific baseline.
        * resources/testharnessreport.js:
        (add_completion_callback): Improving error logging message. Dumping of the tests status in error case.

2016-04-08  Manuel Rego Casasnovas  <rego@igalia.com>

        [css-grid] Fix positioned items with grid gaps
        https://bugs.webkit.org/show_bug.cgi?id=156288

        Reviewed by Darin Adler.

        Added new tests checking the right behavior.

        * fast/css-grid-layout/grid-positioned-items-gaps-expected.txt: Added.
        * fast/css-grid-layout/grid-positioned-items-gaps-rtl-expected.txt: Added.
        * fast/css-grid-layout/grid-positioned-items-gaps-rtl.html: Added.
        * fast/css-grid-layout/grid-positioned-items-gaps.html: Added.

2016-04-08  John Wilander  <wilander@apple.com>

        CSP: Block XHR when calling XMLHttpRequest.send() and throw network error.
        https://bugs.webkit.org/show_bug.cgi?id=153598
        <rdar://problem/24391483>

        Reviewed by Darin Adler.

        * fast/workers/resources/worker-inherits-csp-blocks-xhr.js:
        (catch):
        * fast/workers/worker-inherits-csp-blocks-xhr-expected.txt:
            Changed expected error from DOMException.SECURITY_ERR to DOMException.NETWORK_ERR.
        * http/tests/security/contentSecurityPolicy/connect-src-xmlhttprequest-blocked-expected.txt:
        * http/tests/security/contentSecurityPolicy/connect-src-xmlhttprequest-blocked.html:
            Now tests that XMLHttpRequest.send() is blocked if the URL voilates the connect-src directive in CSP.
        * http/tests/security/contentSecurityPolicy/resources/worker.php:
            Added two additional calls to XMLHttpRequest.send() and switched to receiving an error event to make
            existing tests work with code changes.
        * http/tests/security/contentSecurityPolicy/source-list-parsing-malformed-meta.html:
            Added an additional call to XMLHttpRequest.send() and switched to receiving an error event to make 
            existing test work with code changes.
        * http/tests/security/isolatedWorld/bypass-main-world-csp-for-xhr-expected.txt:
        * http/tests/security/isolatedWorld/bypass-main-world-csp-for-xhr.html:
            Added an additional call to XMLHttpRequest.send() and switched to receiving an error event to make 
            existing tests work with code changes.
            Refactored test mechnism with additional parameters to cover synchronous/asynchronous as well as 
            same-origin/cross-origin in isolated worlds.

2016-04-07  Darin Adler  <darin@apple.com>

        FontFaceSet binding does not handle null correctly
        https://bugs.webkit.org/show_bug.cgi?id=156141

        Reviewed by Youenn Fablet.

        * fast/text/font-face-set-javascript-expected.txt: Added expected results for new tests.
        * fast/text/font-face-set-javascript.html: Added tests for handling of null, also added tests for
        the has function.

2016-04-07  Filip Pizlo  <fpizlo@apple.com>

        Implementing caching transition puts that need to reallocate with indexing storage
        https://bugs.webkit.org/show_bug.cgi?id=130914

        Reviewed by Saam Barati.

        * js/regress/put-by-id-transition-with-indexing-header-expected.txt: Added.
        * js/regress/put-by-id-transition-with-indexing-header.html: Added.
        * js/regress/script-tests/put-by-id-transition-with-indexing-header.js: Added.
        (allocate):

2016-04-07  Ada Chan  <adachan@apple.com>

        Roll out the css change in mediaControlsApple.css that has been causing assertions in layout for multiple tests
        https://bugs.webkit.org/show_bug.cgi?id=156381

        Rubber-stamped by Alexey Proskuryakov.

        * platform/mac/TestExpectations:
        * platform/mac/media/media-document-audio-repaint-expected.txt:
        * platform/mac/media/video-zoom-controls-expected.txt:

2016-04-07  Jiewen Tan  <jiewen_tan@apple.com>

        Unreviewed, rolling out r199199.

        Revision breaks layout tests

        Reverted changeset:

        "fast/loader/opaque-base-url.html crashing during mac and ios
        debug tests"
        https://bugs.webkit.org/show_bug.cgi?id=156179
        http://trac.webkit.org/changeset/199199

2016-04-07  Simon Fraser  <simon.fraser@apple.com>

        Make it possible to test effect of view exposed rect on tiled backing
        https://bugs.webkit.org/show_bug.cgi?id=156365

        Reviewed by Tim Horton.

        Tests for tile size and tile coverage when we have an exposed view rect.

        * tiled-drawing/tile-coverage-view-exposed-rect-expected.txt: Added.
        * tiled-drawing/tile-coverage-view-exposed-rect.html: Added.
        * tiled-drawing/tile-size-view-exposed-rect-expected.txt: Added.
        * tiled-drawing/tile-size-view-exposed-rect.html: Added.

2016-04-07  Jiewen Tan  <jiewen_tan@apple.com>

        fast/loader/opaque-base-url.html crashing during mac and ios debug tests
        https://bugs.webkit.org/show_bug.cgi?id=156179
        <rdar://problem/25507719>

        Reviewed by Andy Estes.

        * TestExpectations:
        * fast/url/data-uri-based-urls-expected.txt: Added.
        * fast/url/data-uri-based-urls.html: Added.
        * fast/url/relative-expected.txt:

2016-04-07  Ada Chan  <adachan@apple.com>

        Skip a couple more tests that are asserting in FrameView::scheduleRelayoutOfSubtree().

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-04-07  Jiewen Tan  <jiewen_tan@apple.com>

        Mark http/tests/cache/disk-cache/disk-cache-validation-back-navigation-policy.html as timeout in ios-simulator-wk2
        https://bugs.webkit.org/show_bug.cgi?id=149087

        Unreviewed, test gardening.

        * platform/ios-simulator-wk2/TestExpectations:

2016-04-07  Alexey Proskuryakov  <ap@apple.com>

        Test expectation gardening for
        Assertion failure in MessagePort::contextDestroyed in http/tests/security/MessagePort/event-listener-context.html,
        usually attributed to later tests
        https://bugs.webkit.org/show_bug.cgi?id=94458

        http/tests/security/MessagePort/event-listener-context.html is the only culprit,
        so it should be skipped everywhere, and subsequent tests shouldn't be marked.

        * TestExpectations:
        * platform/ios-simulator/TestExpectations:
        * platform/mac/TestExpectations:

2016-04-07  Brent Fulgham  <bfulgham@apple.com>

        Wheel event callback removing the window causes crash in WebCore.
        https://bugs.webkit.org/show_bug.cgi?id=150871
        <rdar://problem/23418283>

        Reviewed by Simon Fraser.

        * fast/events/wheel-event-destroys-frame-expected.txt: Added.
        * fast/events/wheel-event-destroys-frame.html: Added.
        * platform/ios-simulator/TestExpectations: Skip wheel-event test on iOS.

2016-04-07  Saam barati  <sbarati@apple.com>

        Initial implementation of annex b.3.3 behavior was incorrect
        https://bugs.webkit.org/show_bug.cgi?id=156276

        Reviewed by Keith Miller.

        * js/function-declarations-in-switch-statement-expected.txt:
        * js/script-tests/function-declarations-in-switch-statement.js:

2016-04-06  Ada Chan  <adachan@apple.com>

        Rename TextTrackRepresentationiOS to TextTrackRepresentationCocoa and enable on Mac
        https://bugs.webkit.org/show_bug.cgi?id=156245

        Reviewed by Eric Carlson.

        * platform/mac/TestExpectations:
        Skip some tests with assertions after changes in MediaControlsApple.css.

        * platform/mac/media/media-document-audio-repaint-expected.txt:
        * platform/mac/media/video-zoom-controls-expected.txt:
        Rebaseline some tests after changes in MediaControlsApple.css.

2016-04-07  Daniel Bates  <dabates@apple.com>

        CSP: Remove tests for unimplemented directive referrer
        https://bugs.webkit.org/show_bug.cgi?id=156353

        Reviewed by Andy Estes.

        The Content Security Policy directive referrer was removed from the Content Security Policy Level 2 spec.,
        <https://w3c.github.io/webappsec-csp/2/> (Editor's Draft, 29 August 2015). It was never implemented.
        The functionality provided by this directive has been incorporated into its own meta tag and is covered
        by the Referrer Policy spec., <https://w3c.github.io/webappsec-referrer-policy/>.

        * http/tests/security/contentSecurityPolicy/1.1/referrer-always-http-http-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-always-http-http.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-always-http-https-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-always-http-https.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-always-https-http-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-always-https-http.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-always-https-https-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-always-https-https.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-default-http-http-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-default-http-http.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-default-http-https-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-default-http-https.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-default-https-http-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-default-https-http.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-default-https-https-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-default-https-https.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-empty-http-http-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-empty-http-http.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-empty-http-https-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-empty-http-https.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-empty-https-http-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-empty-https-http.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-empty-https-https-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-empty-https-https.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-invalid-http-http-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-invalid-http-http.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-invalid-http-https-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-invalid-http-https.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-invalid-https-http-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-invalid-https-http.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-invalid-https-https-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-invalid-https-https.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-never-http-http-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-never-http-http.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-never-http-https-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-never-http-https.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-never-https-http-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-never-https-http.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-never-https-https-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-never-https-https.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-origin-http-http-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-origin-http-http.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-origin-http-https-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-origin-http-https.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-origin-https-http-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-origin-https-http.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-origin-https-https-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-origin-https-https.html: Removed.
        * http/tests/security/contentSecurityPolicy/resources/referrer-test-endpoint.php: Removed.
        * http/tests/security/contentSecurityPolicy/resources/referrer-test.js: Removed.
        * http/tests/security/contentSecurityPolicy/resources/referrer-test.php: Removed.

2016-04-07  Joseph Pecoraro  <pecoraro@apple.com>

        Unreviewed follow-up fix to r199168. Add missing newline in expected output.

        * inspector/codemirror/resources/prettyprinting/javascript-tests/single-statement-blocks-expected.js:

2016-04-07  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Improve JavaScript pretty printing
        https://bugs.webkit.org/show_bug.cgi?id=156178
        <rdar://problem/25535719>

        Reviewed by Timothy Hatcher.

        Expand the JavaScript formatting tests.

        * inspector/codemirror/resources/prettyprinting/javascript-tests/single-statement-blocks-expected.js:
        Update output now that the builder removes extra trailing whitespace automatically.

        * inspector/codemirror/resources/prettyprinting/utilities.js:
        Update due to simplified construction.

        * inspector/formatting/formatting-javascript-expected.txt: Added.
        * inspector/formatting/formatting-javascript.html: Added.
        * inspector/formatting/resources/javascript-tests/arrow-functions-expected.js: Added.
        * inspector/formatting/resources/javascript-tests/arrow-functions.js: Added.
        * inspector/formatting/resources/javascript-tests/classes-expected.js: Added.
        * inspector/formatting/resources/javascript-tests/classes.js: Added.
        * inspector/formatting/resources/javascript-tests/comments-and-preserve-newlines-expected.js: Added.
        * inspector/formatting/resources/javascript-tests/comments-and-preserve-newlines.js: Added.
        * inspector/formatting/resources/javascript-tests/comments-only-expected.js: Added.
        * inspector/formatting/resources/javascript-tests/comments-only.js: Added.
        * inspector/formatting/resources/javascript-tests/do-while-statement-expected.js: Added.
        * inspector/formatting/resources/javascript-tests/do-while-statement.js: Added.
        * inspector/formatting/resources/javascript-tests/for-statements-expected.js: Added.
        * inspector/formatting/resources/javascript-tests/for-statements.js: Added.
        * inspector/formatting/resources/javascript-tests/functions-expected.js: Added.
        * inspector/formatting/resources/javascript-tests/functions.js: Added.
        * inspector/formatting/resources/javascript-tests/generators-expected.js: Added.
        * inspector/formatting/resources/javascript-tests/generators.js: Added.
        * inspector/formatting/resources/javascript-tests/if-statement-expected.js: Added.
        * inspector/formatting/resources/javascript-tests/if-statement.js: Added.
        * inspector/formatting/resources/javascript-tests/label-break-continue-block-expected.js: Added.
        * inspector/formatting/resources/javascript-tests/label-break-continue-block.js: Added.
        * inspector/formatting/resources/javascript-tests/logic-expressions-expected.js: Added.
        * inspector/formatting/resources/javascript-tests/logic-expressions.js: Added.
        * inspector/formatting/resources/javascript-tests/new-expression-expected.js: Added.
        * inspector/formatting/resources/javascript-tests/new-expression.js: Added.
        * inspector/formatting/resources/javascript-tests/object-array-literal-expected.js: Added.
        * inspector/formatting/resources/javascript-tests/object-array-literal.js: Added.
        * inspector/formatting/resources/javascript-tests/return-statement-expected.js: Added.
        * inspector/formatting/resources/javascript-tests/return-statement.js: Added.
        * inspector/formatting/resources/javascript-tests/sample-jquery-expected.js: Added.
        * inspector/formatting/resources/javascript-tests/sample-jquery.js: Added.
        * inspector/formatting/resources/javascript-tests/sample-normal-utilities-expected.js: Added.
        * inspector/formatting/resources/javascript-tests/sample-normal-utilities.js: Added.
        * inspector/formatting/resources/javascript-tests/sample-webinspector-object-expected.js: Added.
        * inspector/formatting/resources/javascript-tests/sample-webinspector-object.js: Added.
        * inspector/formatting/resources/javascript-tests/switch-case-default-expected.js: Added.
        * inspector/formatting/resources/javascript-tests/switch-case-default.js: Added.
        * inspector/formatting/resources/javascript-tests/ternary-expressions-expected.js: Added.
        * inspector/formatting/resources/javascript-tests/ternary-expressions.js: Added.
        * inspector/formatting/resources/javascript-tests/throw-statement-expected.js: Added.
        * inspector/formatting/resources/javascript-tests/throw-statement.js: Added.
        * inspector/formatting/resources/javascript-tests/try-catch-finally-statements-expected.js: Added.
        * inspector/formatting/resources/javascript-tests/try-catch-finally-statements.js: Added.
        * inspector/formatting/resources/javascript-tests/unary-binary-expressions-expected.js: Added.
        * inspector/formatting/resources/javascript-tests/unary-binary-expressions.js: Added.
        * inspector/formatting/resources/javascript-tests/variable-declaration-expected.js: Added.
        * inspector/formatting/resources/javascript-tests/variable-declaration.js: Added.
        * inspector/formatting/resources/javascript-tests/while-statement-expected.js: Added.
        * inspector/formatting/resources/javascript-tests/while-statement.js: Added.
        * inspector/formatting/resources/javascript-tests/with-statement-expected.js: Added.
        * inspector/formatting/resources/javascript-tests/with-statement.js: Added.
        * inspector/formatting/resources/utilities.js: Added.
        Expanded test coverage for the new formatter.

2016-04-07  Jiewen Tan  <jiewen_tan@apple.com>

        Marking storage/indexeddb/modern/autoincrement-abort-private.html as flaky on Macs
        https://bugs.webkit.org/show_bug.cgi?id=156351

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

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

        Unreviewed, rolling out r199128 and r199141.
        https://bugs.webkit.org/show_bug.cgi?id=156348

        Causes crashes on multiple webpages (Requested by keith_mi_ on
        #webkit).

        Reverted changesets:

        "[ES6] Add support for Symbol.isConcatSpreadable."
        https://bugs.webkit.org/show_bug.cgi?id=155351
        http://trac.webkit.org/changeset/199128

        "Unreviewed, uncomment accidentally commented line in test."
        http://trac.webkit.org/changeset/199141

2016-04-07  Daniel Bates  <dabates@apple.com>

        CSP: Should only honor CSP policy delivered in meta tag that is a descendent of <head>
        https://bugs.webkit.org/show_bug.cgi?id=59858
        <rdar://problem/25603538>

        Reviewed by Brent Fulgham.

        Add tests to ensure that we ignore the meta tags for Content-Security-Policy, Content-Security-Policy-Report-Only,
        X-WebKit-CSP, and X-WebKit-CSP-Report-Only if it is not a descendent of <head>.

        * http/tests/security/contentSecurityPolicy/meta-tag-ignored-if-not-in-head-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/meta-tag-ignored-if-not-in-head.html: Added.
        * http/tests/security/contentSecurityPolicy/meta-tag-ignored-if-not-in-head2-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/meta-tag-ignored-if-not-in-head2.html: Added.
        * http/tests/security/contentSecurityPolicy/report-only-meta-tag-ignored-if-not-in-head-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/report-only-meta-tag-ignored-if-not-in-head.html: Added.
        * http/tests/security/contentSecurityPolicy/report-only-meta-tag-ignored-if-not-in-head2-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/report-only-meta-tag-ignored-if-not-in-head2.html: Added.

2016-04-06  Sam Weinig  <sam@webkit.org>

        window.Crypto is missing
        <rdar://problem/25584034>
        https://bugs.webkit.org/show_bug.cgi?id=156307

        Reviewed by Joseph Pecoraro.

        * js/dom/global-constructors-attributes-expected.txt:
        * platform/efl/js/dom/global-constructors-attributes-expected.txt:
        * platform/gtk/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac/js/dom/global-constructors-attributes-expected.txt:
        * platform/win/js/dom/global-constructors-attributes-expected.txt:
        Update for the new Crypto constructor.

2016-04-07  Zalan Bujtas  <zalan@apple.com>

        REGRESSION (197987): Ingredient lists on smittenkitchen.com are full justified instead of left justified.
        https://bugs.webkit.org/show_bug.cgi?id=156326
        <rdar://problem/25519393>

        Reviewed by Antti Koivisto.

        According to the spec (https://drafts.csswg.org/css-text-3/#text-align-property) 
        unless otherwise specified by text-align-last, the last line before
        a forced break or the end of the block is start-aligned.

        In this patch we check if a forced break is present and we apply text alignment accordingly.

        Test: fast/css3-text/css3-text-justify/text-justify-last-line-simple-line-layout.html

        * fast/css3-text/css3-text-justify/text-justify-last-line-simple-line-layout-expected.html: Added.
        * fast/css3-text/css3-text-justify/text-justify-last-line-simple-line-layout.html: Added.

2016-04-07  Antti Koivisto  <antti@apple.com>

        Shadow DOM: Implement display: contents for slots
        https://bugs.webkit.org/show_bug.cgi?id=149439
        <rdar://problem/22731922>

        Reviewed by Ryosuke Niwa.

        * platform/mac/TestExpectations:

        Enable fast/shadow-dom/css-scoping-shadow-slot-display-override.html, the test for overriding slot display value.

2016-04-07  Sergio Villar Senin  <svillar@igalia.com>

        [css-grid] Content box incorrectly used as non-auto min-height
        https://bugs.webkit.org/show_bug.cgi?id=155946

        Reviewed by Antti Koivisto.

        * fast/css-grid-layout/min-height-border-box-expected.txt: Added.
        * fast/css-grid-layout/min-height-border-box.html: Added.

2016-04-07  Antti Koivisto  <antti@apple.com>

        Reverting previous due to bad LayoutTest ChangeLog.

        * platform/mac/TestExpectations:

2016-04-06  Myles C. Maxfield  <mmaxfield@apple.com>

        REGRESSION (r188591): thingiverse.com direct messaging UI is not rendered properly
        https://bugs.webkit.org/show_bug.cgi?id=156241
        <rdar://problem/25262213>

        Reviewed by Simon Fraser.

        * fast/text/zero-sized-fonts-expected.txt: Added.
        * fast/text/zero-sized-fonts.html: Added.

2016-04-06  Matt Baker  <mattbaker@apple.com>

        Web Inspector: Improve filtering in OpenResourceDialog
        https://bugs.webkit.org/show_bug.cgi?id=155324
        <rdar://problem/25094504>

        Reviewed by Joseph Pecoraro.

        Add test coverage for ResourceQueryController.

        * inspector/unit-tests/resource-query-controller-expected.txt: Added.
        * inspector/unit-tests/resource-query-controller.html: Added.

2016-04-06  Saam barati  <sbarati@apple.com>

        jsc-layout-tests.yaml/js/script-tests/regress-141098.js failing on Yosemite Debug after r198989
        https://bugs.webkit.org/show_bug.cgi?id=156187

        Reviewed by Keith Miller.

        * js/script-tests/regress-141098.js:

2016-04-06  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] Belatedly rebaseline several test expectations after r196244
        
        Unreviewed

        * platform/gtk/css3/unicode-bidi-isolate-basic-expected.txt:
        * platform/gtk/fast/block/positioning/auto/vertical-rl/007-expected.txt:
        * platform/gtk/fast/block/positioning/vertical-rl/fixed-positioning-expected.txt:
        * platform/gtk/fast/borders/border-antialiasing-expected.txt:
        * platform/gtk/fast/clip/001-expected.txt:
        * platform/gtk/fast/clip/013-expected.txt:
        * platform/gtk/fast/clip/014-expected.txt:
        * platform/gtk/fast/clip/016-expected.txt:
        * platform/gtk/fast/clip/outline-overflowClip-expected.txt:
        * platform/gtk/fast/css/clip-zooming-expected.txt:
        * platform/gtk/fast/forms/validation-message-appearance-expected.txt:
        * platform/gtk/fast/line-grid/line-grid-inside-columns-expected.txt:
        * platform/gtk/fast/line-grid/line-grid-into-columns-expected.txt:
        * platform/gtk/fast/lists/scrolled-marker-paint-expected.txt:
        * platform/gtk/fast/multicol/client-rects-expected.txt:
        * platform/gtk/fast/multicol/column-break-with-balancing-expected.txt:
        * platform/gtk/fast/multicol/column-rules-expected.txt:
        * platform/gtk/fast/multicol/column-rules-stacking-expected.txt:
        * platform/gtk/fast/multicol/columns-shorthand-parsing-expected.txt:
        * platform/gtk/fast/multicol/float-paginate-complex-expected.txt:
        * platform/gtk/fast/multicol/float-paginate-empty-lines-expected.txt:
        * platform/gtk/fast/multicol/float-paginate-expected.txt:
        * platform/gtk/fast/multicol/layers-in-multicol-expected.txt:
        * platform/gtk/fast/multicol/layers-split-across-columns-expected.txt:
        * platform/gtk/fast/multicol/max-height-columns-block-expected.txt:
        * platform/gtk/fast/multicol/nested-columns-expected.txt:
        * platform/gtk/fast/multicol/newmulticol/client-rects-expected.txt:
        * platform/gtk/fast/multicol/overflow-across-columns-expected.txt:
        * platform/gtk/fast/multicol/overflow-across-columns-percent-height-expected.txt:
        * platform/gtk/fast/multicol/overflow-unsplittable-expected.txt:
        * platform/gtk/fast/multicol/paginate-block-replaced-expected.txt:
        * platform/gtk/fast/multicol/pagination/BottomToTop-bt-expected.txt:
        * platform/gtk/fast/multicol/pagination/BottomToTop-lr-expected.txt:
        * platform/gtk/fast/multicol/pagination/BottomToTop-rl-expected.txt:
        * platform/gtk/fast/multicol/pagination/BottomToTop-tb-expected.txt:
        * platform/gtk/fast/multicol/pagination/LeftToRight-bt-expected.txt:
        * platform/gtk/fast/multicol/pagination/LeftToRight-rl-expected.txt:
        * platform/gtk/fast/multicol/pagination/LeftToRight-tb-expected.txt:
        * platform/gtk/fast/multicol/pagination/RightToLeft-bt-expected.txt:
        * platform/gtk/fast/multicol/pagination/RightToLeft-lr-expected.txt:
        * platform/gtk/fast/multicol/pagination/RightToLeft-rl-dynamic-expected.txt:
        * platform/gtk/fast/multicol/pagination/RightToLeft-rl-expected.txt:
        * platform/gtk/fast/multicol/pagination/RightToLeft-tb-expected.txt:
        * platform/gtk/fast/multicol/pagination/TopToBottom-bt-expected.txt:
        * platform/gtk/fast/multicol/pagination/TopToBottom-lr-expected.txt:
        * platform/gtk/fast/multicol/pagination/TopToBottom-rl-expected.txt:
        * platform/gtk/fast/multicol/positive-leading-expected.txt:
        * platform/gtk/fast/multicol/scrolling-column-rules-expected.txt:
        * platform/gtk/fast/multicol/span/anonymous-style-inheritance-expected.txt:
        * platform/gtk/fast/multicol/span/span-as-immediate-child-complex-splitting-expected.txt:
        * platform/gtk/fast/multicol/span/span-as-immediate-child-property-removal-expected.txt:
        * platform/gtk/fast/multicol/span/span-as-immediate-columns-child-removal-expected.txt:
        * platform/gtk/fast/multicol/span/span-as-nested-columns-child-dynamic-expected.txt:
        * platform/gtk/fast/multicol/span/span-as-nested-columns-child-expected.txt:
        * platform/gtk/fast/multicol/span/span-margin-collapsing-expected.txt:
        * platform/gtk/fast/multicol/table-vertical-align-expected.txt:
        * platform/gtk/fast/multicol/tall-image-behavior-expected.txt:
        * platform/gtk/fast/multicol/vertical-lr/column-break-with-balancing-expected.txt:
        * platform/gtk/fast/multicol/vertical-lr/column-rules-expected.txt:
        * platform/gtk/fast/multicol/vertical-lr/float-multicol-expected.txt:
        * platform/gtk/fast/multicol/vertical-lr/float-paginate-complex-expected.txt:
        * platform/gtk/fast/multicol/vertical-lr/float-paginate-expected.txt:
        * platform/gtk/fast/multicol/vertical-lr/nested-columns-expected.txt:
        * platform/gtk/fast/multicol/vertical-rl/column-break-with-balancing-expected.txt:
        * platform/gtk/fast/multicol/vertical-rl/column-rules-expected.txt:
        * platform/gtk/fast/multicol/vertical-rl/float-multicol-expected.txt:
        * platform/gtk/fast/multicol/vertical-rl/float-paginate-complex-expected.txt:
        * platform/gtk/fast/multicol/vertical-rl/float-paginate-expected.txt:
        * platform/gtk/fast/multicol/vertical-rl/nested-columns-expected.txt:
        * platform/gtk/fast/overflow/clip-rects-fixed-ancestor-expected.txt:
        * platform/gtk/fast/overflow/float-in-relpositioned-expected.txt:
        * platform/gtk/fast/overflow/overflow-auto-position-absolute-expected.txt:
        * platform/gtk/fast/overflow/overflow-rtl-expected.txt:
        * platform/gtk/fast/overflow/paged-x-div-expected.txt:
        * platform/gtk/fast/overflow/paged-x-div-with-column-gap-expected.txt:
        * platform/gtk/fast/overflow/paged-x-on-root-expected.txt:
        * platform/gtk/fast/overflow/paged-x-with-column-gap-expected.txt:
        * platform/gtk/fast/overflow/paged-y-div-expected.txt:
        * platform/gtk/fast/overflow/scroll-nested-positioned-layer-in-overflow-expected.txt:
        * platform/gtk/fast/regions/repaint/region-painting-via-layout-expected.txt:
        * platform/gtk/fast/repaint/box-shadow-h-expected.txt:
        * platform/gtk/fast/repaint/box-shadow-v-expected.txt:
        * platform/gtk/fast/repaint/layer-outline-expected.txt:
        * platform/gtk/fast/repaint/layer-outline-horizontal-expected.txt:
        * platform/gtk/fast/table/edge-offsets-expected.txt:
        * platform/gtk/fast/transforms/overflow-with-transform-expected.txt:
        * platform/gtk/fast/transforms/rotated-transform-affects-scrolling-1-expected.txt: Added.
        * platform/gtk/fast/transforms/rotated-transform-affects-scrolling-2-expected.txt: Added.
        * platform/gtk/printing/single-line-must-not-be-split-into-two-pages-expected.txt:
        * platform/gtk/scrollbars/scrollbars-on-positioned-content-expected.txt:
        * platform/gtk/svg/custom/getscreenctm-in-scrollable-div-area-nested-expected.txt:
        * platform/gtk/svg/custom/image-rescale-clip-expected.txt:

2016-03-29  Keith Miller  <keith_miller@apple.com>

        [ES6] Add support for Symbol.isConcatSpreadable.
        https://bugs.webkit.org/show_bug.cgi?id=155351

        Reviewed by Saam Barati.

        Fix tests for Symbol.isConcatSpreadable on the Symbol object.

        * js/Object-getOwnPropertyNames-expected.txt:
        * js/dom/array-prototype-properties-expected.txt:
        * js/script-tests/Object-getOwnPropertyNames.js:

2016-04-06  Sam Weinig  <sam@webkit.org>

        window.CSS should be a constructor with static functions
        <rdar://problem/25580516>
        https://bugs.webkit.org/show_bug.cgi?id=156294

        Reviewed by Chris Dumez.

        * platform/efl/js/dom/global-constructors-attributes-expected.txt:
        * platform/gtk/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac/js/dom/global-constructors-attributes-expected.txt:
        * platform/win/js/dom/global-constructors-attributes-expected.txt:
        Update for new CSS constructor property.

2016-04-06  Joanmarie Diggs  <jdiggs@igalia.com>

        REGRESSION(r195463): [GTK] accessibility/roles-computedRoleString.html and accessibility/roles-exposed.html failing
        https://bugs.webkit.org/show_bug.cgi?id=153696

        Reviewed by Chris Fleizach.

        Now that RenderInline style format groups are exposed as InlineRole, there is
        no longer a corresponding computed role for ins, samp, and var elements. Updated
        the roles-computedRoleString.html test and expectations accordingly. Also added
        the now-correct results for Gtk for both of the previously-failing tests.

        * accessibility/roles-computedRoleString-expected.txt: Updated.
        * accessibility/roles-computedRoleString.html: Updated.
        * platform/gtk/TestExpectations: Unskip the two tests which are now passing.
        * platform/gtk/accessibility/roles-computedRoleString-expected.txt: Updated.
        * platform/gtk/accessibility/roles-exposed-expected.txt: Updated.

2016-04-06  Keith Miller  <keith_miller@apple.com>

        RegExp constructor should use Symbol.match and other properties
        https://bugs.webkit.org/show_bug.cgi?id=155873

        Reviewed by Michael Saboff.

        Fix test for new behavior.

        * fast/regex/constructor-expected.txt:
        * fast/regex/script-tests/constructor.js:

2016-04-06  Zalan Bujtas  <zalan@apple.com>

        ASSERTION FAILED: !floatingObject->originatingLine() in WebCore::RenderBlockFlow::linkToEndLineIfNeeded
        https://bugs.webkit.org/show_bug.cgi?id=153001

        Reviewed by Dan Bernstein.

        1. Float boxes are always attached to the line where we see them first.
        2. Float box can only be attached to one line.
        3. RenderBlockFlow can perform partial layout on dirty lines only.

        In certain cases, the last dirty line can "pull up" float boxes from the first clean line.
        It simply means that due to some layout changes on previous lines now we see those floats on this last dirty line first.
        If after placing the float we still find it on the same position, the line below is still considered clean.

        Remove the float box from its original line if the line above already placed it.

        * fast/block/float/float-moves-between-lines-expected.txt: Added.
        * fast/block/float/float-moves-between-lines.html: Added.

2016-04-06  Antti Koivisto  <antti@apple.com>

        REGRESSION(r196629): Messages text size only changes for sending text, conversation text size does not change
        https://bugs.webkit.org/show_bug.cgi?id=156287
        <rdar://problem/24264756>

        Reviewed by Andreas Kling.

        * fast/css/style-invalidation-attribute-change-descendants-expected.txt:
        * fast/css/style-invalidation-attribute-change-descendants.html:

2016-04-06  Manuel Rego Casasnovas  <rego@igalia.com>

        [css-grid] Fix positioned children in RTL
        https://bugs.webkit.org/show_bug.cgi?id=156162

        Reviewed by Sergio Villar Senin.

        Added more RTL cases for the positioned tests.

        * fast/css-grid-layout/absolute-positioning-grid-container-containing-block-expected.txt:
        * fast/css-grid-layout/absolute-positioning-grid-container-containing-block.html:
        * fast/css-grid-layout/grid-positioned-items-background-rtl-expected.html: Added.
        * fast/css-grid-layout/grid-positioned-items-background-rtl.html: Added.
        * fast/css-grid-layout/grid-positioned-items-padding-expected.txt:
        * fast/css-grid-layout/grid-positioned-items-padding.html:
        * fast/css-grid-layout/grid-positioned-items-within-grid-implicit-track-expected.txt:
        * fast/css-grid-layout/grid-positioned-items-within-grid-implicit-track.html:
        * fast/css-grid-layout/grid-sizing-positioned-items-expected.txt:
        * fast/css-grid-layout/grid-sizing-positioned-items.html:

2016-04-06  Antti Koivisto  <antti@apple.com>

        ComposedTreeIterator may crash when first child of shadow root is a comment node
        https://bugs.webkit.org/show_bug.cgi?id=156281

        Reviewed by Andreas Kling.

        * fast/shadow-dom/composed-tree-shadow-subtree-expected.txt:
        * fast/shadow-dom/composed-tree-shadow-subtree.html:

2016-04-05  Chris Dumez  <cdumez@apple.com>

        MessageEvent.source window is incorrect once window has been reified
        https://bugs.webkit.org/show_bug.cgi?id=156227
        <rdar://problem/25545831>

        Reviewed by Mark Lam.

        Add tests that cover using MessageEvent.source Window for messaging
        using postMessage(). There are 2 versions of the test, one where the
        main window is reified and one where it is not. The test that has a
        reified main window was failing because this fix.

        * fast/dom/Window/delete-operations-expected.txt: Added.
        * fast/dom/Window/delete-operations.html: Added.
        Make sure that operations on Window are indeed deletable. Previously,
        it would be impossible to delete postMessage, blur, focus and close.

        * fast/dom/Window/messageevent-source-postmessage-expected.txt: Added.
        * fast/dom/Window/messageevent-source-postmessage-reified-expected.txt: Added.
        * fast/dom/Window/messageevent-source-postmessage-reified.html: Added.
        * fast/dom/Window/messageevent-source-postmessage.html: Added.
        * fast/dom/Window/messageevent-source-postmessage2.html: Added.
        * fast/dom/Window/resources/messageevent-source-postmessage-frame.html: Added.
        * fast/dom/Window/post-message-crash2-expected.txt: Added.
        * fast/dom/Window/post-message-crash2.html: Added.

2016-04-05  Myles C. Maxfield  <mmaxfield@apple.com>

        Test listbox clipping to contents rect
        https://bugs.webkit.org/show_bug.cgi?id=156265

        Reviewed by Simon Fraser.

        These tests create some <select><option></option></select>s with padding.
        These list boxes use the zapfino "f" character (because it draws wildly
        far outside of its layout box) to create a case where text inside the list
        box would naturally intersect with the padding. This overflow should be
        clipped so that the padding is undisturbed.

        * fast/forms/listbox-padding-clip-expected.html: Added.
        * fast/forms/listbox-padding-clip-overlay-expected.html: Added.
        * fast/forms/listbox-padding-clip-overlay.html: Added.
        * fast/forms/listbox-padding-clip.html: Added.
        * platform/ios-simulator/TestExpectations: Skip on iOS

2016-03-19  Filip Pizlo  <fpizlo@apple.com>

        DFG and FTL should constant-fold RegExpExec
        https://bugs.webkit.org/show_bug.cgi?id=155270

        Reviewed by Saam Barati.

        * js/regress/script-tests/simple-regexp-exec-folding-fail.js: Added.
        * js/regress/script-tests/simple-regexp-exec-folding.js: Added.
        * js/regress/script-tests/simple-regexp-test-folding-fail.js: Added.
        * js/regress/script-tests/simple-regexp-test-folding.js: Added.
        * js/regress/simple-regexp-exec-folding-expected.txt: Added.
        * js/regress/simple-regexp-exec-folding-fail-expected.txt: Added.
        * js/regress/simple-regexp-exec-folding-fail.html: Added.
        * js/regress/simple-regexp-exec-folding.html: Added.
        * js/regress/simple-regexp-test-folding-expected.txt: Added.
        * js/regress/simple-regexp-test-folding-fail-expected.txt: Added.
        * js/regress/simple-regexp-test-folding-fail.html: Added.
        * js/regress/simple-regexp-test-folding.html: Added.

2016-04-04  Filip Pizlo  <fpizlo@apple.com>

        PolymorphicAccess should have a MegamorphicLoad case
        https://bugs.webkit.org/show_bug.cgi?id=156182

        Reviewed by Geoffrey Garen and Keith Miller.

        * js/regress/megamorphic-load-expected.txt: Added.
        * js/regress/megamorphic-load.html: Added.
        * js/regress/script-tests/megamorphic-load.js: Added.
        * js/regress/string-repeat-not-resolving-no-inline-expected.txt: Added.
        * js/regress/string-repeat-not-resolving-no-inline.html: Added.

2016-04-05  Antti Koivisto  <antti@apple.com>

        Un-marking plugins/focus.html as flaky on mac

        It hasn't flaked after https://trac.webkit.org/r199054

        * platform/mac/TestExpectations:

2016-04-05  Antoine Quint  <graouts@apple.com>

        [WebGL2] Turn the ENABLE_WEBGL2 flag on
        https://bugs.webkit.org/show_bug.cgi?id=156061
        <rdar://problem/25463193>

        Reviewed by Alex Christensen.

        * platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac/js/dom/global-constructors-attributes-expected.txt:

        The WebGL2RenderingContext and WebGLVertexArrayObject classes are now defined
        so expectations for this test which lists the configuration of global constructors
        needed to be updated.

        * webgl/webgl-vertex-array-object-defined-expected.txt: Added.
        * webgl/webgl-vertex-array-object-defined.html: Added.

        Test checking that WebGLVertexArrayObject is defined.

        * webgl/webgl2-rendering-context-defined-expected.txt: Added.
        * webgl/webgl2-rendering-context-defined.html: Added.

        Test checking that WebGL2RenderingContext is defined.

        * webgl/webgl2-rendering-context-obtain-expected.txt: Added.
        * webgl/webgl2-rendering-context-obtain.html: Added.

        Test checking that asking for a "webgl2" context returns a WebGL2RenderingContext.

2016-04-05  Chris Dumez  <cdumez@apple.com>

        We sometimes fail to remove outdated entry from the disk cache after revalidation and when the resource is no longer cacheable
        https://bugs.webkit.org/show_bug.cgi?id=156048
        <rdar://problem/25514480>

        Reviewed by Antti Koivisto.

        Add test coverage for the bug.

        * http/tests/cache/disk-cache/disk-cache-remove-several-pending-writes-expected.txt: Added.
        * http/tests/cache/disk-cache/disk-cache-remove-several-pending-writes.html: Added.
        * http/tests/cache/disk-cache/resources/json.php: Added.

2016-04-05  Antti Koivisto  <antti@apple.com>

        Shadow DOM: :host() From The First Shadow Context Should Not Style All Shadow Context
        https://bugs.webkit.org/show_bug.cgi?id=156235
        <rdar://problem/24668206>

        Reviewed by Andreas Kling.

        * fast/shadow-dom/host-style-sharing-expected.html: Added.
        * fast/shadow-dom/host-style-sharing.html: Added.

2016-04-05  Antti Koivisto  <antti@apple.com>

        Use RenderTreeUpdater for text node mutations
        https://bugs.webkit.org/show_bug.cgi?id=156107

        Reviewed by Andreas Kling.

        Mostly just revert non-rendered whitespace related changes from the earlier patches.

        * editing/style/remove-underline-from-stylesheet-expected.txt:
        * editing/style/typing-style-003-expected.txt:
        * platform/ios-simulator/editing/style/typing-style-003-expected.txt: Removed.
        * platform/mac-wk2/editing/mac/spelling/autocorrection-contraction-expected.txt:
        * platform/mac/editing/inserting/editable-html-element-expected.txt:
        * platform/mac/editing/inserting/editing-empty-divs-expected.txt:
        * platform/mac/editing/inserting/insert-at-end-02-expected.txt:
        * platform/mac/editing/pasteboard/4989774-expected.txt:
        * platform/mac/editing/selection/4983858-expected.txt:

2016-04-04  Zalan Bujtas  <zalan@apple.com>

        CSS Triangles Rendering Regression affecting CSS Ribbons.
        https://bugs.webkit.org/show_bug.cgi?id=156121

        Reviewed by Simon Fraser.

        Rebeaseline to match current behaviour.

        * fast/inline/hidpi-inline-text-decoration-with-subpixel-value-expected.html:
        * platform/mac/css1/units/length_units-expected.txt:
        * platform/mac/fast/css/bidi-override-in-anonymous-block-expected.txt:
        * platform/mac/fast/multicol/span/anonymous-style-inheritance-expected.txt:
        * platform/mac/fast/repaint/repaint-during-scroll-with-zoom-expected.txt:
        * platform/mac/ietestcenter/css3/bordersbackgrounds/border-radius-initial-value-001-expected.txt:
        * platform/mac/ietestcenter/css3/bordersbackgrounds/border-radius-style-001-expected.txt:
        * platform/mac/ietestcenter/css3/bordersbackgrounds/border-radius-style-002-expected.txt:
        * platform/mac/ietestcenter/css3/bordersbackgrounds/border-radius-style-004-expected.txt:
        * platform/mac/ietestcenter/css3/bordersbackgrounds/border-radius-with-three-values-001-expected.txt:
        * platform/mac/ietestcenter/css3/bordersbackgrounds/border-radius-with-two-values-001-expected.txt:
        * platform/mac/ietestcenter/css3/bordersbackgrounds/border-top-left-radius-values-003-expected.txt:
        * platform/mac/media/video-zoom-expected.txt:
        * platform/mac/svg/custom/svg-fonts-in-html-expected.txt:
        * platform/mac/svg/zoom/page/zoom-background-image-tiled-expected.txt:
        * platform/mac/svg/zoom/page/zoom-background-images-expected.txt:
        * platform/mac/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.txt:
        * platform/mac/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:
        * platform/mac/svg/zoom/page/zoom-svg-float-border-padding-expected.txt:
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/bug1055-2-expected.txt:

2016-04-04  Doug Russell  <d_russell@apple.com>

        AX: new lines in content editable elements don't notify accessibility
        https://bugs.webkit.org/show_bug.cgi?id=153361

        Reviewed by Ryosuke Niwa.

        Relocate accessibility edit notification logic into higher level logic.
        Typing notifications relocated into TypingCommand.
        Cut & Paste notifications relocated into Editor.
        Undo relocated into EditCommandComposition.

        * accessibility/mac/selection-value-changes-for-aria-textbox-expected.txt:
        * accessibility/mac/value-change-userinfo-expected.txt: Removed.
        * accessibility/mac/value-change-userinfo.html: Removed.
        * accessibility/mac/value-change/value-change-helpers.js: Added.
        (stringForEditType):
        (bump):
        (shouldBeInsert):
        (shouldBeTyping):
        (shouldBeDelete):
        (shouldBeCut):
        (shouldBePaste):
        (shouldBeReplace):
        (shouldBePasteReplace):
        (shouldBeTypingReplace):
        (shouldBeInsertReplace):
        * accessibility/mac/value-change/value-change-user-info-contenteditable-expected.txt: Added.
        * accessibility/mac/value-change/value-change-user-info-contenteditable.html: Added.
        * accessibility/mac/value-change/value-change-user-info-textarea-expected.txt: Added.
        * accessibility/mac/value-change/value-change-user-info-textarea.html: Added.
        * accessibility/mac/value-change/value-change-user-info-textfield-expected.txt: Added.
        * accessibility/mac/value-change/value-change-user-info-textfield.html: Added.

2016-04-04  Dean Jackson  <dino@apple.com>

        Add color-gamut media query support
        https://bugs.webkit.org/show_bug.cgi?id=155994
        <rdar://problem/23282326>

        Reviewed by Darin Adler.

        New test for color-gamut.

        * fast/media/mq-color-gamut-expected.html: Added.
        * fast/media/mq-color-gamut.html: Added.

2016-04-04  Ryan Haddad  <ryanhaddad@apple.com>

        Skipping crashing test fast/loader/opaque-base-url.html on Debug
        https://bugs.webkit.org/show_bug.cgi?id=156179

        Unreviewed test gardening.

        * TestExpectations:

2016-04-04  Chris Dumez  <cdumez@apple.com>

        Regression(r196145): Crash in getOwnPropertyDescriptor on http://www.history.com/shows/vikings
        https://bugs.webkit.org/show_bug.cgi?id=156136
        <rdar://problem/25410767>

        Reviewed by Ryosuke Niwa.

        Add a layout test to confirm that calling Object.getOwnPropertyDescriptor(window, "indexedDB")
        does not crash and works as expected.

        * storage/indexeddb/indexeddb-getownpropertyDescriptor-expected.txt: Added.
        * storage/indexeddb/indexeddb-getownpropertyDescriptor.html: Added.

2016-04-04  Ryan Haddad  <ryanhaddad@apple.com>

        Marking plugins/focus.html as flaky on mac
        https://bugs.webkit.org/show_bug.cgi?id=156174

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-04-04  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline fast/scrolling/rtl-scrollbars-animation-property.html for Windows

        Unreviewed test gardening

        * platform/win/fast/scrolling/rtl-scrollbars-animation-property-expected.txt:

2016-04-04  Frederic Wang  <fwang@igalia.com>

        Refactor RenderMathMLRow layout functions to avoid using flexbox
        https://bugs.webkit.org/show_bug.cgi?id=153208

        Reviewed by Martin Robinson.

        Apply some small adjustments to MathML tests after the refactoring of RenderMathMLRow.

        * TestExpectations: Skip fractions-positions reftest for now. The small difference will be fixed after refactoring completely RenderMathMLFraction.
          We also ignore a test for margin/padding on MathML renderers.
        * platform/gtk/mathml/opentype/opentype-stretchy-horizontal-expected.png: Update reference to take into account small changes in stretch size.
        The intended test behavior (reading variants and construction from the MATH table) is preserved.
        * platform/gtk/mathml/opentype/opentype-stretchy-horizontal-expected.txt: ditto.
        * platform/mac/mathml/opentype/opentype-stretchy-horizontal-expected.png: ditto.
        * platform/mac/mathml/opentype/opentype-stretchy-horizontal-expected.txt: ditto.

2016-04-04  Hunseop Jeong  <hs85.jeong@samsung.com>

        [EFL] Unreviewed EFL Gardening on 4th Apr.

        Rebaseline some unexpected failures.

        * platform/efl/editing/execCommand/5481523-expected.txt: Rebaseline after r195740
        * platform/efl/fast/css/layerZOrderCrash-expected.txt: Rebaseline after r195740
        * platform/efl/fast/css/vertical-text-overflow-ellipsis-text-align-center-expected.txt: Rebaseline after r187380
        * platform/efl/fast/css/vertical-text-overflow-ellipsis-text-align-right-expected.txt: Rebaseline after r187380
        * platform/efl/fast/css/word-space-extra-expected.txt: Rebaseline after r192660
        * platform/efl/fast/table/click-near-anonymous-table-expected.txt: Rebaseline after r195740
        * platform/efl/fast/text/svg-font-face-with-kerning-expected.txt: Added. Rebaseline after r182620
        * platform/efl/fast/text/textIteratorNilRenderer-expected.txt: Rebaseline after r195740
        * platform/efl/fast/text/trak-optimizeLegibility-expected.txt: Added. Rebaseline after r191623
        * platform/efl/fast/transforms/bounding-rect-zoom-expected.txt: Rebaseline after r191623
        * platform/efl/svg/wicd/test-rightsizing-b-expected.txt: Rebaseline after r182620

2016-04-03  Carlos Alberto Lopez Perez  <clopez@igalia.com>

        [GTK] Unreviewed GTK gardening.

        Rebaseline many SVG tests after r197814 and mark new reported failures.

        * platform/gtk/TestExpectations:
        * platform/gtk/svg/W3C-SVG-1.1-SE/color-prop-05-t-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/color-prop-05-t-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/coords-dom-01-f-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/coords-dom-01-f-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/coords-dom-02-f-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/coords-dom-02-f-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/coords-dom-03-f-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/coords-dom-03-f-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/coords-dom-04-f-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/coords-dom-04-f-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/filters-felem-01-b-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/filters-felem-01-b-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.txt:
        * platform/gtk/svg/W3C-SVG-1.1-SE/interact-pointer-03-t-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/interact-pointer-03-t-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/paths-dom-02-f-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/paths-dom-02-f-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/pservers-grad-17-b-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/pservers-grad-17-b-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/pservers-grad-20-b-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/pservers-grad-20-b-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/pservers-pattern-03-f-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/pservers-pattern-03-f-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/pservers-pattern-04-f-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/pservers-pattern-04-f-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/styling-css-04-f-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/styling-css-04-f-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/styling-pres-02-f-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/styling-pres-02-f-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/svgdom-over-01-f-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/svgdom-over-01-f-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/text-intro-02-b-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/text-intro-09-b-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/text-tref-03-b-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/text-tref-03-b-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/text-tspan-02-b-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/text-tspan-02-b-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/types-dom-01-b-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/types-dom-01-b-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/types-dom-02-f-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/types-dom-02-f-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/types-dom-03-b-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/types-dom-03-b-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/types-dom-04-b-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/types-dom-04-b-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1-SE/types-dom-07-f-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1-SE/types-dom-07-f-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1/animate-elem-24-t-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1/animate-elem-24-t-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1/filters-light-04-f-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1/filters-light-04-f-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1/filters-turb-02-f-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1/filters-turb-02-f-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1/fonts-elem-01-t-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1/fonts-elem-01-t-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1/fonts-elem-02-t-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1/fonts-elem-02-t-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1/fonts-elem-03-b-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1/fonts-elem-03-b-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1/fonts-elem-04-b-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1/fonts-elem-04-b-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1/fonts-elem-05-t-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1/fonts-elem-05-t-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1/fonts-elem-06-t-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1/fonts-elem-06-t-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1/fonts-elem-07-b-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1/fonts-elem-07-b-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1/fonts-glyph-02-t-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1/fonts-glyph-02-t-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1/fonts-kern-01-t-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1/masking-mask-01-b-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1/masking-mask-01-b-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1/render-elems-06-t-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1/render-elems-06-t-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1/render-elems-07-t-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1/render-elems-07-t-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1/render-elems-08-t-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1/render-elems-08-t-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1/render-groups-01-b-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1/render-groups-01-b-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1/render-groups-03-t-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1/render-groups-03-t-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1/text-align-08-b-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1/text-align-08-b-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1/text-fonts-03-t-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1/text-fonts-03-t-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1/text-intro-01-t-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1/text-intro-01-t-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1/text-intro-02-b-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1/text-intro-02-b-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1/text-intro-03-b-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1/text-intro-03-b-expected.txt: Added.
        * platform/gtk/svg/W3C-SVG-1.1/text-intro-04-t-expected.png:
        * platform/gtk/svg/W3C-SVG-1.1/text-intro-04-t-expected.txt: Added.
        * platform/gtk/svg/batik/text/textEffect-expected.png:
        * platform/gtk/svg/batik/text/textEffect-expected.txt: Added.
        * platform/gtk/svg/batik/text/textEffect3-expected.png:
        * platform/gtk/svg/batik/text/textEffect3-expected.txt: Added.
        * platform/gtk/svg/batik/text/textPosition2-expected.png:
        * platform/gtk/svg/batik/text/textPosition2-expected.txt:
        * platform/gtk/svg/custom/glyph-selection-arabic-forms-expected.png:
        * platform/gtk/svg/custom/glyph-selection-arabic-forms-expected.txt:
        * platform/gtk/svg/custom/glyph-selection-non-bmp-expected.png:
        * platform/gtk/svg/custom/glyph-selection-non-bmp-expected.txt:
        * platform/gtk/svg/custom/glyph-setting-d-attribute-expected.txt: Added.
        * platform/gtk/svg/custom/glyph-transformation-with-hkern-expected.png:
        * platform/gtk/svg/custom/glyph-transformation-with-hkern-expected.txt: Added.
        * platform/gtk/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.png:
        * platform/gtk/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.txt:
        * platform/gtk/svg/custom/svg-fonts-in-text-controls-expected.txt: Added.
        * platform/gtk/svg/custom/svg-fonts-no-latin-glyph-expected.txt: Added.
        * platform/gtk/svg/custom/svg-fonts-segmented-expected.png:
        * platform/gtk/svg/custom/svg-fonts-segmented-expected.txt:
        * platform/gtk/svg/custom/svg-fonts-with-no-element-reference-expected.png:
        * platform/gtk/svg/custom/svg-fonts-with-no-element-reference-expected.txt: Added.
        * platform/gtk/svg/custom/svg-fonts-without-missing-glyph-expected.png:
        * platform/gtk/svg/custom/svg-fonts-without-missing-glyph-expected.txt:
        * platform/gtk/svg/custom/svg-fonts-word-spacing-expected.png:
        * platform/gtk/svg/custom/svg-fonts-word-spacing-expected.txt:
        * platform/gtk/svg/foreignObject/text-tref-02-b-expected.png:
        * platform/gtk/svg/foreignObject/text-tref-02-b-expected.txt: Added.
        * platform/gtk/svg/text/text-overflow-ellipsis-svgfont-expected.png:
        * platform/gtk/svg/text/text-overflow-ellipsis-svgfont-expected.txt:
        * platform/gtk/svg/text/text-text-05-t-expected.png:
        * platform/gtk/svg/text/text-text-05-t-expected.txt: Added.
        * platform/gtk/svg/transforms/text-with-mask-with-svg-transform-expected.png:
        * platform/gtk/svg/transforms/text-with-mask-with-svg-transform-expected.txt: Added.
        * platform/gtk/svg/wicd/test-rightsizing-b-expected.png:
        * platform/gtk/svg/wicd/test-rightsizing-b-expected.txt:

2016-04-03  Antti Koivisto  <antti@apple.com>

        Shadow DOM: Slot style is not computed
        https://bugs.webkit.org/show_bug.cgi?id=156144

        Reviewed by Darin Adler.

        * fast/shadow-dom/css-scoping-shadow-slot-style-expected.html: Added.
        * fast/shadow-dom/css-scoping-shadow-slot-style.html: Added.

2016-04-03  Saam barati  <sbarati@apple.com>

        Implement Annex B.3.3 function hoisting rules for function code
        https://bugs.webkit.org/show_bug.cgi?id=155672

        Reviewed by Geoffrey Garen.

        * js/kde/func-decl-expected.txt:
        * js/kde/script-tests/func-decl.js:
        * js/parser-syntax-check-expected.txt:
        * js/script-tests/parser-syntax-check.js:
        (valid):
        (onlyValidGlobally):
        (onlyInvalidGlobally):
        (invalid):

2016-04-03  David Kilzer  <ddkilzer@apple.com>

        REGRESSION (r198859): fast/scrolling/rtl-scrollbars-animation-property.html fails on non-Mac platforms
        <http://webkit.org/b/155962>

        Unreviewed; land platform-specific test results.

        * platform/gtk/fast/scrolling/rtl-scrollbars-animation-property-expected.txt: Added.
        * platform/ios-simulator/fast/scrolling/rtl-scrollbars-animation-property-expected.txt: Added.
        * platform/win/fast/scrolling/rtl-scrollbars-animation-property-expected.txt: Added.

2016-04-03  Yusuke Suzuki  <utatane.tea@gmail.com>

        [JSC] Add truncate operation (rounding to zero)
        https://bugs.webkit.org/show_bug.cgi?id=156072

        Reviewed by Saam Barati.

        * js/regress/many-foreach-calls-expected.txt: Added.
        * js/regress/many-foreach-calls.html: Added.
        * js/regress/math-trunc-expected.txt: Added.
        * js/regress/math-trunc.html: Added.
        * js/regress/script-tests/many-foreach-calls.js: Added.
        forEach calls @toInteger. It includes @trunc now.
        (i.array.forEach):
        * js/regress/script-tests/math-trunc.js: Added.
        Call Math.trunc repeatedly.
        (mathTruncInt):
        (mathTruncDouble):
        (mathTruncMixed):
        (mathTruncDoubleDoesNotCareNegativeZero):

2016-04-02  Skachkov Oleksandr  <gskachkov@gmail.com>

        [ES6] Arrow function syntax. Add missed test for using 'with' and 'this' in arrow function.
        https://bugs.webkit.org/show_bug.cgi?id=156059

        Reviewed by Saam Barati.

        Added test case that cover using 'with' with lexically bound 'this' in arrow function, this case was not 
        covered by tests for arrow function.        

        * js/arrowfunction-lexical-bind-this-expected.txt:
        * js/script-tests/arrowfunction-lexical-bind-this.js:

2016-04-02  David Kilzer  <ddkilzer@apple.com>

        REGRESSION (r198963): css3/filters/backdrop/dynamic-backdrop-filter-change.html frequently fails
        <http://webkit.org/b/149319>

        Unreviewed attempt to fix layout test.

        * css3/filters/backdrop/dynamic-backdrop-filter-change.html:
        Use testRunner.notifyDone() after testRunner.waitUntilDone().

2016-04-01  Simon Fraser  <simon.fraser@apple.com>

        Backdrop Filter should repaint when changed via script
        https://bugs.webkit.org/show_bug.cgi?id=149319
        rdar://problem/22749892

        Reviewed by Tim Horton.

        * css3/filters/backdrop/dynamic-backdrop-filter-change-expected.html: Added.
        * css3/filters/backdrop/dynamic-backdrop-filter-change.html: Added.

2016-03-31  Zalan Bujtas  <zalan@apple.com>

        putImageData leaves visible artifacts on retina display
        https://bugs.webkit.org/show_bug.cgi?id=156039
        <rdar://problem/25482243>

        Reviewed by Simon Fraser.

        Inflate the repaint rect to cover anti-aliasing bits.

        * fast/canvas/hidpi-repaint-on-retina-leaves-bits-behind-expected.html: Added.
        * fast/canvas/hidpi-repaint-on-retina-leaves-bits-behind.html: Added.

2016-04-01  Brent Fulgham  <bfulgham@apple.com>

        Confirm <a download> satisfies specification criteria
        https://bugs.webkit.org/show_bug.cgi?id=156057

        Reviewed by Andy Estes.

        Import <a download> tests from the Blink project.

        Based on a Blink change (patch by <asanka@chromium.org>):
        <https://src.chromium.org/viewvc/blink?revision=172767&view=revision>

        * TestExpectations: Mark two expected failures with the new tests.
        * fast/dom/HTMLAnchorElement/anchor-download-expected.txt: Updated for
        expected output (blob URL currently not working).
        * fast/dom/HTMLAnchorElement/anchor-nodownload-set-expected.txt: Ditto.
        * http/tests/security/anchor-download-allow-blob-expected.txt: Added.
        * http/tests/security/anchor-download-allow-blob.html: Added.
        * http/tests/security/anchor-download-allow-data-expected.txt: Added.
        * http/tests/security/anchor-download-allow-data.html: Added.
        * http/tests/security/anchor-download-allow-sameorigin-expected.txt: Added.
        * http/tests/security/anchor-download-allow-sameorigin.html: Added.
        * http/tests/security/anchor-download-block-crossorigin-expected.txt: Added.
        * http/tests/security/anchor-download-block-crossorigin.html: Added.
        * http/tests/security/resources/attachment.php: Added.
        * platform/ios-simulator-wk1/TestExpectations: Disable download tests until WK1 support
        is implemented.
        * platform/ios-simulator-wk2/TestExpectations: Disable download tests until
        NETWORK_SESSION support exists.
        * platform/mac/TestExpectations: Reactivate the HTMLAnchorElement tests.
        * platform/mac-wk1/TestExpectations: Disable download tests until WK1 support
        is implemented.

2016-04-01  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline tests added with r198951
        https://bugs.webkit.org/show_bug.cgi?id=156092

        Unreviewed test gardening.

        * http/tests/security/contentSecurityPolicy/1.1/securityviolationpolicy-block-frame-using-child-src-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/securityviolationpolicy-block-frame-using-default-src-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/securityviolationpolicy-block-frame-using-frame-src-expected.txt:

2016-04-01  Frederic Wang  <fwang@igalia.com>

        Reset CSS spacing rules on the <math> element.
        https://bugs.webkit.org/show_bug.cgi?id=155433

        Reviewed by Brent Fulgham.

        We import a test from Mozilla to ensure that CSS spacing rules line-height, word-spacing and letter-spacing are by default reset to normal on the <math> element.

        * mathml/presentation/css-spacing-expected.html: Added.
        * mathml/presentation/css-spacing.html: Added.

2016-04-01  Daniel Bates  <dabates@apple.com>

        CSP: child-src violations reported as frame-src violation
        https://bugs.webkit.org/show_bug.cgi?id=156092
        <rdar://problem/25478509>

        Reviewed by Andy Estes.

        * TestExpectations: Mark the newly added tests as PASS so that we run them.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/frame-blocked-expected.txt: Substitute "child-src" for "frame-src" in the
        expected console warning.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/frame-redirect-blocked-expected.txt: Ditto.
        * http/tests/security/contentSecurityPolicy/1.1/securityviolationpolicy-block-frame-using-child-src-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/securityviolationpolicy-block-frame-using-child-src.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/securityviolationpolicy-block-frame-using-default-src-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/securityviolationpolicy-block-frame-using-default-src.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/securityviolationpolicy-block-frame-using-frame-src-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/securityviolationpolicy-block-frame-using-frame-src.html: Added.

2016-04-01  Ada Chan  <adachan@apple.com>

        Add a way to reset the eventTrigger in ControlsTest in LayoutTests/media/controls/controls-test-helpers.js
        https://bugs.webkit.org/show_bug.cgi?id=154616

        Reviewed by Dean Jackson.

        * media/controls/controls-test-helpers.js:
        (ControlsTest.prototype.resetEventTrigger):

2016-04-01  Ryan Haddad  <ryanhaddad@apple.com>

        Marking three media controls tests as flaky on El Capitan
        https://bugs.webkit.org/show_bug.cgi?id=156112

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-04-01  Joonghun Park  <jh718.park@samsung.com>

        Unreviewed EFL gardening about new RTL scrollbar testcase
        This testcase has been added in r198859.

        * platform/efl/TestExpectations:
        * platform/efl/fast/scrolling/rtl-scrollbars-animation-property-expected.txt: Added.

2016-03-31  Antti Koivisto  <antti@apple.com>

        Separate render tree updating from style resolve
        https://bugs.webkit.org/show_bug.cgi?id=155298

        Reviewed by Andreas Kling.

        * TestExpectations:

            Skip mathml/presentation/menclose-notation-attribute-change-value.html. It will be fixed by upcoming MathML refactoring.

        * css3/blending/repaint/blend-mode-isolate-stacking-context-expected.txt:
        * css3/viewport-percentage-lengths/viewport-percentage-lengths-resize-expected.txt:

            This is a progression.

        * editing/mac/spelling/autocorrection-contraction-expected.txt:
        * editing/mac/spelling/autocorrection-removing-underline-after-paste-expected.txt:
        * editing/mac/spelling/autocorrection-removing-underline-expected.txt:
        * editing/mac/spelling/autocorrection-simple-expected.txt:
        * editing/style/remove-underline-from-stylesheet-expected.txt:
        * editing/style/typing-style-003-expected.txt:

            Non-rendered whitespace related changes.

        * platform/ios-simulator/TestExpectations:

            Skip fast/regions/position-writing-modes-in-variable-width-regions.html on iOS. Similar tests are mostly already skipped.

        * platform/ios-simulator/editing/style/typing-style-003-expected.txt: Added.
        * platform/mac-wk2/editing/mac/spelling/autocorrection-contraction-expected.txt:
        * platform/mac/editing/inserting/editable-html-element-expected.txt:
        * platform/mac/editing/inserting/editing-empty-divs-expected.txt:
        * platform/mac/editing/inserting/insert-at-end-02-expected.txt:
        * platform/mac/editing/pasteboard/4989774-expected.txt:
        * platform/mac/editing/selection/4983858-expected.txt:

            Non-rendered whitespace related changes.

2016-03-31  Chris Fleizach  <cfleizach@apple.com>

        AX: <attachment> element not accessible
        https://bugs.webkit.org/show_bug.cgi?id=156045

        Reviewed by Joanmarie Diggs.

        * accessibility/attachment-element-expected.txt: Added.
        * accessibility/attachment-element.html: Added.
        * platform/efl/TestExpectations:
        * platform/gtk/TestExpectations:

2016-03-31  Nan Wang  <n_wang@apple.com>

        AX: AX hit-testing does not work on WebKit video playback buttons
        https://bugs.webkit.org/show_bug.cgi?id=156084

        Reviewed by Darin Adler.

        * accessibility/mac/video-tag-hit-test-expected.txt: Added.
        * accessibility/mac/video-tag-hit-test.html: Added.

2016-03-31  Daniel Bates  <dabates@apple.com>

        REGRESSION (r196012): <object>/<embed> with no URL does not match source *
        https://bugs.webkit.org/show_bug.cgi?id=156079
        <rdar://problem/25470805>

        Reviewed by Brent Fulgham.

        Add tests to ensure that HTML object and embed elements are allowed by source *.

        * platform/ios-simulator/TestExpectations: Skip added tests as plugins are not supported on iOS.
        * http/tests/security/contentSecurityPolicy/embed-with-no-url-allowed-by-default-src-star-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/embed-with-no-url-allowed-by-default-src-star.html: Added.
        * http/tests/security/contentSecurityPolicy/embed-with-no-url-allowed-by-star-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/embed-with-no-url-allowed-by-star.html: Added.
        * http/tests/security/contentSecurityPolicy/object-with-no-url-allowed-by-default-src-star-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/object-with-no-url-allowed-by-default-src-star.html: Added.
        * http/tests/security/contentSecurityPolicy/object-with-no-url-allowed-by-star-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/object-with-no-url-allowed-by-star.html: Added.

2016-03-31  Saam barati  <sbarati@apple.com>

        [ES6] Disallow var assignments in for-in loops
        https://bugs.webkit.org/show_bug.cgi?id=155451

        Reviewed by Mark Lam.

        * js/parser-syntax-check-expected.txt:
        * js/script-tests/parser-syntax-check.js:

2016-03-31  Saam barati  <sbarati@apple.com>

        parsing arrow function expressions slows down the parser by 8% lets recoup some loss
        https://bugs.webkit.org/show_bug.cgi?id=155988

        Reviewed by Benjamin Poulain.

        * js/parser-syntax-check-expected.txt:
        * js/script-tests/parser-syntax-check.js:
        (catch):

2016-03-31  Per Arne Vollan  <peavo@outlook.com>

        [Win] Skip INTL related tests.
        https://bugs.webkit.org/show_bug.cgi?id=156074

        Reviewed by Alex Christensen.

        Temporarily skip failing INTL related tests, because AppleWin currently
        does not have INTL enabled.

        * js/script-tests/array-toLocaleString.js:
        * js/script-tests/date-toLocaleString.js:
        * js/script-tests/intl-collator.js:
        * js/script-tests/intl-datetimeformat.js:
        * js/script-tests/intl-numberformat.js:
        * js/script-tests/intl.js:
        * js/script-tests/number-toLocaleString.js:
        * js/script-tests/string-toLocaleLowerCase.js:
        * js/script-tests/string-toLocaleUpperCase.js:
        * platform/win/TestExpectations:

2016-03-31  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: ScriptSyntaxTree doesn't handle RestElement AST nodes
        https://bugs.webkit.org/show_bug.cgi?id=156085

        Reviewed by Saam Barati.

        * inspector/model/parse-script-syntax-tree-expected.txt:
        * inspector/model/parse-script-syntax-tree.html:
        Add a test for a RestElement.

2016-03-31  Daniel Bates  <dabates@apple.com>

        REGRESSION (r195605): ASSERTION FAILED: !NoEventDispatchAssertion::isEventDispatchForbidden()
        when pressing the back button on a page with a focused subframe
        https://bugs.webkit.org/show_bug.cgi?id=156033
        <rdar://problem/25446561>

        Reviewed by Chris Dumez.

        Add a test to ensure that when navigating back from a page with a focused <iframe> f, a DOM
        blur event is dispatched to f, a DOM focus event is dispatched at the main frame and that
        an assertion failure does not occur (only applicable in a debug build).

        * fast/history/back-from-page-with-focused-iframe-expected.txt: Added.
        * fast/history/back-from-page-with-focused-iframe.html: Added.

2016-03-31  Chris Dumez  <cdumez@apple.com>

        REGRESSION (r191180): Safari does not send Referer Header to iframe src in certain situations
        https://bugs.webkit.org/show_bug.cgi?id=155754
        <rdar://problem/25296445>

        Unreviewed, roll out r191180 as it breaks sites and needs to be reworked.

        * fast/preloader/frame-src-expected.txt: Removed.
        * fast/preloader/frame-src.html: Removed.
        * fast/preloader/resources/testFrame.html: Removed.
        * http/tests/loading/preload-no-store-frame-src-expected: Removed.
        * http/tests/loading/preload-no-store-frame-src.html: Removed.

2016-03-31  Eric Carlson  <eric.carlson@apple.com>

        Rebaseline media control tests when new media control appearances are finalized
        https://bugs.webkit.org/show_bug.cgi?id=142142

        Reviewed by Brent Fulgham.

        * fullscreen/video-controls-override.html: Test height as an integer.
        * http/tests/media/hls/video-controls-live-stream.html: Start playback explicitly instead of 
          using autoplay, and pause playback before dumping controls state to make the test results
          more deterministic.
        * media/audio-delete-while-slider-thumb-clicked.html: Make the <audio> element wide enough
          that it will always have a timeline scrubber. Trigger test on 'canplaythrough' instead of
          autoplay + 'playing' to simplify the test slightly.
        * media/nodesFromRect-shadowContent.html: Test for controls panel-background instead 
          timeline-container because of changes to the controls structure.
        * platform/mac-mavericks/media/audio-controls-rendering-expected.png: Removed.
        * platform/mac-mavericks/media/audio-controls-rendering-expected.txt: Removed.
        * platform/mac-mavericks/media/video-volume-slider-expected.txt: Removed.
        * platform/mac-wk1/media/controls-styling-expected.txt: Removed.
        * platform/mac-yosemite/http/tests/media/hls/video-controls-live-stream-expected.txt: Added
        * platform/mac-yosemite/media: Added.
        * platform/mac-yosemite/media/controls-styling-expected.txt: Added.
        * platform/mac/TestExpectations: Unskip some tests.
        * platform/mac/accessibility/media-element-expected.txt: Update results.
        * platform/mac/fast/layers/video-layer-expected.png: Ditto.
        * platform/mac/fast/layers/video-layer-expected.txt: Ditto.
        * platform/mac/fullscreen/video-controls-override-expected.txt: Ditto.
        * platform/mac/http/tests/media/hls/video-controls-live-stream-expected.txt: Ditto.
        * platform/mac/media/audio-controls-rendering-expected.png: Ditto.
        * platform/mac/media/audio-controls-rendering-expected.txt: Ditto.
        * platform/mac/media/controls-after-reload-expected.png: Ditto.
        * platform/mac/media/controls-after-reload-expected.txt: Ditto.
        * platform/mac/media/controls-strict-expected.png: Ditto.
        * platform/mac/media/controls-strict-expected.txt: Ditto.
        * platform/mac/media/controls-styling-expected.png: Ditto.
        * platform/mac/media/controls-styling-expected.txt: Ditto.
        * platform/mac/media/controls-without-preload-expected.png: Ditto.
        * platform/mac/media/controls-without-preload-expected.txt: Ditto.
        * platform/mac/media/media-controls-clone-expected.png: Ditto.
        * platform/mac/media/media-controls-clone-expected.txt: Ditto.
        * platform/mac/media/media-document-audio-repaint-expected.png: Ditto.
        * platform/mac/media/video-controls-rendering-expected.png: Ditto.
        * platform/mac/media/video-controls-rendering-expected.txt: Ditto.
        * platform/mac/media/video-display-toggle-expected.png: Ditto.
        * platform/mac/media/video-display-toggle-expected.txt: Ditto.
        * platform/mac/media/video-empty-source-expected.png: Ditto.
        * platform/mac/media/video-empty-source-expected.txt: Ditto.
        * platform/mac/media/video-no-audio-expected.png: Ditto.
        * platform/mac/media/video-no-audio-expected.txt: Ditto.
        * platform/mac/media/video-volume-slider-expected.png: Ditto.
        * platform/mac/media/video-volume-slider-expected.txt: Ditto.
        * platform/mac/media/video-zoom-controls-expected.png: Ditto.
        * platform/mac/media/video-zoom-controls-expected.txt: Ditto.

2016-03-31  Ryan Haddad  <ryanhaddad@apple.com>

        Moving a few skipped tests from ios-simulator-wk2 to ios-simulator TestExpectations file.
        
        Unreviewed test gardening.

        These particular tests time out due to lack of touch event support, which applies
        to both wk1 and wk2 ios-simulator testers.

        * platform/ios-simulator-wk2/TestExpectations:
        * platform/ios-simulator/TestExpectations:

2016-03-31  Ryan Haddad  <ryanhaddad@apple.com>

        Marking inspector/console/heapSnapshot.html as a flaky timeout on Mac
        https://bugs.webkit.org/show_bug.cgi?id=156078

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-03-31  Yusuke Suzuki  <utatane.tea@gmail.com>

        Three js/regress/string-repeat-* are flaky timeouts on Mac
        https://bugs.webkit.org/show_bug.cgi?id=156062

        Reviewed by Saam Barati.

        Reduce the test cases to avoid timeouts.

        * js/regress/script-tests/string-repeat-resolving-no-inline.js:
        * js/regress/script-tests/string-repeat-resolving.js:
        * js/regress/script-tests/string-repeat-small-resolving.js:
        * platform/mac/TestExpectations:

2016-03-31  Zalan Bujtas  <zalan@apple.com>

        Add a -mismatch test case for r198785.
        see webkit.org/b/155973

        Unreviewed.

        * plugins/missing-plugin-placeholder-expected-mismatch.html: Added.
        * plugins/missing-plugin-placeholder.html: Added.

2016-03-31  Nan Wang  <n_wang@apple.com>

        AX: aria-hidden=false causes video fallback content to be exposed to AX API
        https://bugs.webkit.org/show_bug.cgi?id=149278

        Reviewed by Chris Fleizach.

        * accessibility/aria-hidden-negates-no-visibility-expected.txt:
        * accessibility/aria-hidden-negates-no-visibility.html:

2016-03-31  Brent Fulgham  <bfulgham@apple.com>

        [WK2] Support download attribute feature
        https://bugs.webkit.org/show_bug.cgi?id=102914
        <rdar://problem/13177492>

        Reviewed by Darin Adler.

        * imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt: Update for
        <a download>.
        * imported/w3c/web-platform-tests/html/dom/reflection-text-expected.txt: Ditto.
        * js/dom/dom-static-property-for-in-iteration-expected.txt: Ditto.
        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt: Ditto.

2016-03-31  Ryan Haddad  <ryanhaddad@apple.com>

        Marking three js/regress/string-repeat-* tests as flaky timeouts on Mac
        https://bugs.webkit.org/show_bug.cgi?id=156062

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-03-31  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        [Fetch API] Add basic loading of resources for Workers
        https://bugs.webkit.org/show_bug.cgi?id=155886

        Reviewed by Alex Christensen.

        Soup and Mac HTTP backends differ on Content-Length header handling.

        * platform/gtk/imported/w3c/web-platform-tests/fetch/api/basic/request-headers-worker-expected.txt: Added.

2016-03-31  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        Remove forEach use from Fetch Headers builtin constructor
        https://bugs.webkit.org/show_bug.cgi?id=155967

        Reviewed by Joseph Pecoraro.

        Renaming tests covering user scripts breaking some WebCore JS built ins.

        * fetch/header-constructor-subclass-expected.txt: Added.
        * fetch/header-constructor-subclass.html: Added.
        * fetch/shadowing-forEach-expected.txt: Renamed from LayoutTests/streams/builtin-overrides-expected.txt.
        * fetch/shadowing-forEach.html: Renamed from LayoutTests/fetch/builtin-overrides.html.
        * streams/shadowing-Promise-expected.txt: Renamed from LayoutTests/streams/streams-promises-expected.txt.
        * streams/shadowing-Promise.html: Renamed from LayoutTests/streams/streams-promises.html.
        * streams/shadowing-defineProperty-expected.txt: Renamed from LayoutTests/fetch/builtin-overrides-expected.txt.
        * streams/shadowing-defineProperty.html: Renamed from LayoutTests/streams/builtin-overrides.html.

2016-03-31  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        [Fetch API] Update web-platform-test fetch API tests
        https://bugs.webkit.org/show_bug.cgi?id=155969

        Reviewed by Darin Adler.

        * TestExpectations: Marking imported/w3c/web-platform-tests/fetch/api/request/request-cache.html as timing out.

2016-03-30  Konstantin Tokarev  <annulen@yandex.ru>

        Fixed typo in fast/css/viewport-vmin-border test.
        https://bugs.webkit.org/show_bug.cgi?id=156028

        Reviewed by Darin Adler.

        * fast/css/viewport-vmin-border.html: Test should should say "vmin" instead of
        "vmax".
        * fast/css/viewport-vmin-border-expected.txt: Adjust expectation.

2016-03-30  Joanmarie Diggs  <jdiggs@igalia.com>

        AX: Update handling of SVG elements with presentational role
        https://bugs.webkit.org/show_bug.cgi?id=156042

        Reviewed by Chris Fleizach.

        The expectations needed to be updated to reflect the elements which are
        now being included in the accessibility tree. Also added several new test
        cases with presentational elements that lack global ARIA attributes.

        * accessibility/w3c-svg-presentational-role.html: Added several new test cases.
        * platform/gtk/accessibility/w3c-svg-presentational-role-expected.txt: Updated.
        * platform/mac/accessibility/w3c-svg-presentational-role-expected.txt: Updated

2016-03-30  Michael Saboff  <msaboff@apple.com>

        [ES6] Quantified unicode regular expressions do not work for counts greater than 1
        https://bugs.webkit.org/show_bug.cgi?id=156044

        Reviewed by Mark Lam.

        Added new test cases.

        * js/regexp-unicode-expected.txt:
        * js/script-tests/regexp-unicode.js:

2016-03-30  Myles C. Maxfield  <mmaxfield@apple.com>

        [OS X] [RTL Scrollbars] Overlay RTL scrollbars animate in from the wrong side
        https://bugs.webkit.org/show_bug.cgi?id=155962

        Reviewed by Darin Adler.

        This test only prints the "RTL" token when running on certain OSes.

        * fast/scrolling/rtl-scrollbars-animation-property.html: Added.
        * platform/mac/fast/scrolling/rtl-scrollbars-animation-property-expected.txt: Added.

2016-03-30  Sam Weinig  <sam@webkit.org>

        -webkit-text-underline-position: under; does not work in ToT
        https://bugs.webkit.org/show_bug.cgi?id=156038

        Reviewed by David Hyatt.

        * fast/css3-text/css3-text-decoration/text-underline-position/text-underline-position-under-vs-alphabetic-expected-mismatch.html: Added.
        * fast/css3-text/css3-text-decoration/text-underline-position/text-underline-position-under-vs-alphabetic.html: Added.
        Add mismatch test to show that -webkit-text-underline-position: under works.

2016-03-30  Eric Carlson  <eric.carlson@apple.com>

        Fix the media test added in r185402
        https://bugs.webkit.org/show_bug.cgi?id=156040

        Reviewed by Simon Fraser.

        * media/video-transformed-by-javascript.html: Load a valid media file.

2016-03-30  Commit Queue  <commit-queue@webkit.org>

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

        Confirming PLT regression (Requested by anttik on #webkit).

        Reverted changeset:

        "Separate render tree updating from style resolve"
        https://bugs.webkit.org/show_bug.cgi?id=155298
        http://trac.webkit.org/changeset/198828

2016-03-30  Keith Miller <keith_miller@apple.com>

        Unreviewed, rollout r198808. The patch causes crashes on 32-bit and appears to be a JSBench regression.

2016-03-30  Myles C. Maxfield  <mmaxfield@apple.com>

        [OS X] [RTL Scrollbars] List boxes should obey RTL scrollbars
        https://bugs.webkit.org/show_bug.cgi?id=155991

        Reviewed by Darin Adler.

        As with the previous patches, mark new tests as failing on all OSes that
        don't support RTL scrollbars.

        * TestExpectations:
        * fast/scrolling/rtl-scrollbars-listbox-expected.html: Added.
        * fast/scrolling/rtl-scrollbars-listbox-scroll-expected.html: Added.
        * fast/scrolling/rtl-scrollbars-listbox-scroll.html: Added.
        * fast/scrolling/rtl-scrollbars-listbox-select-left-expected.html: Added.
        * fast/scrolling/rtl-scrollbars-listbox-select-left.html: Added.
        * fast/scrolling/rtl-scrollbars-listbox-select-right-expected.html: Added.
        * fast/scrolling/rtl-scrollbars-listbox-select-right.html: Added.
        * fast/scrolling/rtl-scrollbars-listbox-simple-expected-mismatch.html: Added.
        * fast/scrolling/rtl-scrollbars-listbox-simple.html: Added.
        * fast/scrolling/rtl-scrollbars-listbox.html: Added.

2016-03-30  Yusuke Suzuki  <utatane.tea@gmail.com>

        [JSC] Implement String.prototype.repeat in builtins JS
        https://bugs.webkit.org/show_bug.cgi?id=155974

        Reviewed by Darin Adler.

        Update the error messages.

        * js/regress/script-tests/string-repeat-not-resolving-fixed.js: Added.
        (test):
        * js/regress/script-tests/string-repeat-not-resolving-no-inline.js: Added.
        (test):
        * js/regress/script-tests/string-repeat-not-resolving.js: Added.
        (test):
        * js/regress/script-tests/string-repeat-resolving-fixed.js: Added.
        (test):
        * js/regress/script-tests/string-repeat-resolving-no-inline.js: Added.
        (test):
        * js/regress/script-tests/string-repeat-resolving.js: Added.
        (test):
        * js/regress/script-tests/string-repeat-single-not-resolving.js: Added.
        (test):
        * js/regress/script-tests/string-repeat-single-resolving.js: Added.
        (test):
        * js/regress/script-tests/string-repeat-small-not-resolving.js: Added.
        (test):
        * js/regress/script-tests/string-repeat-small-resolving.js: Added.
        (test):
        * js/regress/string-repeat-not-resolving-expected.txt: Added.
        * js/regress/string-repeat-not-resolving-fixed-expected.txt: Added.
        * js/regress/string-repeat-not-resolving-fixed.html: Added.
        * js/regress/string-repeat-not-resolving-noinline-expected.txt: Added.
        * js/regress/string-repeat-not-resolving-noinline.html: Added.
        * js/regress/string-repeat-not-resolving.html: Added.
        * js/regress/string-repeat-resolving-expected.txt: Added.
        * js/regress/string-repeat-resolving-fixed-expected.txt: Added.
        * js/regress/string-repeat-resolving-fixed.html: Added.
        * js/regress/string-repeat-resolving-no-inline-expected.txt: Added.
        * js/regress/string-repeat-resolving-no-inline.html: Added.
        * js/regress/string-repeat-resolving.html: Added.
        * js/regress/string-repeat-single-not-resolving-expected.txt: Added.
        * js/regress/string-repeat-single-not-resolving.html: Added.
        * js/regress/string-repeat-single-resolving-expected.txt: Added.
        * js/regress/string-repeat-single-resolving.html: Added.
        * js/regress/string-repeat-small-not-resolving-expected.txt: Added.
        * js/regress/string-repeat-small-not-resolving.html: Added.
        * js/regress/string-repeat-small-resolving-expected.txt: Added.
        * js/regress/string-repeat-small-resolving.html: Added.
        * js/script-tests/string-repeat.js:
        * js/string-repeat-expected.txt:

2016-03-24  Simon Fraser  <simon.fraser@apple.com>

        Make animation events non-cancelable
        https://bugs.webkit.org/show_bug.cgi?id=78110

        Reviewed by Dan Bates.

        * animations/animation-events-not-cancelable-expected.txt: Added.
        * animations/animation-events-not-cancelable.html: Added.

2016-03-30  Gyuyoung Kim  <gyuyoung.kim@webkit.org>

        [EFL] Mark svg zoom and pageoverlay tests to failure

        Unreviewed EFL gardening.

        * platform/efl/TestExpectations: Assign new bugs to the failures.

2016-03-30  Manuel Rego Casasnovas  <rego@igalia.com>

        [css-grid] Refactor positioned children code
        https://bugs.webkit.org/show_bug.cgi?id=155972

        Reviewed by Sergio Villar Senin.

        Added RTL cases for most of the positioned tests,
        which are now passing with this patch.

        Pending to add RTL tests when "left" and "right" are not "auto"
        (the item doesn't use the static inline position),
        but that will be done in the other patch.

        * fast/css-grid-layout/absolute-positioning-grid-container-containing-block-expected.txt:
        * fast/css-grid-layout/absolute-positioning-grid-container-containing-block.html:
        * fast/css-grid-layout/absolute-positioning-grid-container-parent-expected.txt:
        * fast/css-grid-layout/absolute-positioning-grid-container-parent.html:
        * fast/css-grid-layout/grid-positioned-items-background-expected.html:
        * fast/css-grid-layout/grid-positioned-items-background.html:
        Fix test setting transparent background as it couldn't fail before.
        Also using a different width, to have different values when we create the RTL version.
        * fast/css-grid-layout/grid-positioned-items-implicit-grid-expected.txt:
        * fast/css-grid-layout/grid-positioned-items-implicit-grid-line-expected.txt:
        * fast/css-grid-layout/grid-positioned-items-implicit-grid-line.html:
        * fast/css-grid-layout/grid-positioned-items-implicit-grid.html:
        * fast/css-grid-layout/grid-positioned-items-unknown-named-grid-line-expected.txt:
        * fast/css-grid-layout/grid-positioned-items-unknown-named-grid-line.html:
        * fast/css-grid-layout/grid-sizing-positioned-items-expected.txt:
        * fast/css-grid-layout/grid-sizing-positioned-items.html:

2016-03-26  Antti Koivisto  <antti@apple.com>

        Separate render tree updating from style resolve
        https://bugs.webkit.org/show_bug.cgi?id=155298

        Reviewed by Andreas Kling.

        * TestExpectations:

            Skip mathml/presentation/menclose-notation-attribute-change-value.html. It will be fixed by upcoming MathML refactoring.

        * css3/blending/repaint/blend-mode-isolate-stacking-context-expected.txt:
        * css3/viewport-percentage-lengths/viewport-percentage-lengths-resize-expected.txt:

            This is a progression.

        * editing/mac/spelling/autocorrection-contraction-expected.txt:
        * editing/mac/spelling/autocorrection-removing-underline-after-paste-expected.txt:
        * editing/mac/spelling/autocorrection-removing-underline-expected.txt:
        * editing/mac/spelling/autocorrection-simple-expected.txt:
        * editing/style/remove-underline-from-stylesheet-expected.txt:
        * editing/style/typing-style-003-expected.txt:

            Non-rendered whitespace related changes.

        * platform/ios-simulator/TestExpectations:

            Skip fast/regions/position-writing-modes-in-variable-width-regions.html on iOS. Similar tests are mostly already skipped.

        * platform/ios-simulator/editing/style/typing-style-003-expected.txt: Added.
        * platform/mac-wk2/editing/mac/spelling/autocorrection-contraction-expected.txt:
        * platform/mac/editing/inserting/editable-html-element-expected.txt:
        * platform/mac/editing/inserting/editing-empty-divs-expected.txt:
        * platform/mac/editing/inserting/insert-at-end-02-expected.txt:
        * platform/mac/editing/pasteboard/4989774-expected.txt:
        * platform/mac/editing/selection/4983858-expected.txt:

            Non-rendered whitespace related changes.

2016-03-29  Nan Wang  <n_wang@apple.com>

        AX: VoiceOver not announcing the right header information for table on iOS
        https://bugs.webkit.org/show_bug.cgi?id=155907

        Reviewed by Chris Fleizach.

        * accessibility/ios-simulator/table-row-column-headers-expected.txt: Added.
        * accessibility/ios-simulator/table-row-column-headers.html: Added.

2016-03-29  Dana Burkart and Matthew Hanson  <dburkart@apple.com>

        Web Inspector: JS PrettyPrinting in do/while loops, "while" should be on the same line as "}" if there was a closing brace
        https://bugs.webkit.org/show_bug.cgi?id=117616
        <rdar://problem/15796884>

        Reviewed by Joseph Pecoraro.

        * inspector/codemirror/prettyprinting-javascript-expected.txt:
        * inspector/codemirror/prettyprinting-javascript.html:
        * inspector/codemirror/resources/prettyprinting/javascript-tests/do-while-loop-expected.js: Added.
        * inspector/codemirror/resources/prettyprinting/javascript-tests/do-while-loop.js: Added.
        * inspector/codemirror/resources/prettyprinting/javascript-tests/do-while-within-if-expected.js: Added.
        * inspector/codemirror/resources/prettyprinting/javascript-tests/do-while-within-if.js: Added.
        * inspector/codemirror/resources/prettyprinting/javascript-tests/if-followed-by-while-expected.js: Added.
        * inspector/codemirror/resources/prettyprinting/javascript-tests/if-followed-by-while.js: Added.
        * inspector/codemirror/resources/prettyprinting/javascript-tests/if-while-within-do-while-expected.js: Added.
        * inspector/codemirror/resources/prettyprinting/javascript-tests/if-while-within-do-while.js: Added.
        * inspector/codemirror/resources/prettyprinting/javascript-tests/while-within-do-while-expected.js: Added.
        * inspector/codemirror/resources/prettyprinting/javascript-tests/while-within-do-while.js: Added.

2016-03-29  Saam barati  <sbarati@apple.com>

        Fix typos in our error messages and remove some trailing periods
        https://bugs.webkit.org/show_bug.cgi?id=155985

        Reviewed by Mark Lam.

        * js/string-includes-expected.txt:

2016-03-29  Keith Miller  <keith_miller@apple.com>

        [ES6] Add support for Symbol.isConcatSpreadable.
        https://bugs.webkit.org/show_bug.cgi?id=155351

        Reviewed by Saam Barati.

        Fix tests for Symbol.isConcatSpreadable on the Symbol object.

        * js/Object-getOwnPropertyNames-expected.txt:
        * js/dom/array-prototype-properties-expected.txt:
        * js/script-tests/Object-getOwnPropertyNames.js:

2016-03-29  Nan Wang  <n_wang@apple.com>

        AX: VoiceOver: Navigating Numbered Lists Causes Number to be announced On Each Line of List
        https://bugs.webkit.org/show_bug.cgi?id=155984

        Reviewed by Chris Fleizach.

        * accessibility/mac/attributed-string-with-listitem-multiple-lines-expected.txt: Added.
        * accessibility/mac/attributed-string-with-listitem-multiple-lines.html: Added.

2016-03-29  Antonio Gomes  <tonikitoo@webkit.org>

        Wheel events' latching state is not reset when appropriate
        https://bugs.webkit.org/show_bug.cgi?id=155746

        Reviewed by Simon Fraser.

        * tiled-drawing/scrolling/resources/selects-iframe.html: Added.
        * tiled-drawing/scrolling/scroll-iframe-latched-selects.html: Added.

2016-03-29  Saam barati  <sbarati@apple.com>

        "Can not" => "cannot" in String.prototype error messages
        https://bugs.webkit.org/show_bug.cgi?id=155895

        Reviewed by Mark Lam.

        * js/string-includes-expected.txt:

2016-03-29  Ryan Haddad  <ryanhaddad@apple.com>

        Adding Timeout to ios-simulator TestExpectations for perf/adding-radio-buttons.html
        https://bugs.webkit.org/show_bug.cgi?id=154055

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-03-29  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: We should have a way to capture heap snapshots programatically.
        https://bugs.webkit.org/show_bug.cgi?id=154407
        <rdar://problem/24726292>

        Reviewed by Timothy Hatcher.

        * inspector/console/heapSnapshot-expected.txt: Added.
        * inspector/console/heapSnapshot.html: Added.
        Test that we get expected data and events after calling
        console.takeHeapSnapshot when the inspector is open.

2016-03-29  Eric Carlson  <eric.carlson@apple.com>

        media/track/track-remove-track.html is flaky, crashing and failing
        https://bugs.webkit.org/show_bug.cgi?id=130971

        Reviewed by Alexey Proskuryakov.

        * platform/mac/TestExpectations: Mark crash as flaky only.

2016-03-29  Gyuyoung Kim  <gyuyoung.kim@webkit.org>

        [EFL] Skip to test custom element test cases

        Unreviewed EFL gardening.

        Custom element is not supported by EFL yet. Additionally mark 4 security tests to timeout.

        * platform/efl/TestExpectations:

2016-03-29  Joseph Pecoraro  <pecoraro@apple.com>

        Audit WebCore builtins for user overridable code
        https://bugs.webkit.org/show_bug.cgi?id=155923

        Reviewed by Youenn Fablet.

        * fetch/builtin-overrides-expected.txt: Added.
        * fetch/builtin-overrides.html: Added.
        * streams/builtin-overrides-expected.txt: Added.
        * streams/builtin-overrides.html: Added.

2016-03-28  Zalan Bujtas  <zalan@apple.com>

        Pixel turds when bordered div is resized on SMF forum software.
        https://bugs.webkit.org/show_bug.cgi?id=155957
        <rdar://problem/25010646>

        Reviewed by Simon Fraser.

        Use unmodified, non-snapped bounding box rect when computing dirty rects.

        * fast/repaint/hidpi-box-with-subpixel-height-inflates-expected.txt: Added.
        * fast/repaint/hidpi-box-with-subpixel-height-inflates.html: Added.

2016-03-28  Chris Fleizach  <cfleizach@apple.com>

        AX: Crash when AX trying to create element for an old auto fill element
        https://bugs.webkit.org/show_bug.cgi?id=155943

        Reviewed by Joanmarie Diggs.

        * accessibility/auto-fill-crash-expected.txt: Added.
        * accessibility/auto-fill-crash.html: Added.

2016-03-28  Chris Fleizach  <cfleizach@apple.com>

        AX: iOS: Can't navigate inside ContentEditable fields with voiceover enabled
        https://bugs.webkit.org/show_bug.cgi?id=155942

        Reviewed by Joanmarie Diggs.

        * accessibility/set-selected-text-range-contenteditable-expected.txt: Added.
        * accessibility/set-selected-text-range-contenteditable.html: Added.
        * platform/efl/TestExpectations:
        * platform/gtk/TestExpectations:

2016-03-28  Gyuyoung Kim  <gyuyoung.kim@webkit.org>

        Unreviewed EFL gardening on 29th Mar.

        Mark svg text tests to failure. Besides remove duplicated a test.

        * platform/efl/TestExpectations:

2016-03-28  Myles C. Maxfield  <mmaxfield@apple.com>

        [RTL Scrollbars] Position:sticky can be positioned under vertical RTL scrollbar
        https://bugs.webkit.org/show_bug.cgi?id=155949

        Reviewed by Simon Fraser.

        * platform/ios-simulator/TestExpectations:
        * fast/scrolling/rtl-scrollbars-sticky-document-2-expected.html: Added.
        * fast/scrolling/rtl-scrollbars-sticky-document-2.html: Added.
        * fast/scrolling/rtl-scrollbars-sticky-document-expected.html: Added.
        * fast/scrolling/rtl-scrollbars-sticky-document.html: Added.
        * fast/scrolling/rtl-scrollbars-sticky-iframe-2-expected.html: Added.
        * fast/scrolling/rtl-scrollbars-sticky-iframe-2.html: Added.
        * fast/scrolling/rtl-scrollbars-sticky-iframe-expected.html: Added.
        * fast/scrolling/rtl-scrollbars-sticky-iframe.html: Added.
        * fast/scrolling/rtl-scrollbars-sticky-overflow-scroll-2-expected.html: Added.
        * fast/scrolling/rtl-scrollbars-sticky-overflow-scroll-2.html: Added.
        * fast/scrolling/rtl-scrollbars-sticky-overflow-scroll-expected.html: Added.
        * fast/scrolling/rtl-scrollbars-sticky-overflow-scroll.html: Added.

2016-03-28  Zalan Bujtas  <zalan@apple.com>

        Setup cloned continuation renderer properly.
        https://bugs.webkit.org/show_bug.cgi?id=155640

        Reviewed by Simon Fraser.

        Set the "renderer has outline ancestor" flag on the cloned inline renderer when
        we split the original renderer for continuation.
        It ensures that when the cloned part of the continuation requests repaint, we properly
        invalidate the ancestor outline (if needed).

        * fast/inline/outline-with-continuation-assert-expected.txt: Added.
        * fast/inline/outline-with-continuation-assert.html: Added.

2016-03-28  Ryan Haddad  <ryanhaddad@apple.com>

        Marking transitions/cancel-transition.html as flaky on ios-sim-wk2
        https://bugs.webkit.org/show_bug.cgi?id=155948

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/TestExpectations:

2016-03-28  Ryan Haddad  <ryanhaddad@apple.com>

        Marking fast/loader/scroll-position-restored-on-back.html as flaky on ios-sim debug WK2
        https://bugs.webkit.org/show_bug.cgi?id=155947

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/TestExpectations:

2016-03-28  Jer Noble  <jer.noble@apple.com>

        Unreviewed rebaselining; Different track IDs are selected in El Capitan.

        * platform/mac/media/track/video-track-alternate-groups-expected.txt: Added.

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

        Disk cache speculative validation requests do not have the 'Referer' HTTP header set
        https://bugs.webkit.org/show_bug.cgi?id=155890
        <rdar://problem/25279962>

        Reviewed by Antti Koivisto.

        Update existing layout test to make sure that speculative validation
        requests have their HTTP 'Referer' header set.

        * http/tests/cache/disk-cache/speculative-validation/validation-request-expected.txt:
        * http/tests/cache/disk-cache/speculative-validation/validation-request.html:

2016-03-28  Gyuyoung Kim  <gyuyoung.kim@webkit.org>

        [EFL] Mark failing indexeddb tests to failure

        Unreviewed EFL gardening.

        Additionally a shadow dom test is marked to failure because shadow dom is not enabled on EFL port yet.

        * platform/efl/TestExpectations:

2016-03-28  Hunseop Jeong  <hs85.jeong@samsung.com>

        [EFL] Remove the more passed tests after r198728

        Unreviewed EFL gardening. 

        * platform/efl/TestExpectations:

2016-03-27  Hunseop Jeong  <hs85.jeong@samsung.com>

        [EFL] REGRESSION(r188793): It made 200 layout tests and Bindings/event-target-wrapper.html performance test fail
        https://bugs.webkit.org/show_bug.cgi?id=148470

        Reviewed by Darin Adler.

        * platform/efl/TestExpectations: Unskip the passed tests.

2016-03-27  Gyuyoung Kim  <gyuyoung.kim@webkit.org>

        [EFL][AX] Mark AX failing tests to failure

        Unreveiwed EFL gardening.

        * platform/efl/TestExpectations:

2016-03-27  Gyuyoung Kim  <gyuyoung.kim@webkit.org>

        Mark rtl-scrollbar's tests to pass with incorrectly

        Unreviewed EFL gardening.

        * platform/efl/TestExpectations: Though rtl scrollbar isn't supported by EFL yet, it has been passed.

2016-03-26  Gyuyoung Kim  <gyuyoung.kim@webkit.org>

        Remove duplicated tests in EFL TextExpectations.

        Unreviewed EFL gardening.

        * platform/efl/TestExpectations: Clean up duplicated pathes.

2016-03-26  Joseph Pecoraro  <pecoraro@apple.com>

        ES6 Class syntax. Invoking method of parent class in constructor before super() lead to crash
        https://bugs.webkit.org/show_bug.cgi?id=152108

        Reviewed by Ryosuke Niwa.

        * js/arrowfunction-superproperty-expected.txt:
        * js/script-tests/arrowfunction-superproperty.js:
        * js/script-tests/class-syntax-name.js:
        * js/script-tests/class-syntax-string-and-numeric-names.js:
        Remove stale FIXMEs from LayoutTests where the bugs have been fixed.

2016-03-25  Joseph Pecoraro  <pecoraro@apple.com>

        Date.prototype.toLocaleDateString uses overridable Object.create
        https://bugs.webkit.org/show_bug.cgi?id=155917

        Reviewed by Mark Lam.

        * js/regress-155917-expected.txt: Added.
        * js/regress-155917.html: Added.
        * js/script-tests/regress-155917.js: Added.
        (Object.create):

2016-03-25  Jer Noble  <jer.noble@apple.com>

        [Mac] Audio tracks in alternate groups are not represented correctly as AudioTracks
        https://bugs.webkit.org/show_bug.cgi?id=155891
        <rdar://problem/24841372>

        Reviewed by Eric Carlson.

        * media/content/audio-tracks-alternate-group-with-fallback.mp4: Added.
        * media/content/audio-tracks-no-alternate-group.mp4: Added.
        * media/content/audio-tracks-some-in-alternate-group.mp4: Added.
        * media/track/video-track-alternate-groups-expected.txt: Added.
        * media/track/video-track-alternate-groups.html: Added.
        * platform/mac-yosemite/media/track/video-track-alternate-groups-expected.txt: Added.

2016-03-25  Mark Lam  <mark.lam@apple.com>

        ES6's throwing of TypeErrors on access of RegExp.prototype flag properties breaks websites.
        https://bugs.webkit.org/show_bug.cgi?id=155904

        Reviewed by Geoffrey Garen.

        * ietestcenter/Javascript/TestCases/15.10.7.2-1.js:
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.10.7.3-1.js:
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.10.7.4-1.js:
        (ES5Harness.registerTest.test):
        - updated these tests to not expect a TypeError due to the workaround.

        * js/pic/cached-named-property-getter.html:
        - updated this test to use the source property (which still throws a TypeError)
          instead of the ignoreCase property which no longer does.

2016-03-25  Ryan Haddad  <ryanhaddad@apple.com>

        Marking compositing/repaint/become-overlay-composited-layer.html as flaky on ios-sim-wk2
        https://bugs.webkit.org/show_bug.cgi?id=155737

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/TestExpectations:

2016-03-25  Brady Eidson  <beidson@apple.com>

        Soften push/replaceState frequency restrictions.
        <rdar://problem/25228439> and https://bugs.webkit.org/show_bug.cgi?id=155901

        Rubber-stamped by Timothy Hatcher.

        * fast/loader/stateobjects/pushstate-frequency-with-user-gesture-expected.txt: Removed.
        * fast/loader/stateobjects/pushstate-frequency-with-user-gesture.html: Removed.
        * fast/loader/stateobjects/replacestate-frequency-with-user-gesture-expected.txt: Removed.
        * fast/loader/stateobjects/replacestate-frequency-with-user-gesture.html: Removed.

2016-03-23  Dave Hyatt  <hyatt@apple.com>

        Implement the allow-end value of the hanging-punctuation CSS property.
        https://bugs.webkit.org/show_bug.cgi?id=104996

        Reviewed by Simon Fraser.

        * fast/text/hanging-punctuation-allow-end-basic-expected.html: Added.
        * fast/text/hanging-punctuation-allow-end-basic.html: Added.
        * fast/text/hanging-punctuation-allow-end-expected.html: Added.
        * fast/text/hanging-punctuation-allow-end-inlines-expected.html: Added.
        * fast/text/hanging-punctuation-allow-end-inlines.html: Added.
        * fast/text/hanging-punctuation-allow-end.html: Added.

2016-03-25  Caitlin Potter  <caitp@igalia.com>

        [JSC] implement String.prototype.padStart() and String.prototype.padEnd() proposal
        https://bugs.webkit.org/show_bug.cgi?id=155795

        Reviewed by Darin Adler.

        * js/Object-getOwnPropertyNames-expected.txt:
        * js/script-tests/Object-getOwnPropertyNames.js:

2016-03-25  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        [Fetch API] Add basic loading of resources
        https://bugs.webkit.org/show_bug.cgi?id=155637

        Reviewed by Darin Adler.

        * TestExpectations: Removed flaky test expectations.
        * http/tests/fetch/closing-while-fetching-expected.txt: Added.
        * http/tests/fetch/closing-while-fetching.html: Added.
        * http/tests/fetch/get-response-body-while-loading-expected.txt: Added.
        * http/tests/fetch/get-response-body-while-loading.html: Added.
        * http/tests/resources/download-json-with-delay.php: Added.
        * platform/gtk/imported/w3c/web-platform-tests/fetch/api/basic/request-headers-expected.txt: Added.

2016-03-25  Gyuyoung Kim  <gyuyoung.kim@webkit.org>

        Unreviewed EFL gardening.

        Mark new failing tests with existing or new bug.

        * platform/efl/TestExpectations:

2016-03-25  Gyuyoung Kim  <gyuyoung.kim@webkit.org>

        Unreviewed EFL gardening.

        Mark some blink imported tests to timeout, imageonlyfailure.
        Besides some AX tests need to have new baseline, which have been tested since r197616.

        * platform/efl/TestExpectations:

2016-03-24  Gyuyoung Kim  <gyuyoung.kim@webkit.org>

        Unreviewed EFL gardening. Mark crash tests in proper category.

        * platform/efl/TestExpectations:

2016-03-24  Daniel Bates  <dabates@apple.com>

        CSP: Move logic for reporting a violation from ContentSecurityPolicyDirectiveList to ContentSecurityPolicy
        https://bugs.webkit.org/show_bug.cgi?id=155842
        <rdar://problem/25340377>
        And
        https://bugs.webkit.org/show_bug.cgi?id=155133

        Reviewed by Brent Fulgham.

        Update expected results to reflect new error message text for an inline event handler violation.

        * http/tests/security/contentSecurityPolicy/inline-event-handler-blocked-after-injecting-meta-expected.txt:
        * http/tests/security/contentSecurityPolicy/inline-script-blocked-goofy-expected.txt:
        * http/tests/security/contentSecurityPolicy/script-src-none-inline-event-expected.txt:

2016-03-24  Saam barati  <sbarati@apple.com>

        ES6: Implement IsRegExp function and use where needed in String.prototype.* methods
        https://bugs.webkit.org/show_bug.cgi?id=155854

        Reviewed by Mark Lam.

        * js/string-includes-expected.txt:

2016-03-24  Commit Queue  <commit-queue@webkit.org>

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

        Caused use-after-free (Requested by ap on #webkit).

        Reverted changeset:

        "[Fetch API] Add basic loading of resources"
        https://bugs.webkit.org/show_bug.cgi?id=155637
        http://trac.webkit.org/changeset/198627

2016-03-24  Saam barati  <sbarati@apple.com>

        Web Inspector: Separate Debugger enable state from the debugger breakpoints enabled state
        https://bugs.webkit.org/show_bug.cgi?id=152193
        <rdar://problem/23867520>

        Reviewed by Joseph Pecoraro.

        * inspector/script-profiler/event-type-API.html:
        * inspector/script-profiler/event-type-Microtask.html:
        * inspector/script-profiler/event-type-Other.html:

2016-03-24  Daniel Bates  <dabates@apple.com>

        Update expected results following <http://trac.webkit.org/changeset/198591>
        (https://bugs.webkit.org/show_bug.cgi?id=155777)

        * http/tests/security/contentSecurityPolicy/audio-redirect-blocked-expected.txt:
        * http/tests/security/contentSecurityPolicy/video-redirect-blocked-expected.txt:

2016-03-24  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        [Fetch API] Add basic loading of resources
        https://bugs.webkit.org/show_bug.cgi?id=155637

        Reviewed by Darin Adler.

        * TestExpectations: Removed flaky test expectations.
        * http/tests/fetch/closing-while-fetching-expected.txt: Added.
        * http/tests/fetch/closing-while-fetching.html: Added.
        * http/tests/fetch/get-response-body-while-loading-expected.txt: Added.
        * http/tests/fetch/get-response-body-while-loading.html: Added.
        * http/tests/resources/download-json-with-delay.php: Added.
        * platform/gtk/imported/w3c/web-platform-tests/fetch/api/basic/request-headers-expected.txt: Added.

2016-03-24  Michael Saboff  <msaboff@apple.com>

        [ES6] Greedy unicode RegExp's don't properly backtrack past non BMP characters
        https://bugs.webkit.org/show_bug.cgi?id=155829

        Reviewed by Saam Barati.

        Added new test cases.

        * js/regexp-unicode-expected.txt:
        * js/script-tests/regexp-unicode.js:

2016-03-24  Gyuyoung Kim  <gyuyoung.kim@webkit.org>

        Unreviewed EFL gardening.

        Unskip passing tests, which have been passed a long time ago.
        Failed to track correct revision on EFL buildbot.

        * platform/efl/TestExpectations:

2016-03-23  Commit Queue  <commit-queue@webkit.org>

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

        Broke two API tests on iOS simulator (Requested by ap on
        #webkit).

        Reverted changeset:

        "Media elements allowed to play without a user gesture, but
        requiring fullscreen playback, should not be allowed to
        autoplay."
        https://bugs.webkit.org/show_bug.cgi?id=155599
        http://trac.webkit.org/changeset/198538

2016-03-23  Commit Queue  <commit-queue@webkit.org>

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

        "It broke debugging in the web inspector" (Requested by
        saamyjoon on #webkit).

        Reverted changeset:

        "We should not disable inlining when the debugger is enabled"
        https://bugs.webkit.org/show_bug.cgi?id=155741
        http://trac.webkit.org/changeset/198582

2016-03-23  Zalan Bujtas  <zalan@apple.com>

        ASSERTION FAILED: y2 >= y1 in WebCore::RenderElement::drawLineForBoxSide
        https://bugs.webkit.org/show_bug.cgi?id=155791

        Reviewed by Simon Fraser.

        With certain combination of border rect and adjacent width, we could end up with an empty final rect.
        This patch ensures that we don't try to paint this empty rect. 

        * fast/borders/empty-outline-border-assert-expected.txt: Added.
        * fast/borders/empty-outline-border-assert.html: Added.

2016-03-23  Michael Saboff  <msaboff@apple.com>

        JavaScriptCore ArrayPrototype::join shouldn't cache butterfly when it makes effectful calls
        https://bugs.webkit.org/show_bug.cgi?id=155776

        Reviewed by Saam Barati.

        New test.

        * js/regress-155776-expected.txt: Added.
        * js/regress-155776.html: Added.
        * js/script-tests/regress-155776.js: Added.
        (fillBigArrayViaToString):
        (Function.prototype.toString):

2016-03-23  Daniel Bates  <dabates@apple.com>

        CSP: Make violation console messages concise and consistent
        https://bugs.webkit.org/show_bug.cgi?id=155777
        <rdar://problem/25304031>

        Reviewed by Darin Adler.

        Update expected results to reflect new violation message text.

        * fast/workers/worker-inherits-csp-blocks-xhr-expected.txt:
        * http/tests/contentextensions/block-cookies-in-csp-report-expected.txt:
        * http/tests/contentextensions/block-csp-report-expected.txt:
        * http/tests/contentextensions/hide-on-csp-report-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/base-uri-deny-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/child-src/frame-blocked-expected.txt:
        ...
        * http/tests/security/contentSecurityPolicy/xsl-blocked-expected.txt:
        * http/tests/security/contentSecurityPolicy/xsl-img-blocked-expected.txt:
        * http/tests/security/contentSecurityPolicy/xsl-redirect-blocked-expected.txt:
        * http/tests/security/contentSecurityPolicy/xsl-unaffected-by-style-src-1-expected.txt:
        * http/tests/security/isolatedWorld/bypass-main-world-csp-for-xhr-expected.txt:
        * http/tests/security/isolatedWorld/image-load-should-not-bypass-main-world-csp-expected.txt:
        * media/csp-blocks-video-expected.txt:

2016-03-23  Brent Fulgham  <bfulgham@apple.com>

        [WebGL] Non-power-of-two texture optimization
        https://bugs.webkit.org/show_bug.cgi?id=118409

        Reviewed by Dean Jackson.

        * fast/canvas/webgl/texture-alternating-npot-expected.txt: Added.
        * fast/canvas/webgl/texture-alternating-npot.html: Added.

2016-03-23  Saam barati  <sbarati@apple.com>

        We should not disable inlining when the debugger is enabled
        https://bugs.webkit.org/show_bug.cgi?id=155741

        Reviewed by Oliver Hunt.

        * inspector/debugger/breakpoint-with-inlining-expected.txt: Added.
        * inspector/debugger/breakpoint-with-inlining.html: Added.

2016-03-22  Darin Adler  <darin@apple.com>

        Tiny tweak to test I just landed.

        * http/tests/security/cross-origin-modal-dialog-base-expected.txt:
        Fix expected result now that I fixed the less than sign.
        * http/tests/security/cross-origin-modal-dialog-base.html: Use &lt;
        so the < character won't create an HTML element instead of text.

2016-03-22  Darin Adler  <darin@apple.com>

        showModalDialog code runs with "first window" set to wrong window
        https://bugs.webkit.org/show_bug.cgi?id=155710

        Test by John Wilander.

        Reviewed by Brent Fulgham.

        * http/tests/security/cross-origin-modal-dialog-base-expected.txt: Added.
        * http/tests/security/cross-origin-modal-dialog-base.html: Added.
        * http/tests/security/resources/cross-origin-modal-dialog-base-1.html: Added.
        * http/tests/security/resources/cross-origin-modal-dialog-base-2.html: Added.
        * platform/wk2/TestExpectations: Skip test until we get better showModalDialog support.

2016-03-22  Said Abou-Hallawa  <sabouhallawa@apple.com>

        userSpaceOnUse patterns are not stroked for empty object bounding box elements
        https://bugs.webkit.org/show_bug.cgi?id=109758

        Reviewed by Brent Fulgham.
        
        Ensure the SVG pattern is drawn correctly if it is used as a stroke for
        empty objectBoundingBox elements.

        * svg/custom/pattern-units-fill-stroke-expected.svg: Added.
        * svg/custom/pattern-units-fill-stroke.svg: Added.

2016-03-22  Myles C. Maxfield  <mmaxfield@apple.com>

        Post-review test update after r198560
        https://bugs.webkit.org/show_bug.cgi?id=155533

        Unreviewed.

        * fast/scrolling/rtl-scrollbars-positioning-expected.html:
        * fast/scrolling/rtl-scrollbars-positioning.html:

2016-03-22  John Wilander  <wilander@apple.com>

        Restrict WebSockets header parsing according to RFC6455 and RFC7230. Based on Lamarque V. Souza's original patch.
        https://bugs.webkit.org/show_bug.cgi?id=82714

        Reviewed by Brent Fulgham.

        * http/tests/websocket/tests/hybi/error-event-ready-state-expected.txt: Removed.
            - See comment below on the associated HTML file.
        * http/tests/websocket/tests/hybi/error-event-ready-state-non-existent-url-with-server-responding-404-expected.txt: Added.
        * http/tests/websocket/tests/hybi/error-event-ready-state-non-existent-url-with-server-responding-404.html: Added.
            - Uses PHP to respond with an HTTP 1.1 404. The old (now removed) test case failed once we restricted WebSockets to HTTP 1.1 and above because the test server responded with an HTTP 1.0 404 for non-existing files.
        * http/tests/websocket/tests/hybi/error-event-ready-state.html: Removed.
            - This test case was renamed "error-event-ready-state-non-existent-url-with-server-responding-404" to make it clear it now relies on a server responding with HTTP 1.1 404.
        * http/tests/websocket/tests/hybi/handshake-fail-by-invalid-http-version-expected.txt: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-invalid-http-version.html: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-invalid-http-version_wsh.py: Added.
        (web_socket_do_extra_handshake):
        (web_socket_transfer_data):
            - Test case for lower than HTTP 1.1 versions.
        * http/tests/websocket/tests/hybi/handshake-fail-by-more-accept-header-expected.txt:
        * http/tests/websocket/tests/hybi/handshake-fail-by-more-extensions-header-expected.txt:
        * http/tests/websocket/tests/hybi/handshake-fail-by-more-protocol-header-expected.txt:
            - Updated to pass with lowercase 'must not' in the failure reason.
        * http/tests/websocket/tests/hybi/handshake-fail-by-non-ascii-header-value-sec-websocket-accept-expected.txt: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-non-ascii-header-value-sec-websocket-accept.html: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-non-ascii-header-value-sec-websocket-accept_wsh.py: Added.
        (web_socket_do_extra_handshake):
        (web_socket_transfer_data):
            - Test case for non-ASCII characters in new HTTP header Sec-WebSocket-Accept.
        * http/tests/websocket/tests/hybi/handshake-fail-by-non-ascii-header-value-sec-websocket-extensions-expected.txt: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-non-ascii-header-value-sec-websocket-extensions.html: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-non-ascii-header-value-sec-websocket-extensions_wsh.py: Added.
        (web_socket_do_extra_handshake):
        (web_socket_transfer_data):
            - Test case for non-ASCII characters in new HTTP header Sec-WebSocket-Extensions.
        * http/tests/websocket/tests/hybi/handshake-fail-by-non-ascii-header-value-sec-websocket-protocol-expected.txt: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-non-ascii-header-value-sec-websocket-protocol.html: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-non-ascii-header-value-sec-websocket-protocol_wsh.py: Added.
        (web_socket_do_extra_handshake):
        (web_socket_transfer_data):
            - Test case for non-ASCII characters in new HTTP header Sec-WebSocket-Protocol.
        * http/tests/websocket/tests/hybi/handshake-fail-by-non-ascii-status-line-expected.txt: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-non-ascii-status-line.html: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-non-ascii-status-line_wsh.py: Added.
        (web_socket_do_extra_handshake):
        (web_socket_transfer_data):
            - Test case for non-ASCII characters in HTTP status line.
        * http/tests/websocket/tests/hybi/handshake-fail-by-null-char-in-status-expected.txt: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-null-char-in-status.html: Added.
        * http/tests/websocket/tests/hybi/handshake-fail-by-null-char-in-status_wsh.py: Added.
        (web_socket_do_extra_handshake):
        (web_socket_transfer_data):
            - Test case for null character in the middle of the HTTP status line.
        * http/tests/websocket/tests/hybi/handshake-fail-by-prepended-null_wsh.py:
        (web_socket_do_extra_handshake):
        (web_socket_transfer_data):
            - This test case was changed to prepend a null character to the actual status line. Previously it used a WebSockets frame with a prepended null before the status line. The Python WebSockets lib uses non-ASCII characters in that frame which meant the test case hit the non-ASCII check before the null check. It was confusing to me that the description and intent of the test was to run with a null in the status line, not in a frame before the status line. I believe the changed test case better reflects the intention of the test.
        * http/tests/websocket/tests/hybi/handshake-ok-with-http-version-beyond-1_1-expected.txt: Added.
        * http/tests/websocket/tests/hybi/handshake-ok-with-http-version-beyond-1_1.html: Added.
        * http/tests/websocket/tests/hybi/handshake-ok-with-http-version-beyond-1_1_wsh.py: Added.
        (web_socket_do_extra_handshake):
        (web_socket_transfer_data):
            - Test case for HTTP versions higher than 1.1.
        * http/tests/websocket/tests/hybi/resources/status-404-without-body.php: Added.
            - To use with the error-event-ready-state-non-existent-url-with-server-responding-404.html test described above.

2016-03-22  Myles C. Maxfield  <mmaxfield@apple.com>

        [RTL Scrollbars] Position: absolute divs are covered by vertical scrollbar
        https://bugs.webkit.org/show_bug.cgi?id=155533

        Reviewed by Darin Adler.

        * TestExpectations:
        * fast/scrolling/rtl-scrollbars-positioning-expected.html: Added.
        * fast/scrolling/rtl-scrollbars-positioning.html: Added.

2016-03-22  Ryan Haddad  <ryanhaddad@apple.com>

        Marking inspector/console/console-api.html as flaky on Mac
        https://bugs.webkit.org/show_bug.cgi?id=143719

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-03-22  Ryan Haddad  <ryanhaddad@apple.com>

        Fixing a typo in the Mac TestExpectations file.

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-03-22  Michael Saboff  <msaboff@apple.com>

        [ES6] Implement RegExp.prototype[@@match]
        https://bugs.webkit.org/show_bug.cgi?id=155711

        Reviewed by Filip Pizlo.

        Updated tests for exception string changes and added Symbol.match.

        * js/Object-getOwnPropertyNames-expected.txt:
        * js/dom/string-prototype-properties-expected.txt:
        * js/script-tests/Object-getOwnPropertyNames.js:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.10_String.prototype.match/S15.5.4.10_A1_T3-expected.txt:

2016-03-22  Daniel Bates  <dabates@apple.com>

        CSP: Should only execute <script> or apply <style> if its hash appears in all policies
        https://bugs.webkit.org/show_bug.cgi?id=155709
        <rdar://problem/25263368>

        Reviewed by Darin Adler.

        Add tests to ensure that we only execute/apply a <script>/<style> if its hash is listed in all CSPs
        delivered with the page.

        * TestExpectations: Mark added tests as PASS so that we run them.
        * http/tests/security/contentSecurityPolicy/1.1/scripthash-multiple-policies-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/scripthash-multiple-policies.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/stylehash-multiple-policies-expected.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/stylehash-multiple-policies.html: Added.

2016-03-22  Nan Wang  <n_wang@apple.com>

        AX: Change "dialog" role description to "web dialog" so users can distinguish from native alerts
        https://bugs.webkit.org/show_bug.cgi?id=154292

        Reviewed by Chris Fleizach.

        * platform/mac-mavericks/accessibility/roles-exposed-expected.txt:
        * platform/mac/accessibility/roles-exposed-expected.txt:

2016-03-22  Daniel Bates  <dabates@apple.com>

        CSP: Check inline event handlers on each run, not only the first
        https://bugs.webkit.org/show_bug.cgi?id=115700
        <rdar://problem/24211159>

        Reviewed by Andy Estes.

        Update expected result for test http/tests/security/contentSecurityPolicy/inline-event-handler-blocked-after-injecting-meta.html
        and remove its entry from file LayoutTests/TestExpectations now that it passes.

        * TestExpectations:
        * http/tests/security/contentSecurityPolicy/inline-event-handler-blocked-after-injecting-meta-expected.txt:

2016-03-22  Ryan Haddad  <ryanhaddad@apple.com>

        Skipping media/media-document-audio-repaint.html on El Capitan Debug WK2
        https://bugs.webkit.org/show_bug.cgi?id=155757

        Unreviewed test gardening.

        * platform/mac-wk2/TestExpectations:

2016-03-22  Ryan Haddad  <ryanhaddad@apple.com>

        Marking perf/document-contains.html as flaky on ios-simulator-wk2
        https://bugs.webkit.org/show_bug.cgi?id=155755

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/TestExpectations:

2016-03-22  Eric Carlson  <eric.carlson@apple.com>

        [OSX] Rebase media/media-document-audio-repaint.html
        https://bugs.webkit.org/show_bug.cgi?id=155733

        Reviewed by Darin Adler.

        * platform/mac/TestExpectations:
        * platform/mac/media/media-document-audio-repaint-expected.png:
        * platform/mac/media/media-document-audio-repaint-expected.txt: Added.

2016-03-21  Joseph Pecoraro  <pecoraro@apple.com>

        Skip HeapSnapshot test on WebKit1. Shared VM skews the data.

        Rubber-stamped by Timothy Hatcher.

        In this case, snapshots with snapshots with snapshots in the same VM
        causes the test to run out of memory. This does not happen in WebKit2.

        * platform/mac-wk1/TestExpectations:

2016-03-21  Zalan Bujtas  <zalan@apple.com>

        WebCore::RenderTableCell::setCol should put a cap on the column value. 
        https://bugs.webkit.org/show_bug.cgi?id=155642
        <rdar://problem/15895201>

        Reviewed by Simon Fraser.

        This patch ensures that we don't crash when the column number is large enough.
        see webkit.org/b/71135 for more information.

        * tables/colspan-with-large-value-crash-expected.txt: Added.
        * tables/colspan-with-large-value-crash.html: Added.

2016-03-21  Brady Eidson  <beidson@apple.com>

        storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange.html flaky on mac-wk2.
        https://bugs.webkit.org/show_bug.cgi?id=154748

        Reviewed by Alex Christensen.

        * platform/mac/TestExpectations:
        * storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-expected.txt:
        * storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-private-expected.txt:
        * storage/indexeddb/resources/deletedatabase-delayed-by-open-and-versionchange.js:

2016-03-21  Simon Fraser  <simon.fraser@apple.com>

        [iOS WK2] Use larger tiles when possible to reduce per-tile painting overhead
        https://bugs.webkit.org/show_bug.cgi?id=155734
        rdar://problem/24968144

        Reviewed by Tim Horton.

        New results with larger page tiles in WK2.

        * platform/ios-simulator-wk2/compositing/tiling/rotated-tiled-clamped-expected.txt: Added.
        * platform/ios-simulator-wk2/compositing/tiling/rotated-tiled-preserve3d-clamped-expected.txt: Added.
        * platform/ios-simulator-wk2/compositing/tiling/transform-origin-tiled-expected.txt: Added.

2016-03-21  Hyungwook Lee  <hyungwook.lee@navercorp.com>

        [Win] Connect layoutTestController.findString() to support testing
        https://bugs.webkit.org/show_bug.cgi?id=50234

        Reviewed by Alex Christensen.

        * platform/win/TestExpectations: Unskip test.
        * platform/win/editing/text-iterator/findString-expected.txt: Added.

2016-03-21  Zalan Bujtas  <zalan@apple.com>

        Web Inspector search icon does not fit when zoomed in.
        https://bugs.webkit.org/show_bug.cgi?id=155708

        Reviewed by Simon Fraser.

        Adjusts the paint rect for the magnifier icon so that it fits even when zoomed in.

        * fast/forms/search/search-padding-cancel-results-buttons-expected.txt:
        * platform/mac/fast/css/focus-ring-exists-for-search-field-expected.txt:
        * platform/mac/fast/css/text-input-with-webkit-border-radius-expected.txt:
        * platform/mac/fast/css/text-overflow-input-expected.txt:
        * platform/mac/fast/forms/box-shadow-override-expected.txt:
        * platform/mac/fast/forms/control-restrict-line-height-expected.txt:
        * platform/mac/fast/forms/input-appearance-height-expected.txt:
        * platform/mac/fast/forms/placeholder-position-expected.txt:
        * platform/mac/fast/forms/placeholder-pseudo-style-expected.txt:
        * platform/mac/fast/forms/search-cancel-button-style-sharing-expected.txt:
        * platform/mac/fast/forms/search-display-none-cancel-button-expected.txt:
        * platform/mac/fast/forms/search-rtl-expected.txt:
        * platform/mac/fast/forms/search-styled-expected.txt:
        * platform/mac/fast/forms/search-vertical-alignment-expected.txt:
        * platform/mac/fast/forms/search/search-size-with-decorations-expected.txt:
        * platform/mac/fast/forms/searchfield-heights-expected.txt:
        * platform/mac/fast/repaint/search-field-cancel-expected.txt:
        * platform/mac/fast/replaced/width100percent-searchfield-expected.txt:

2016-03-21  Eric Carlson  <eric.carlson@apple.com>

        Add a WebRTC specific compile flag
        https://bugs.webkit.org/show_bug.cgi?id=155663

        Reviewed by Jer Noble.

        * platform/mac-mavericks/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac/js/dom/global-constructors-attributes-expected.txt:

2016-03-21  Ryan Haddad  <ryanhaddad@apple.com>

        Moving the -expected.txt file for accessibility/radio-button-group-members.html

        Unreviewed test gardening.

        * accessibility/radio-button-group-members-expected.txt: Renamed from LayoutTests/accessibility/mac/radio-button-group-members-expected.txt.

2016-03-21  Ryan Haddad  <ryanhaddad@apple.com>

        Marking two inspector tests as flaky timeouts on Mac.
        https://bugs.webkit.org/show_bug.cgi?id=155607

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-02-03  Sergio Villar Senin  <svillar@igalia.com>

        [css-grid] Fix percentage tracks' size computation in grids with gutters
        https://bugs.webkit.org/show_bug.cgi?id=153825

        Reviewed by Darin Adler.

        * fast/css-grid-layout/grid-gutters-and-flex-content-expected.txt:
        * fast/css-grid-layout/grid-gutters-and-flex-content.html:
        * fast/css-grid-layout/grid-gutters-and-tracks-expected.txt:
        * fast/css-grid-layout/grid-gutters-and-tracks.html:

2016-03-20  Jinwoo Jeong  <jw00.jeong@samsung.com>

        The setter of binaryType attribute in WebSocket should raise the exception.
        https://bugs.webkit.org/show_bug.cgi?id=135874

        Reviewed by Antonio Gomes.

        According to W3C WebSocket Specification, <https://www.w3.org/TR/2012/CR-websockets-20120920/>,
        when an invalid value is set on binaryType of WebSocket, a SyntaxError should be raised.

        * http/tests/websocket/tests/hybi/binary-type.html: Catch a syntax exception when binary type is set with invalid values.

2016-03-20  Chris Fleizach  <cfleizach@apple.com>

        AX: Radio button members are not identified together in all cases
        https://bugs.webkit.org/show_bug.cgi?id=155604
        <rdar://problem/21186992>

        Reviewed by Darin Adler.

        * accessibility/mac/radio-button-group-members-expected.txt: Added.
        * accessibility/radio-button-group-members.html:
        * platform/mac/accessibility/radio-button-group-members-expected.txt: Removed.

2016-03-19  Skachkov Oleksandr  <gskachkov@gmail.com>

        [ES6] Arrow function syntax. Update syntax error text 'super is only valid inside functions' to more suitable
        https://bugs.webkit.org/show_bug.cgi?id=155491

        Reviewed by Saam Barati.

        * js/class-syntax-super-expected.txt:
        * js/script-tests/class-syntax-super.js:
        * sputnik/Conformance/07_Lexical_Conventions/7.5_Tokens/7.5.3_Future_Reserved_Words/S7.5.3_A1.27-expected.txt:

2016-03-19  Mark Lam  <mark.lam@apple.com>

        ES6 spec requires that ErrorPrototype not be an Error object.
        https://bugs.webkit.org/show_bug.cgi?id=155680

        Reviewed by Michael Saboff.

        Updated the appropriate tests to expect the toString() value of Error.prototype
        to now be "[object Object]" instead of "[object Error]".  Also rebased the test
        results accordingly.

        * fast/dom/DOMException/prototype-object-expected.txt:
        * fast/dom/DOMException/prototype-object.html:
        * js/dom/native-error-prototype-expected.txt:
        * js/dom/script-tests/native-error-prototype.js:
        * sputnik/Conformance/15_Native_Objects/15.11_Error/15.11.4/S15.11.4_A2.html:

2016-03-18  Daniel Bates  <dabates@apple.com>

        Update AutoFill button in input fields
        https://bugs.webkit.org/show_bug.cgi?id=155619

        Update expected results for Windows and GTK ports. Add expected result for the EFL port.

        * platform/efl/fast/forms/auto-fill-button/input-contacts-auto-fill-button-expected.txt: Added.
        * platform/gtk/fast/forms/auto-fill-button/input-contacts-auto-fill-button-expected.txt:
        * platform/win/fast/forms/auto-fill-button/input-contacts-auto-fill-button-expected.txt:

2016-03-18  Zhuo Li  <zachli@apple.com>

        Update AutoFill button in input fields.
        https://bugs.webkit.org/show_bug.cgi?id=155619.
        rdar://problem/24486939.

        Reviewed by Daniel Bates.

        * fast/forms/auto-fill-button/input-contacts-auto-fill-button-expected.txt:
        Update the test results.
        * platform/ios-simulator/fast/forms/auto-fill-button/input-contacts-auto-fill-button-expected.txt:
        Ditto.

2016-03-18  Simon Fraser  <simon.fraser@apple.com>

        Sideways-scrollable RTL document has wrong initial and reload offset in WKWebView
        https://bugs.webkit.org/show_bug.cgi?id=155660

        Reviewed by Tim Horton.
        
        Test for initial scroll position in an RTL page.

        * fast/scrolling/rtl-initial-scroll-position-expected.html: Added.
        * fast/scrolling/rtl-initial-scroll-position.html: Added.

2016-03-18  Darin Adler  <darin@apple.com>

        ASSERTION FAILED: m_isValid == valid() in WebCore::HTMLFormControlElement::isValidFormControlElement
        https://bugs.webkit.org/show_bug.cgi?id=139481

        Reviewed by Daniel Bates.

        * fast/forms/validity-assertion-inserting-into-datalist-expected.txt: Added.
        * fast/forms/validity-assertion-inserting-into-datalist.html: Added.

2016-03-18  Chris Dumez  <cdumez@apple.com>

        Speculative revalidation requests do not have their HTTP user-agent set
        https://bugs.webkit.org/show_bug.cgi?id=155620
        <rdar://problem/24657567>

        Reviewed by Brady Eidson.

        Add layout test coverage.

        * http/tests/cache/disk-cache/speculative-validation/resources/request-headers-script.php: Added.
        * http/tests/cache/disk-cache/speculative-validation/resources/validation-request-frame.php: Added.
        * http/tests/cache/disk-cache/speculative-validation/validation-request-expected.txt: Added.
        * http/tests/cache/disk-cache/speculative-validation/validation-request.html: Added.

2016-03-18  Mark Lam  <mark.lam@apple.com>

        ES6 spec requires that RegExpPrototype not be a RegExp object.
        https://bugs.webkit.org/show_bug.cgi?id=155654

        Reviewed by Filip Pizlo.

        Rebase all the test results.

        * fast/regex/script-tests/toString.js:
        * fast/regex/toString-expected.txt:
        * ietestcenter/Javascript/15.10.6-expected.txt:
        * ietestcenter/Javascript/15.10.7.1-1-expected.txt:
        * ietestcenter/Javascript/15.10.7.2-1-expected.txt:
        * ietestcenter/Javascript/15.10.7.3-1-expected.txt:
        * ietestcenter/Javascript/15.10.7.4-1-expected.txt:
        * ietestcenter/Javascript/15.10.7.5-1-expected.txt:
        * ietestcenter/Javascript/TestCases/15.10.6.js:
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.10.7.1-1.js:
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.10.7.2-1.js:
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.10.7.3-1.js:
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.10.7.4-1.js:
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.10.7.5-1.js:
        (ES5Harness.registerTest.test):
        * js/Object-getOwnPropertyNames-expected.txt:
        * js/kde/RegExp-expected.txt:
        * js/kde/script-tests/RegExp.js:
        * js/script-tests/Object-getOwnPropertyNames.js:
        * sputnik/Conformance/15_Native_Objects/15.10_RegExp/15.10.6/S15.10.6_A2-expected.txt:

2016-03-18  Brent Fulgham  <bfulgham@apple.com>

        Local file restrictions should not block sessionStorage access
        https://bugs.webkit.org/show_bug.cgi?id=155609
        <rdar://problem/25229461>

        Reviewed by Andy Estes.

        * storage/domstorage/sessionstorage/blocked-file-access-expected.txt: Added.
        * storage/domstorage/sessionstorage/blocked-file-access.html: Added.
        * storage/domstorage/sessionstorage/resources/blocked-example.html: Added.

2016-03-18  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline inspector/model/remote-object.html for mac after r198435

        Unreviewed test gardening.

        * platform/mac/inspector/model/remote-object-expected.txt:

2016-03-18  Nan Wang  <n_wang@apple.com>

        AX: AXARIACurrent exposed but not displayed in Accessibility Inspector
        https://bugs.webkit.org/show_bug.cgi?id=155600

        Reviewed by Chris Fleizach.

        * accessibility/mac/aria-current-attribute-exposed-expected.txt: Added.
        * accessibility/mac/aria-current-attribute-exposed.html: Added.

2016-03-18  Nan Wang  <n_wang@apple.com>

        AX: Typing broken on form input field while using VoiceOver
        https://bugs.webkit.org/show_bug.cgi?id=155613

        Reviewed by Chris Fleizach.

        * accessibility/mac/text-marker-range-for-node-without-children-expected.txt: Added.
        * accessibility/mac/text-marker-range-for-node-without-children.html: Added.

2016-03-18  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        crossorigin element resource loading should check HTTP redirection
        https://bugs.webkit.org/show_bug.cgi?id=130578

        Reviewed by Daniel Bates and Brent Fulgham.

        shape-image-cors-redirect.html checks that cross-origin redirections are checked against CORS.
        It also checks that same-origin redirections are not checked against CORS.

        * http/tests/security/resources/redirect-allow-star.php: Added.
        * http/tests/security/shape-image-cors-redirect-expected.html: Added.
        * http/tests/security/shape-image-cors-redirect.html: Added.

2016-03-18  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        Move IndexedDB regular test to web-platform-tests
        https://bugs.webkit.org/show_bug.cgi?id=155581

        Reviewed by Darin Adler.

        Renaming indexeddb test expectation according new path and directory name.

        * TestExpectations:
        * platform/efl/TestExpectations:
        * platform/gtk/TestExpectations:
        * platform/ios-simulator-wk1/TestExpectations:
        * platform/mac-wk2/TestExpectations:
        * platform/win/TestExpectations:

2016-03-17  Chris Fleizach  <cfleizach@apple.com>

        AX: WEB: VoiceOver does not announce some WAI-ARIA document structures
        https://bugs.webkit.org/show_bug.cgi?id=155603
        <rdar://problem/25227385>

        Reviewed by Darin Adler.

        * accessibility/ios-simulator/landmark-type-expected.txt:
        * accessibility/ios-simulator/landmark-type.html:

2016-03-17  Brent Fulgham  <bfulgham@apple.com>

        [XSS Auditor] Off by one in XSSAuditor::canonicalizedSnippetForJavaScript()
        https://bugs.webkit.org/show_bug.cgi?id=155624
        <rdar://problem/25219962>

        Unreviewed merge from Blink (patch by Tom Sepez <tsepez@chromium.org>):
        <https://src.chromium.org/viewvc/blink?revision=201803&view=revision>

        * http/tests/security/xssAuditor/script-tag-with-trailing-script-and-urlencode-expected.txt: Added.
        * http/tests/security/xssAuditor/script-tag-with-trailing-script-and-urlencode.html: Added.

2016-03-17  Zalan Bujtas  <zalan@apple.com>

        Images in feed on ebay.com jiggle when one is hovered
        https://bugs.webkit.org/show_bug.cgi?id=155608
        <rdar://problem/25160681>

        The content offset in compositing layer = subpixel gap between the graphics layer and the layer bounds + layer bounds top left.

        Reviewed by Simon Fraser.

        * compositing/hidpi-viewport-clipping-on-composited-content-expected.html: Added.
        * compositing/hidpi-viewport-clipping-on-composited-content.html: Added.

2016-03-17  Zalan Bujtas  <zalan@apple.com>

        Don't initiate a style recall while drawing text 
        https://bugs.webkit.org/show_bug.cgi?id=155618

        Reviewed by Simon Fraser.

        This patch ensures that we don't initiate a style recalc while in the middle of text drawing.

        * fast/canvas/crash-while-resizing-canvas-expected.txt: Added.
        * fast/canvas/crash-while-resizing-canvas.html: Added.

2016-03-17  Myles C. Maxfield  <mmaxfield@apple.com>

        [RTL Scrollbars] Position: absolute divs are covered by vertical scrollbar
        https://bugs.webkit.org/show_bug.cgi?id=155531

        Reviewed by Darin Adler.

        Add a bunch of tests. Also, this patch adds some tests that caught
        https://bugs.webkit.org/show_bug.cgi?id=155533 (but they are disabled).

        * fast/scrolling/rtl-scrollbars-elementFromPoint-expected.txt: Added.
        * fast/scrolling/rtl-scrollbars-elementFromPoint-static-expected.txt: Added.
        * fast/scrolling/rtl-scrollbars-elementFromPoint-static.html: Added.
        * fast/scrolling/rtl-scrollbars-elementFromPoint.html: Added.
        * fast/scrolling/rtl-scrollbars-iframe-expected.txt: Added.
        * fast/scrolling/rtl-scrollbars-iframe-offset-expected.html: Added.
        * fast/scrolling/rtl-scrollbars-iframe-offset.html: Added.
        * fast/scrolling/rtl-scrollbars-iframe-position-absolute-expected.txt: Added.
        * fast/scrolling/rtl-scrollbars-iframe-position-absolute.html: Added.
        * fast/scrolling/rtl-scrollbars-iframe-scrolled-expected.html: Added.
        * fast/scrolling/rtl-scrollbars-iframe-scrolled.html: Added.
        * fast/scrolling/rtl-scrollbars-iframe.html: Added.
        * fast/scrolling/rtl-scrollbars-overflow-elementFromPoint-expected.txt: Added.
        * fast/scrolling/rtl-scrollbars-overflow-elementFromPoint.html: Added.
        * fast/scrolling/rtl-scrollbars-overflow-position-absolute-expected.html: Added.
        * fast/scrolling/rtl-scrollbars-overflow-position-absolute.html: Added.
        * fast/scrolling/rtl-scrollbars-overflow-text-selection-scrolled-expected.html: Added.
        * fast/scrolling/rtl-scrollbars-overflow-text-selection-scrolled.html: Added.
        * fast/scrolling/rtl-scrollbars-position-absolute-expected.html: Added.
        * fast/scrolling/rtl-scrollbars-position-absolute.html: Added.
        * fast/scrolling/rtl-scrollbars-position-fixed-expected.html: Added.
        * fast/scrolling/rtl-scrollbars-position-fixed.html: Added.
        * fast/scrolling/rtl-scrollbars-text-selection-expected.html: Added.
        * fast/scrolling/rtl-scrollbars-text-selection-scrolled-expected.html: Added.
        * fast/scrolling/rtl-scrollbars-text-selection-scrolled.html: Added.
        * fast/scrolling/rtl-scrollbars-text-selection.html: Added.
        * TestExpectations:

2016-03-17  Brady Eidson  <beidson@apple.com>

        Don't try to restore deleted MemoryIndexes if their owning object store is not restored.
        https://bugs.webkit.org/show_bug.cgi?id=155068

        Reviewed by Alex Christensen.

        * storage/indexeddb/modern/deleteindex-4-private-expected.txt: Added.
        * storage/indexeddb/modern/deleteindex-4-private.html: Added.
        * storage/indexeddb/modern/resources/deleteindex-4.js: Added.

2016-03-17  Doug Russell  <d_russell@apple.com>

        AX: attributes to retrieve focusable and editable ancestors
        https://bugs.webkit.org/show_bug.cgi?id=155554

        Reviewed by Chris Fleizach.

        Add attributes to help give context to focus changes:
        AXFocusableAncestor - nearest accessibility ancestor that returns true for
        canSetFocusAttribute().
        AXEditableAncestor - nearest accessibility ancestor that returns true for
        isTextControl().
        AXHighestEditableAncestor - highest element in accessibility that returns true
        for isTextControl().

        * accessibility/image-link-expected.txt: Renamed from LayoutTests/platform/mac/accessibility/image-link-expected.txt.
        * accessibility/image-map2-expected.txt: Renamed from LayoutTests/platform/mac/accessibility/image-map2-expected.txt.
        * accessibility/internal-link-anchors2-expected.txt: Renamed from LayoutTests/platform/mac/accessibility/internal-link-anchors2-expected.txt.
        * accessibility/lists-expected.txt: Renamed from LayoutTests/platform/mac/accessibility/lists-expected.txt.
        * accessibility/mac/ancestor-attributes-expected.txt: Added.
        * accessibility/mac/ancestor-attributes.html: Added.
        * accessibility/mac/aria-columnrowheaders-expected.txt:
        * accessibility/mac/bounds-for-range-expected.txt:
        * accessibility/mac/document-links-expected.txt:
        * accessibility/mac/internal-link-anchors-expected.txt:
        * accessibility/math-multiscript-attributes-expected.txt: Renamed from LayoutTests/platform/mac/accessibility/math-multiscript-attributes-expected.txt.
        * accessibility/plugin-expected.txt: Renamed from LayoutTests/platform/mac/accessibility/plugin-expected.txt.
        * accessibility/table-attributes-expected.txt: Renamed from LayoutTests/platform/mac/accessibility/table-attributes-expected.txt.
        * accessibility/table-cell-spans-expected.txt: Renamed from LayoutTests/platform/mac/accessibility/table-cell-spans-expected.txt.
        * accessibility/table-cells-expected.txt: Renamed from LayoutTests/platform/mac/accessibility/table-cells-expected.txt.
        * accessibility/table-detection-expected.txt: Renamed from LayoutTests/platform/mac/accessibility/table-detection-expected.txt.
        * accessibility/table-one-cell-expected.txt: Renamed from LayoutTests/platform/mac/accessibility/table-one-cell-expected.txt.
        * accessibility/table-sections-expected.txt: Renamed from LayoutTests/platform/mac/accessibility/table-sections-expected.txt.
        * accessibility/table-with-rules-expected.txt: Renamed from LayoutTests/platform/mac/accessibility/table-with-rules-expected.txt.
        * accessibility/transformed-element-expected.txt:

2016-03-17  Joseph Pecoraro  <pecoraro@apple.com>

        Unreviewed follow-up fix to test after r198353.

        * inspector/unit-tests/heap-snapshot.html:
        Account for <root> in a few places.

2016-03-17  Sam Weinig  <sam@webkit.org>

        Implement document.queryCommandSupported("copy")
        https://bugs.webkit.org/show_bug.cgi?id=155548
        <rdar://problem/25195295>

        Reviewed by Enrica Casucci.

        * editing/execCommand/clipboard-access-with-user-gesture-expected.txt:
        * editing/execCommand/clipboard-access-with-user-gesture.html:
        document.queryCommandSupported('copy') should be returning true.

        * editing/pasteboard/can-read-in-copy-and-cut-events.html:
        * editing/pasteboard/copy-cut-paste-events-fired-when-disabled.html:
        * editing/pasteboard/pasting-empty-html-falls-back-to-text.html:
        * editing/pasteboard/set_data_typeof_return.html:
        Use testRunner.execCommand() to test the behavior of a user.

2016-03-17  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: HeapSnapshots are slow and use too much memory
        https://bugs.webkit.org/show_bug.cgi?id=155571

        Reviewed by Timothy Hatcher.

        * inspector/heap/getPreview.html:
        * inspector/heap/getRemoteObject.html:
        * inspector/heap/snapshot.html:
        Update tests to use the new HeapSnapshotWorker frontend code.

        * inspector/unit-tests/heap-snapshot-expected.txt: Added.
        * inspector/unit-tests/heap-snapshot.html: Added.
        Verify the data processing in and worker communication work HeapSnapshotWorker
        produces expected values when compared with the simple HeapSnapshot/Node/Edge
        implentation.

2016-03-17  Ryan Haddad  <ryanhaddad@apple.com>

        Marking http/tests/security/aboutBlank/window-open-self-about-blank.html as flaky on ios-sim-debug
        https://bugs.webkit.org/show_bug.cgi?id=94458

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-03-16  Chris Fleizach  <cfleizach@apple.com>

        AX: Implement AutoFill Available attribute for a text field
        https://bugs.webkit.org/show_bug.cgi?id=155567

        Reviewed by Darin Adler.

        * accessibility/auto-fill-types-expected.txt: Added.
        * accessibility/auto-fill-types.html: Added.

2016-03-17  Mark Lam  <mark.lam@apple.com>

        Method names should not appear in the lexical scope of the method's body.
        https://bugs.webkit.org/show_bug.cgi?id=155568

        Reviewed by Saam Barati.

        * inspector/model/scope-chain-node-expected.txt:
        - rebased expected result.

        * js/script-tests/function-toString-vs-name.js:
        - fixed a bug in the shouldBe() function.

        * js/methods-names-should-not-be-in-lexical-scope-expected.txt: Added.
        * js/methods-names-should-not-be-in-lexical-scope.html: Added.
        * js/script-tests/methods-names-should-not-be-in-lexical-scope.js: Added.
        - test all variations of methods.

2016-03-17  Csaba Osztrogonác  <ossy@webkit.org>

        Unreviewed, line ending fixes.

        * css2.1/20110323/support/at-import-001.css:
        * css2.1/20110323/support/at-import-002.css:
        * css2.1/20110323/support/at-import-004.css:
        * css2.1/20110323/support/at-import-005.css:
        * css2.1/20110323/support/at-import-006.css:
        * css2.1/20110323/support/at-import-007.css:
        * css2.1/20110323/support/eof-green.css:
        * storage/indexeddb/set_version_blocked.html:
        * storage/indexeddb/transaction-read-only.html:

2016-03-17  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        [Fetch API] response-consume.html is crashing on Mac WK1 Debug builds
        https://bugs.webkit.org/show_bug.cgi?id=155490

        Reviewed by Darin Adler.

        * TestExpectations: Removed crash debug expectation of response-consume.html

2016-03-17  Adam Bergkvist  <adam.bergkvist@ericsson.com>

        WebRTC: Update RTCIceCandidate
        https://bugs.webkit.org/show_bug.cgi?id=155535

        Reviewed by Eric Carlson.

        RTCIceCandidate.html is updated to test the new construction behavior and the nullable
        attributes. The remaining updated tests simply construct an RTCIceCandidate to be used for
        test purposes.

        * fast/mediastream/RTCIceCandidate-expected.txt:
        * fast/mediastream/RTCIceCandidate.html:
        * fast/mediastream/RTCPeerConnection-closed-state.html:
        * fast/mediastream/RTCPeerConnection-overloaded-operations-expected.txt:
        * fast/mediastream/RTCPeerConnection-overloaded-operations-params-expected.txt:
        * fast/mediastream/RTCPeerConnection-overloaded-operations-params.html:
        * fast/mediastream/RTCPeerConnection-overloaded-operations.html:

2016-03-17  Skachkov Oleksandr  <gskachkov@gmail.com>

        Invoking super()/super inside of the eval should not lead to SyntaxError
        https://bugs.webkit.org/show_bug.cgi?id=153864

        Reviewed by Saam Barati.

        * js/class-syntax-super-expected.txt:
        * js/script-tests/class-syntax-super.js:

2016-03-16  Zalan Bujtas  <zalan@apple.com>

        Subpixel rendering: Directly composited image layers need pixelsnapping.
        https://bugs.webkit.org/show_bug.cgi?id=155558

        Reviewed by Simon Fraser.

        In order to match non-composited image size/position, we need to pixelsnap both the contents and the clipping
        layer bounds for directly composited images.

        * fast/images/hidpi-directly-composited-image-on-subpixel-position-expected.html: Added.
        * fast/images/hidpi-directly-composited-image-on-subpixel-position.html: Added.

2016-03-16  Ryan Haddad  <ryanhaddad@apple.com>

        Skipping mathml/very-large-stretchy-operators.html on ios-simulator debug
        https://bugs.webkit.org/show_bug.cgi?id=155565

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-03-16  Ryan Haddad  <ryanhaddad@apple.com>

        Marking compositing/visible-rect/animated-from-none.html as flaky on ios-sim-wk2, failing on ios-sim-wk1
        https://bugs.webkit.org/show_bug.cgi?id=155495

        Unreviewed test gardening.

        * platform/ios-simulator-wk1/TestExpectations:
        * platform/ios-simulator-wk2/TestExpectations:

2016-03-16  Nan Wang  <n_wang@apple.com>

        AX: Expose aria-current status to children
        https://bugs.webkit.org/show_bug.cgi?id=155469

        Reviewed by Chris Fleizach.

        * accessibility/aria-current-global-attribute-expected.txt: Added.
        * accessibility/aria-current-global-attribute.html: Added.

2016-03-16  Tim Horton  <timothy_horton@apple.com>

        [mac] Printing test snapshots are upside-down after r198242
        https://bugs.webkit.org/show_bug.cgi?id=155543

        Reviewed by Simon Fraser.

        * TestExpectations:
        Re-un-skip these tests.

2016-03-16  Ryan Haddad  <ryanhaddad@apple.com>

        Marking inspector/controller/runtime-controller.html as flaky on mac
        https://bugs.webkit.org/show_bug.cgi?id=154688

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-03-16  Ryan Haddad  <ryanhaddad@apple.com>

        Mark http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-allow.html as flaky
        https://bugs.webkit.org/show_bug.cgi?id=94458

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-03-16  Daniel Bates  <dabates@apple.com>

        <video> and <audio> elements do not obey Content Security Policy on redirect
        https://bugs.webkit.org/show_bug.cgi?id=155509
        <rdar://problem/10234844>

        Reviewed by Alex Christensen.

        Add tests to ensure that the Content Security Policy is enforced on redirects when
        loading a subresource, including a video or audio file.

        * http/tests/resources/redirect.php: Fix PHP "undefined index" warnings when either query
        parameter code or refresh (or both) are not specified.
        * http/tests/security/contentSecurityPolicy/audio-redirect-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/audio-redirect-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/audio-redirect-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/audio-redirect-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/font-redirect-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/font-redirect-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/font-redirect-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/font-redirect-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/image-redirect-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/image-redirect-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/image-redirect-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/image-redirect-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/resources/ABCFont.svg: Renamed from LayoutTests/http/tests/security/contentSecurityPolicy/userAgentShadowDOM/resources/ABCFont.svg.
        * http/tests/security/contentSecurityPolicy/resources/alert-fail.xsl: Added.
        * http/tests/security/contentSecurityPolicy/resources/alert-pass.xsl: Added.
        * http/tests/security/contentSecurityPolicy/resources/green-square.svg: Added.
        * http/tests/security/contentSecurityPolicy/resources/red-square.svg: Added.
        * http/tests/security/contentSecurityPolicy/resources/xsl-redirect-allowed.php: Added.
        * http/tests/security/contentSecurityPolicy/resources/xsl-redirect-blocked.php: Added.
        * http/tests/security/contentSecurityPolicy/script-redirect-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/script-redirect-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/script-redirect-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/script-redirect-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/stylesheet-redirect-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/stylesheet-redirect-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/stylesheet-redirect-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/stylesheet-redirect-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/svg-font-redirect-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/svg-font-redirect-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/svg-font-redirect-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/svg-font-redirect-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/svg-image-redirect-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/svg-image-redirect-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/svg-image-redirect-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/svg-image-redirect-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/track-redirect-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/track-redirect-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/track-redirect-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/track-redirect-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/userAgentShadowDOM/allow-svg-font.html:
        * http/tests/security/contentSecurityPolicy/video-redirect-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/video-redirect-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/video-redirect-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/video-redirect-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/xsl-redirect-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/xsl-redirect-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/xsl-redirect-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/xsl-redirect-blocked.html: Added.
        * platform/efl/TestExpectations: For now skip tests http/tests/security/contentSecurityPolicy/userAgentShadowDOM/allow-{audio, video}.html
        until we fix <https://bugs.webkit.org/show_bug.cgi?id=155505>. We will also need to fix
        <https://bugs.webkit.org/show_bug.cgi?id=153866> before we can unskip test http/tests/security/contentSecurityPolicy/userAgentShadowDOM/allow-video.html
        As far as I can tell the functionality exercised by these tests is not being using by the EFL port.
        * platform/gtk/TestExpectations: For now skip tests http/tests/security/contentSecurityPolicy/userAgentShadowDOM/allow-{audio, video}.html
        until we fix <https://bugs.webkit.org/show_bug.cgi?id=155505>. As far as I can tell the functionality
        exercised by these tests is not being using by the GTK port.
        * platform/ios-simulator/http/tests/security/contentSecurityPolicy/audio-redirect-blocked-expected.txt: Added expected failure result as
        AV Foundation is responsible for loading media on iOS. That is, WebCore is not responsible for loading media.
        * platform/ios-simulator/http/tests/security/contentSecurityPolicy/video-redirect-blocked-expected.txt: Ditto.
        * platform/mac/TestExpectations: For now skip tests http/tests/security/contentSecurityPolicy/userAgentShadowDOM/allow-{audio, video}.html
        until we fix <https://bugs.webkit.org/show_bug.cgi?id=155505>. The functionality exercised by these
        tests is not used on OS X. Additionally, mark as Failure on Yosemite and ElCapitan the added tests
        http/tests/security/contentSecurityPolicy/{video, audio}-redirect-blocked.html as we do not support
        Content Security Policy for media redirects in these versions of OS X.

2016-03-16  Jiewen Tan  <jiewen_tan@apple.com>

        URL Parsing should signal failure for illegal IDN
        https://bugs.webkit.org/show_bug.cgi?id=154945
        <rdar://problem/8014795>

        Reviewed by Brent Fulgham.

        * fast/url/host-expected.txt:
        * fast/url/idna2003-expected.txt:
        * fast/url/invalid-idn-expected.txt: Added.
        * fast/url/invalid-idn.html: Added.

2016-03-16  Mark Lam  <mark.lam@apple.com>

        Add support for setting Function.name from computed properties.
        https://bugs.webkit.org/show_bug.cgi?id=155437

        Reviewed by Filip Pizlo.

        * js/object-literal-computed-methods-expected.txt:
        - Exercise op_set_function_name at all tiers.

        * js/script-tests/function-toString-vs-name.js:
        - Added tests for computed properties.

        * js/script-tests/object-literal-computed-methods.js:
        - rebased results.

2016-03-16  Ryan Haddad  <ryanhaddad@apple.com>

        Marking imported/blink/fast/multicol/dynamic/relayout-abspos-in-relpos-spanner.html as flaky on ios-sim
        https://bugs.webkit.org/show_bug.cgi?id=155339

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-03-16  Ryan Haddad  <ryanhaddad@apple.com>

        Skipping failing printing tests
        https://bugs.webkit.org/show_bug.cgi?id=155543

        Unreviewed test gardening.

        Three printing tests that rely on software snapshotting are failing after r198242 exposed
        an underlying issue. Skipping these tests to get the bots back to green during investigation.

        * TestExpectations:

2016-03-16  Antti Koivisto  <antti@apple.com>

        Don't invalidate style unnecessarily when setting inline style cssText
        https://bugs.webkit.org/show_bug.cgi?id=155541
        rdar://problem/23318893

        Reviewed by Simon Fraser.

        * fast/css/style-invalidation-inline-csstext-expected.txt: Added.
        * fast/css/style-invalidation-inline-csstext.html: Added.

2016-03-16  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline fast/css/getPropertyValue-webkit-marquee.html after r198255
        https://bugs.webkit.org/show_bug.cgi?id=155544

        Unreviewed test gardening.

        * fast/css/getPropertyValue-webkit-marquee-expected.txt:

2016-03-16  Yusuke Suzuki  <utatane.tea@gmail.com>

        [ES6] Reflect.set with receiver
        https://bugs.webkit.org/show_bug.cgi?id=155294

        Reviewed by Saam Barati.

        Currently, putDelegate (JSLocation is special case) and CustomIndexedSetter work as special setters.

        * js/dom/reflect-set-onto-dom-expected.txt:
        * js/dom/script-tests/reflect-set-onto-dom.js:

2016-03-15  Zalan Bujtas  <zalan@apple.com>

        Remove overflow: -webkit-marquee
        https://bugs.webkit.org/show_bug.cgi?id=155517
        <rdar://problem/25028481>

        Reviewed by Simon Fraser.

        This patch is based on Blink patch from jchaffraix@chromium.org (https://src.chromium.org/viewvc/blink?revision=151756&view=revision)

        * fast/css/getPropertyValue-webkit-marquee.html:
        * fast/css/webkit-marquee-anonymous-node-crash-expected.txt: Removed.
        * fast/css/webkit-marquee-anonymous-node-crash.html: Removed.

2016-03-15  Joanmarie Diggs  <jdiggs@igalia.com>

        AX: Expose pointers to SVG elements referenced by aria-labelledby
        https://bugs.webkit.org/show_bug.cgi?id=155481

        Reviewed by Chris Fleizach.

        * accessibility/w3c-svg-name-calculation.html: Modified to also output AXTitleUIElement.
        * platform/gtk/accessibility/w3c-svg-name-calculation-expected.txt: Updated.
        * platform/mac/accessibility/w3c-svg-name-calculation-expected.txt: Updated.

2016-03-15  Tim Horton  <timothy_horton@apple.com>

        iOS <attachment> element should allow customization of action text color
        https://bugs.webkit.org/show_bug.cgi?id=155513
        <rdar://problem/24805991>

        Reviewed by Simon Fraser.

        * fast/attachment/attachment-action-expected.html: Added.
        * fast/attachment/attachment-action.html: Added.
        * platform/ios-simulator/fast/attachment/attachment-label-highlight-expected.txt:
        * platform/ios-simulator/fast/attachment/attachment-progress-expected.txt:
        * platform/ios-simulator/fast/attachment/attachment-rendering-expected.txt:
        * platform/ios-simulator/fast/attachment/attachment-select-on-click-expected.txt:
        * platform/ios-simulator/fast/attachment/attachment-select-on-click-inside-user-select-all-expected.txt:
        * platform/ios-simulator/fast/attachment/attachment-subtitle-expected.txt:
        * platform/ios-simulator/fast/attachment/attachment-title-expected.txt:
        Rebaseline some tests and add one that action text matches the requested color.

2016-03-15  Commit Queue  <commit-queue@webkit.org>

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

        "Lets do this patch at a later time" (Requested by saamyjoon
        on #webkit).

        Reverted changeset:

        "[ES6] Disallow var assignments in for-in loops"
        https://bugs.webkit.org/show_bug.cgi?id=155451
        http://trac.webkit.org/changeset/198148

2016-03-15  Alexey Proskuryakov  <ap@apple.com>

        Test result gardening for
        ASSERT_NOT_REACHED on imported/w3c/web-platform-tests/html/semantics/embedded-content/the-area-element/area-coords.html
        https://bugs.webkit.org/show_bug.cgi?id=155516

        * TestExpectations: Skip the test in debug, as it's not useful to crash every time.

2016-03-15  Joseph Pecoraro  <pecoraro@apple.com>

        REGRESSION: ASSERTION FAILED: !m_lastActiveBlock on js/function-apply.html
        https://bugs.webkit.org/show_bug.cgi?id=155411
        <rdar://problem/25134537>

        Reviewed by Mark Lam.

        * platform/mac/TestExpectations:
        Unmark test as flakey.

2016-03-15  Ryan Haddad  <ryanhaddad@apple.com>

        Fixing expectation for css3/masking/mask-svg-script-none-to-png.html on ios-simulator

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-03-15  Tim Horton  <timothy_horton@apple.com>

        Unskip and rebaseline <attachment> tests on iOS
        <rdar://problem/24805991>

        * fast/attachment/attachment-default-icon.html:
        * fast/attachment/attachment-folder-icon.html:
        * fast/attachment/attachment-type-attribute.html:
        Make these tests have identical titles between ref and actual, because
        on iOS the layout differs if you have a title or not (unlike on Mac).

        * platform/ios-simulator/TestExpectations:
        * platform/ios-simulator/fast/attachment/attachment-label-highlight-expected.txt:
        * platform/ios-simulator/fast/attachment/attachment-progress-expected.txt:
        * platform/ios-simulator/fast/attachment/attachment-rendering-expected.txt:
        * platform/ios-simulator/fast/attachment/attachment-select-on-click-expected.txt:
        * platform/ios-simulator/fast/attachment/attachment-select-on-click-inside-user-select-all-expected.txt:
        * platform/ios-simulator/fast/attachment/attachment-subtitle-expected.txt:
        * platform/ios-simulator/fast/attachment/attachment-title-expected.txt:
        Unskip and rebaseline all but one of the attachment tests on iOS.

2016-03-15  Ryan Haddad  <ryanhaddad@apple.com>

        Remove flaky expectation for webgl/1.0.2/conformance/rendering/gl-scissor-test.html for mac
        https://bugs.webkit.org/show_bug.cgi?id=126586

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-03-15  Ryan Haddad  <ryanhaddad@apple.com>

        Fixing a typo in the ios-simulator TestExpectations file

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-03-15  Ryan Haddad  <ryanhaddad@apple.com>

        Marking animations/3d/transform-origin-vs-functions.html as flaky on ios-simulator-wk2
        https://bugs.webkit.org/show_bug.cgi?id=155501

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/TestExpectations:

2016-03-15  Chris Fleizach  <cfleizach@apple.com>

        AX: certain elements not included in accessibility tree
        https://bugs.webkit.org/show_bug.cgi?id=155480

        Reviewed by Beth Dakin.

        * accessibility/double-nested-inline-element-missing-from-tree-expected.txt: Added.
        * accessibility/double-nested-inline-element-missing-from-tree.html: Added.

2016-03-15  Chris Dumez  <cdumez@apple.com>

        Unreviewed, rolling out r198203.

        Favorites view is no longer loading on iOS

        Reverted changeset:

        "URL Parsing should signal failure for illegal IDN"
        https://bugs.webkit.org/show_bug.cgi?id=154945
        http://trac.webkit.org/changeset/198203

2016-03-15  Antti Koivisto  <antti@apple.com>

        Class change invalidation does not handle :not correctly
        https://bugs.webkit.org/show_bug.cgi?id=155493
        <rdar://problem/24846762>

        Reviewed by Andreas Kling.

        * fast/css/style-invalidation-attribute-change-descendants-expected.txt:
        * fast/css/style-invalidation-attribute-change-descendants.html:

            Also add :not case for attribute changes (which handles this correctly already).

        * fast/css/style-invalidation-class-change-descendants-expected.txt:
        * fast/css/style-invalidation-class-change-descendants.html:

            Add :not case.

2016-03-14  Jer Noble  <jer.noble@apple.com>

        Video elements with autoplay do not begin playing when scrolling into view if InvisibleAutoplayNotPermitted is set.
        https://bugs.webkit.org/show_bug.cgi?id=155468

        Reviewed by Eric Carlson.

        * media/video-restricted-invisible-autoplay-allowed-when-visible-expected.txt: Added.
        * media/video-restricted-invisible-autoplay-allowed-when-visible.html: Added.

2016-03-15  Jiewen Tan  <jiewen_tan@apple.com>

        URL Parsing should signal failure for illegal IDN
        https://bugs.webkit.org/show_bug.cgi?id=154945
        <rdar://problem/8014795>

        Reviewed by Brent Fulgham.

        * fast/url/host-expected.txt:
        * fast/url/idna2003-expected.txt:
        * fast/url/invalid-idn-expected.txt: Added.
        * fast/url/invalid-idn.html: Added.

2016-03-14  Brent Fulgham  <bfulgham@apple.com>

        REGRESSION (r197114): Crash in WebCore::MediaDevicesRequest::didCompletePermissionCheck
        https://bugs.webkit.org/show_bug.cgi?id=155453

        Reviewed by Eric Carlson.
        <rdar://problem/24879447>

        Reviewed by Dan Bates.

        Further refinement to test case: Remove use of 'setTimeout', and ensure the code gets
        called by using 'testRunner.waitUntilDone()'/'testRunner.notifyDone()'.

        * fast/mediastream/enumerating-crash.html:

2016-03-14  Daniel Bates  <dabates@apple.com>

        Web Inspector: Display Content Security Policy hash in details sidebar for script and style elements
        https://bugs.webkit.org/show_bug.cgi?id=155466
        <rdar://problem/25152480>

        Reviewed by Joseph Pecoraro and Timothy Hatcher.

        Add tests to ensure that the WebInspector.DOMNode object associated with an HTML style element
        or applicable HTML script element has a valid CSP hash.

        * inspector/dom/csp-big5-hash-expected.txt: Added.
        * inspector/dom/csp-big5-hash.html: Added.
        * inspector/dom/csp-hash-expected.txt: Added.
        * inspector/dom/csp-hash.html: Added.

2016-03-14  Filip Pizlo  <fpizlo@apple.com>

        REGRESSION(r194394): >2x slow-down on CDjs
        https://bugs.webkit.org/show_bug.cgi?id=155471

        Unreviewed (rollout).

        * js/dom/script-tests/string-prototype-properties.js:
        * js/dom/string-prototype-properties-expected.txt:
        * js/script-tests/string-localeCompare.js:
        * js/string-localeCompare-expected.txt:
        * js/string-localeCompare.html:

2016-03-14  Ryan Haddad  <ryanhaddad@apple.com>

        Marking js/funcion-apply.html as flaky on mac debug
        https://bugs.webkit.org/show_bug.cgi?id=155411

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-03-10  Antonio Gomes  <tonikitoo@webkit.org>

        Selecting with shift+drag results in unexpected drag-n-drop
        https://bugs.webkit.org/show_bug.cgi?id=155314

        Reviewed by Darin Adler.

        Tests that ensure that WebKit:

        1) does not enter drag-n-drop mode and extending selection by dragging with mouse with shift key is pressed,
           off of a #text node.
        2) does enter drag-n-drop mode and extending selection by dragging with mouse with shift key is pressed,
           off of a link.
        3) does enter drag-n-drop mode and extending selection by dragging with mouse with shift key is pressed,
           off of an image.

        Note that (1) is a behavior changed by this patch, whereas (2) and (3) represent existing
        behavior that is kept.
        Tests are also skip for iOS similarly to other drag-n-drop related tests.

        * fast/events/shift-drag-selection-no-drag-n-drop-expected.txt: Added.
        * fast/events/shift-drag-selection-no-drag-n-drop.html: Added.
        * fast/events/shift-drag-selection-on-link-triggers-drag-n-drop-expected.txt: Added.
        * fast/events/shift-drag-selection-on-link-triggers-drag-n-drop.html: Added.
        * fast/events/shift-drag-selection-on-image-triggers-drag-n-drop-expected.txt: Added.
        * fast/events/shift-drag-selection-on-image-triggers-drag-n-drop.html: Added.

2016-03-14  Ryan Haddad  <ryanhaddad@apple.com>

        Marking storage/indexeddb/transaction-abort-private.html as flaky on mac-wk1
        https://bugs.webkit.org/show_bug.cgi?id=155067

        Unreviewed test gardening.

        * platform/mac-wk1/TestExpectations:

2016-03-14  Ryan Haddad  <ryanhaddad@apple.com>

        Skip test storage/indexeddb/odd-strings.html
        https://bugs.webkit.org/show_bug.cgi?id=154975

        Unreviewed test gardening.

        Removing duplicate expectation for test and skipping since it fails or times out on every run.

        * TestExpectations:
        * platform/mac-wk1/TestExpectations:

2016-03-14  Brent Fulgham  <bfulgham@apple.com>

        REGRESSION (r197114): Crash in WebCore::MediaDevicesRequest::didCompletePermissionCheck
        https://bugs.webkit.org/show_bug.cgi?id=155453
        <rdar://problem/24879447>

        Reviewed by Daniel Bates.

        * fast/mediastream/enumerating-crash-expected.txt: Added.
        * fast/mediastream/enumerating-crash.html: Added.

2016-03-14  Saam barati  <sbarati@apple.com>

        [ES6] Disallow var assignments in for-in loops
        https://bugs.webkit.org/show_bug.cgi?id=155451

        Reviewed by Mark Lam.

        * js/parser-syntax-check-expected.txt:
        * js/script-tests/parser-syntax-check.js:

2016-03-14  Saam barati  <sbarati@apple.com>

        assignments in for-in/for-of header not allowed
        https://bugs.webkit.org/show_bug.cgi?id=155384

        Reviewed by Darin Adler.

        * js/parser-syntax-check-expected.txt:
        * js/script-tests/parser-syntax-check.js:

2016-03-14  Zalan Bujtas  <zalan@apple.com>

        Negative outline offset could break curved outline-style: auto
        https://bugs.webkit.org/show_bug.cgi?id=155416

        Reviewed by Tim Horton.

        When radius becomes negative the rounded rect could end up being un-renderable -> no rounded corners at all.

        * fast/inline/hidpi-outline-auto-negative-offset-with-border-radius-expected.html: Added.
        * fast/inline/hidpi-outline-auto-negative-offset-with-border-radius.html: Added.

2016-03-14  Zalan Bujtas  <zalan@apple.com>

        [Outline: auto] Fractional radius value could result in non-renderable rounded border.
        https://bugs.webkit.org/show_bug.cgi?id=155420

        Reviewed by Tim Horton.

        RoundedRect::pixelSnappedRoundedRectForPainting ensures that the rounded rect is always renderable.

        * fast/inline/hidpi-outline-auto-with-fractional-radius-expected.html: Added.
        * fast/inline/hidpi-outline-auto-with-fractional-radius.html: Added.

2016-03-14  Zalan Bujtas  <zalan@apple.com>

        Outline: auto has sharp corners with single line contenteditable.
        https://bugs.webkit.org/show_bug.cgi?id=155418

        Reviewed by Tim Horton.

        Multiple rectangles assumed multiline content and it broke bottomLeft and bottomRight corner check.
        This patch adds fast path for polygons with 4 corners.

        * fast/inline/hidpi-outline-auto-with-one-focusring-rect-expected.html: Added.
        * fast/inline/hidpi-outline-auto-with-one-focusring-rect.html: Added.

2016-03-14  Joanmarie Diggs  <jdiggs@igalia.com>

        [AX] SVG element with child desc not exposed
        https://bugs.webkit.org/show_bug.cgi?id=155374

        Reviewed by Darin Adler.

        * platform/gtk/accessibility/w3c-svg-roles-expected.txt: Updated.
        * platform/mac/accessibility/w3c-svg-roles-expected.txt: Updated.

2016-03-14  Ryan Haddad  <ryanhaddad@apple.com>

        Skip asserting test http/tests/security/aboutBlank/security-context-write.html
        https://bugs.webkit.org/show_bug.cgi?id=94458

        Unreviewed test gardening.

        * TestExpectations:

2016-03-14  Darin Adler  <darin@apple.com>

        Add copy/paste plug-in check for XHTML document
        https://bugs.webkit.org/show_bug.cgi?id=106350

        * TestExpectations: Re-enable test now that it works in WebKit 1.
        * editing/pasteboard/paste-noplugin-xhtml.xhtml: Fixed problem where test would try to
        call setBlockAllPlugins even when it did not exist. Turns out that's needed for the
        test to run under WebKit 2, but not needed at all under WebKit 1.

2016-03-14  Frederic Wang  <fred.wang@free.fr>

        Skip accessibility/internal-link-anchors2.html as the linked ui element API is not supported for links.

        Unreviewed test gardening.

        * platform/gtk/TestExpectations:

2016-03-14  Frederic Wang  <fwang@igalia.com>

        Make MathML colspan/rowspan consistent with HTML table cells.
        https://bugs.webkit.org/show_bug.cgi?id=150253

        Reviewed by Martin Robinson.

        We import crashing test from bug 150253.

        * mathml/rowspan-crash-expected.txt: Added.
        * mathml/rowspan-crash.xhtml: Added.

2016-03-14  Darin Adler  <darin@apple.com>

        Continue work on https://bugs.webkit.org/show_bug.cgi?id=106350

        * TestExpectations: Disable test fow now since it seems to be failing in WebKit 1 and
        depends on hooks not present in WebKit 1 test runner.

2016-03-14  Ryosuke Niwa  <rniwa@webkit.org>

        Add slotchange event
        https://bugs.webkit.org/show_bug.cgi?id=155424
        <rdar://problem/24997534>

        Reviewed by Antti Koivisto.

        Added a W3C style testharness.js test.

        * fast/shadow-dom/ShadowRoot-interface-expected.txt:
        * fast/shadow-dom/ShadowRoot-interface.html: Don't import testharness.css from svn.webkit.org.
        * fast/shadow-dom/slotchange-event-expected.txt: Added.
        * fast/shadow-dom/slotchange-event.html: Added.

2016-03-13  Darin Adler  <darin@apple.com>

        Add copy/paste plug-in check for XHTML document
        https://bugs.webkit.org/show_bug.cgi?id=106350

        Reviewed by David Kilzer.

        This bug was filed because of the assumption that there was a bug, but it
        turns out that even in XHTML documents, we use HTML tree builder, so there is
        no bug. Thus this just adds the test that demonstrates this.

        * editing/pasteboard/paste-noplugin-xhtml-expected.txt: Added.
        * editing/pasteboard/paste-noplugin-xhtml.xhtml: Added.

2016-03-13  Sam Weinig  <sam@webkit.org>

        Implement unprivileged execCommand("copy") and execCommand("cut")
        <rdar://problem/24354406>
        https://bugs.webkit.org/show_bug.cgi?id=146336

        Reviewed by Dean Jackson.

        * editing/execCommand/clipboard-access-with-user-gesture-expected.txt: Added.
        * editing/execCommand/clipboard-access-with-user-gesture.html: Added.
        Add test for using execCommand("copy") and execCommand("cut") during a user gesture.

2016-03-13  Dean Jackson  <dino@apple.com>

        DRT should enable WebGL by default on Mac
        https://bugs.webkit.org/show_bug.cgi?id=155419
        <rdar://problem/25136981>

        Reviewed by Sam Weinig.

        Update all the tests that no longer have to explicitly
        turn WebGL on.

        * compositing/backface-visibility/backface-visibility-webgl.html:
        * compositing/visibility/visibility-simple-webgl-layer.html:
        * compositing/webgl/webgl-background-color.html:
        * compositing/webgl/webgl-no-alpha.html:
        * compositing/webgl/webgl-nonpremultiplied-blend.html:
        * compositing/webgl/webgl-reflection.html:
        * compositing/webgl/webgl-repaint.html:
        * fast/canvas/webgl/antialiasing-enabled.html:
        * fast/canvas/webgl/canvas-resize-crash.html:
        * fast/canvas/webgl/css-webkit-canvas-repaint.html:
        * fast/canvas/webgl/css-webkit-canvas.html:
        * fast/canvas/webgl/out-of-bounds-simulated-vertexAttrib0-drawArrays-expected.txt:
        * fast/canvas/webgl/out-of-bounds-simulated-vertexAttrib0-drawArrays.html:
        * fast/canvas/webgl/premultiplyalpha-test.html:
        * fast/canvas/webgl/resources/webgl-test.js:
        (initNonKhronosFramework): Deleted.
        * fast/canvas/webgl/texImage2DImageDataTest.html:
        * fast/canvas/webgl/toDataURL-unpremultipliedAlpha.html:
        * fast/canvas/webgl/unprefixed-context.html:
        * fast/canvas/webgl/webgl-composite-modes-repaint.html:
        * fast/canvas/webgl/webgl-composite-modes.html:
        * fast/canvas/webgl/webgl-drawarrays-crash.html:
        * fast/canvas/webgl/webgl-layer-update.html:
        * fast/canvas/webgl/webgl-reload-crash.html:
        * http/tests/canvas/webgl/origin-clean-conformance.html:
        * http/tests/security/webgl-remote-read-remote-image-allowed-with-credentials.html:
        * http/tests/security/webgl-remote-read-remote-image-allowed.html:
        * http/tests/security/webgl-remote-read-remote-image-blocked-no-crossorigin.html:
        * http/tests/webgl/1.0.2/resources/webgl_test_files/conformance/more/unit.js:
        * http/tests/webgl/1.0.2/resources/webgl_test_files/resources/js-test-pre.js:
        * http/tests/webgl/1.0.2/resources/webkit-webgl-test-harness.js:
        * imported/blink/compositing/draws-content/webgl-simple-background.html:
        * webgl/1.0.2/resources/webgl_test_files/conformance/more/unit.js:
        * webgl/1.0.2/resources/webgl_test_files/resources/js-test-pre.js:
        * webgl/1.0.2/resources/webkit-webgl-test-harness.js:
        * webgl/1.0.3/resources/webgl_test_files/conformance/more/unit.js:
        * webgl/1.0.3/resources/webgl_test_files/resources/js-test-pre.js:
        * webgl/1.0.3/resources/webkit-webgl-test-harness.js:
        * webgl/resources/webkit-webgl-test-harness.js:

2016-03-13  Ryosuke Niwa  <rniwa@webkit.org>

        REGRESSION (r190840): crash inside details element's slotNameFunction
        https://bugs.webkit.org/show_bug.cgi?id=155388

        Reviewed by Antti Koivisto.

        Added a regression test.

        * fast/html/details-summary-tabindex-crash-expected.txt: Added.
        * fast/html/details-summary-tabindex-crash.html: Added.

2016-03-13  Dean Jackson  <dino@apple.com>

        <attachment> should be a runtime-enabled feature
        https://bugs.webkit.org/show_bug.cgi?id=155413
        <rdar://problem/25120753>

        Reviewed by Sam Weinig and Anders Carlsson.

        Now that <attachment> is disabled by default, use an
        internal setting to turn them back on test by test.

        * fast/attachment/attachment-default-icon-expected.html:
        * fast/attachment/attachment-default-icon.html:
        * fast/attachment/attachment-disabled-dom.html:
        * fast/attachment/attachment-disabled-rendering.html:
        * fast/attachment/attachment-dom.html:
        * fast/attachment/attachment-folder-icon-expected.html:
        * fast/attachment/attachment-folder-icon.html:
        * fast/attachment/attachment-icon-from-file-extension-expected.html:
        * fast/attachment/attachment-icon-from-file-extension.html:
        * fast/attachment/attachment-label-highlight.html:
        * fast/attachment/attachment-progress.html:
        * fast/attachment/attachment-rendering.html:
        * fast/attachment/attachment-select-on-click-inside-user-select-all.html:
        * fast/attachment/attachment-select-on-click.html:
        * fast/attachment/attachment-subtitle.html:
        * fast/attachment/attachment-title.html:
        * fast/attachment/attachment-type-attribute-expected.html:
        * fast/attachment/attachment-type-attribute.html:
        * editing/pasteboard/copy-paste-attachment.html:
        * editing/pasteboard/drag-and-drop-attachment-contenteditable.html:

2016-03-13  Antti Koivisto  <antti@apple.com>

        ComposedTreeIterator fails to traverse slots if root is shadow host
        https://bugs.webkit.org/show_bug.cgi?id=155407

        Reviewed by Darin Adler.

        * fast/shadow-dom/composed-tree-shadow-subtree-expected.txt: Added.
        * fast/shadow-dom/composed-tree-shadow-subtree.html: Added.

2016-03-12  Dean Jackson  <dino@apple.com>

        REGRESSION (r188647): Teamtreehouse website sidebar buttons are not rendered
        https://bugs.webkit.org/show_bug.cgi?id=155400
        <rdar://problem/24818602>

        Reviewed by Anders Carlsson.

        Add tests with SVG content that uses CSS filter
        shorthands. These particular filters are no-ops
        so should not affect rendering. If they actually
        tried to do something you wouldn't see them work
        until we enable shorthand filters on SVG content.

        * css3/filters/filters-on-svg-element-expected.html: Added.
        * css3/filters/filters-on-svg-element.html: Added.
        * css3/filters/filters-on-svg-root-expected.html: Added.
        * css3/filters/filters-on-svg-root.html: Added.

2016-03-12  Myles C. Maxfield  <mmaxfield@apple.com>

        [OS X] Scrollbars of overflow:scroll divs should appear on the left on RTL systems
        https://bugs.webkit.org/show_bug.cgi?id=155385

        Reviewed by Simon Fraser.

        * platform/mac-wk1/TestExpectations: 
        * platform/mac/TestExpectations: 
        * platform/efl/TestExpectations: 
        * platform/gtk/TestExpectations: 
        * platform/ios-simulator/TestExpectations: 
        * platform/win/TestExpectations: 
        * fast/scrolling/rtl-scrollbars-overflow-contents-expected.html: Added.
        * fast/scrolling/rtl-scrollbars-overflow-contents.html: Added.
        * fast/scrolling/rtl-scrollbars-overflow-dir-rtl-expected.html: Added.
        * fast/scrolling/rtl-scrollbars-overflow-dir-rtl.html: Added.
        * fast/scrolling/rtl-scrollbars-overflow-expected.html: Added.
        * fast/scrolling/rtl-scrollbars-overflow-padding-expected.html: Added.
        * fast/scrolling/rtl-scrollbars-overflow-padding.html: Added.
        * fast/scrolling/rtl-scrollbars-overflow-simple-expected-mismatch.html: Added.
        * fast/scrolling/rtl-scrollbars-overflow-simple.html: Added.
        * fast/scrolling/rtl-scrollbars-overflow.html: Added.

2016-03-12  Zalan Bujtas  <zalan@apple.com>

        [Forms: focus] focus rings around text fields do not follow contour (border-radius)
        https://bugs.webkit.org/show_bug.cgi?id=154099
        rdar://problem/9988429

        Reviewed by Tim Horton.

        Unfortunately there's no proper way to test native focusring drawing.
        These tests attempt to verify that we don't end up painting sharp corners.

        * fast/inline/hidpi-outline-auto-with-border-radius-horizontal-ltr-expected.html: Added.
        * fast/inline/hidpi-outline-auto-with-border-radius-horizontal-ltr.html: Added.
        * fast/inline/hidpi-outline-auto-with-border-radius-horizontal-rtl-expected.html: Added.
        * fast/inline/hidpi-outline-auto-with-border-radius-horizontal-rtl.html: Added.
        * fast/inline/hidpi-outline-auto-with-border-radius-vertical-ltr-expected.html: Added.
        * fast/inline/hidpi-outline-auto-with-border-radius-vertical-ltr.html: Added.
        * fast/inline/hidpi-outline-auto-with-border-radius-vertical-rtl-expected.html: Added.
        * fast/inline/hidpi-outline-auto-with-border-radius-vertical-rtl.html: Added.

2016-03-11  Ryosuke Niwa  <rniwa@webkit.org>

        Add Event.deepPath() and Event.scoped
        https://bugs.webkit.org/show_bug.cgi?id=153538
        <rdar://problem/24363836>

        Reviewed by Darin Adler.

        Added a W3C style testharness.js tests for Event.prototype.scoped, Event.prototype.scopedRelatedTarget,
        Event.prototype.deepPath() and a test that uses eventSender to verify the values of the scoped and
        scopedRelatedTarget flags on trusted events.

        * fast/shadow-dom/Extensions-to-Event-Interface-expected.txt: Added.
        * fast/shadow-dom/Extensions-to-Event-Interface.html: Added.
        * fast/shadow-dom/event-with-related-target.html:
        * fast/shadow-dom/resources: Added.
        * fast/shadow-dom/resources/event-path-test-helpers.js: Added. Extracted from event-with-related-target.html.
        * fast/shadow-dom/trusted-event-scoped-flags-expected.txt: Added.
        * fast/shadow-dom/trusted-event-scoped-flags.html: Added.
        * fast/xmlhttprequest/xmlhttprequest-get-expected.txt:
        * http/tests/workers/worker-importScriptsOnError-expected.txt:
        * inspector/model/remote-object-get-properties-expected.txt:
        * platform/ios-simulator/fast/shadow-dom/trusted-event-scoped-flags-expected.txt: Added.

2016-03-11  Jiewen Tan  <jiewen_tan@apple.com>

        WebKit should not be redirected to an invalid URL
        https://bugs.webkit.org/show_bug.cgi?id=155263
        <rdar://problem/22820172>

        Reviewed by Brent Fulgham.

        * http/tests/navigation/redirect-to-invalid-url-expected.txt: Added.
        * http/tests/navigation/redirect-to-invalid-url.html: Added.
        * http/tests/navigation/resources/redirect-to-invalid-url-frame.php: Added.

2016-03-11  Ryan Haddad  <ryanhaddad@apple.com>

        Marking media/track/track-in-band-style.html as flaky on Yosemite
        https://bugs.webkit.org/show_bug.cgi?id=153143

        Unreviewed test gardening.

        * platform/mac-wk1/TestExpectations:

2016-03-11  Mark Lam  <mark.lam@apple.com>

        Implement Function.name and Function#toString for ES6 class.
        https://bugs.webkit.org/show_bug.cgi?id=155336

        Reviewed by Geoffrey Garen.

        * js/class-syntax-name-expected.txt:
        * js/script-tests/class-syntax-name.js:
        (shouldBe):
        (shouldBeTrue):
        - Rebased expected result.

        * js/function-toString-vs-name.html:
        * js/script-tests/function-toString-vs-name.js:
        - Added new tests for class.

        * platform/mac/inspector/model/remote-object-expected.txt:
        - Rebased expected result.

2016-03-11  Ryan Haddad  <ryanhaddad@apple.com>

        Marking imported/blink/fast/multicol/dynamic/multicol-with-abspos-svg-with-foreignobject-with-multicol-crash.html as flaky
        https://bugs.webkit.org/show_bug.cgi?id=155339

        Unreviewed test gardening.

        This test is a flaky crash on ios-simulator debug.

        * platform/ios-simulator/TestExpectations:

2016-03-11  Ryan Haddad  <ryanhaddad@apple.com>

        Marking inspector/heap/getPreview.html as flaky on mac-wk2
        https://bugs.webkit.org/show_bug.cgi?id=155312

        Unreviewed test gardening.

        * platform/mac-wk2/TestExpectations:

2016-03-11  Ryan Haddad  <ryanhaddad@apple.com>

        Marking css3/masking/mask-luminance-svg.html and css3/masking/mask-svg-script-none-to-png.html as flaky
        https://bugs.webkit.org/show_bug.cgi?id=155372.

        Unreviewed test gardening.

        These two tests are flaky crashes on ios-simulator debug.

        * platform/ios-simulator/TestExpectations:

2016-03-11  Ryan Haddad  <ryanhaddad@apple.com>

        Unreviewed, rolling out r197984.

        This change caused an existing LayoutTest to fail

        Reverted changeset:

        "WebKit should not be redirected to an invalid URL"
        https://bugs.webkit.org/show_bug.cgi?id=155263
        http://trac.webkit.org/changeset/197984

2016-03-11  Yusuke Suzuki  <utatane.tea@gmail.com>

        [ES6] Implement Reflect.set without receiver support
        https://bugs.webkit.org/show_bug.cgi?id=155024

        Reviewed by Geoffrey Garen.

        * js/dom/reflect-set-onto-dom-expected.txt: Added.
        * js/dom/reflect-set-onto-dom.html: Added.
        * js/dom/script-tests/reflect-set-onto-dom.js: Added.

2016-03-11  Yoav Weiss  <yoav@yoav.ws>

        Avoid applying link tags with an invalid media attribute
        https://bugs.webkit.org/show_bug.cgi?id=143262

        Reviewed by Brent Fulgham.

        These tests make sure that when <link rel=stylesheet> is present with an invalid
        media attribute, the styles are not being applied.

        * fast/dom/HTMLLinkElement/link-stylesheet-invalid-media-expected.txt: Added.
        * fast/dom/HTMLLinkElement/link-stylesheet-invalid-media.html: Added.
        * fast/dom/HTMLLinkElement/link-stylesheet-media-type-expected.txt: Added.
        * fast/dom/HTMLLinkElement/link-stylesheet-media-type.html: Added.

        These tests test the old HTML4 behavior and are no longer relevant.
        * fast/media/media-descriptor-syntax-05.html: Removed.
        * fast/media/media-descriptor-syntax-05-expected.html: Removed.

2016-03-11  Frederic Wang  <fwang@igalia.com>

        Skip content-editable-as-textarea.html on GTK as it uses AX API.

        Unreviewed test gardening.

        * platform/gtk/TestExpectations:

2016-03-10  Jer Noble  <jer.noble@apple.com>

        CRASH at WebCore::RenderView::updateVisibleViewportRect
        https://bugs.webkit.org/show_bug.cgi?id=155209
        <rdar://problem/23997530>

        Reviewed by Simon Fraser.

        (These files were mistakenly landed in a previous commit:)
        * media/video-crash-invisible-autoplay-display-none-expected.txt: Added.
        * media/video-crash-invisible-autoplay-display-none.html: Added.

2016-03-10  Zalan Bujtas  <zalan@apple.com>

        Simple line layout: Add text-align: justify support.
        https://bugs.webkit.org/show_bug.cgi?id=155006

        Reviewed by Antti Koivisto.

        Rebaseline based on simple line layout output.

        * fast/text/whitespace/023-expected.txt:
        * platform/mac/css2.1/t0905-c5525-fltwidth-00-c-g-expected.txt:

2016-03-10  Nan Wang  <n_wang@apple.com>

        AX: Force allow user zoom
        https://bugs.webkit.org/show_bug.cgi?id=155056

        Reviewed by Simon Fraser.

        * fast/viewport/ios/force-always-user-scalable-expected.txt: Added.
        * fast/viewport/ios/force-always-user-scalable.html: Added.
        * platform/ios-simulator-wk2/TestExpectations:

2016-03-10  Jiewen Tan  <jiewen_tan@apple.com>

        WebKit should not be redirected to an invalid URL
        https://bugs.webkit.org/show_bug.cgi?id=155263
        <rdar://problem/22820172>

        Reviewed by Brent Fulgham.

        * http/tests/navigation/redirect-to-invalid-url-expected.txt: Added.
        * http/tests/navigation/redirect-to-invalid-url.html: Added.
        * http/tests/navigation/resources/redirect-to-invalid-url-frame.php: Added.

2016-03-10  Nan Wang  <n_wang@apple.com>

        AX: Implement bounds/position and index related text marker functions using TextIterator
        https://bugs.webkit.org/show_bug.cgi?id=154976

        Reviewed by Chris Fleizach.

        * accessibility/mac/text-marker-for-index-expected.txt: Added.
        * accessibility/mac/text-marker-for-index.html: Added.
        * accessibility/mac/text-marker-word-nav-expected.txt:
        * accessibility/mac/text-marker-word-nav.html:

2016-03-10  Myles C. Maxfield  <mmaxfield@apple.com>

        [Cocoa] Test gardening after r197933
        <rdar://problem/25091368>

        Unreviewed.

        * fast/text/woff2-expected.html:
        * fast/text/woff2.html:

2016-03-10  Daniel Bates  <dabates@apple.com>

        CSP: Implement frame-ancestors directive
        https://bugs.webkit.org/show_bug.cgi?id=154345
        <rdar://problem/24702161>

        Reviewed by Brent Fulgham.

        Adds new tests to ensure we ignore directive frame-ancestors when defined a policy delivered
        in an HTML meta element or in a report-only policy (i.e. delivered via HTTP header Content-
        Security-Policy-Report-Only). Also adds new test to ensure that we send a violation report
        when the directive frame-ancestors is violated.

        Updated many existing tests and test results that unnecessarily depended on a DOM SecurityError
        exception being thrown when accessing the content of a cross-origin frame. It is sufficient
        and more direct to test directive frame-ancestors by dumping the contents of all children frames
        on the page. We design the tests such that a child frame that was blocked by the frame-ancestors
        directive is expected to have no content. A child frame that was allowed by the frame-ancestors
        directive is expected to have content.

        * TestExpectations: Mark frame-ancestors tests as PASS so that we run them.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-in-meta-element-ignored-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-in-meta-element-ignored.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-in-report-only-ignored-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-in-report-only-ignored.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-none-block-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-none-block.html:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-self-block-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-self-block.html:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-star-allow-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-star-allow.html:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-url-allow-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-url-allow.html:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-url-block-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-url-block.html:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-none-block-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-none-block.html:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-self-block-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-self-block.html:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-star-allow-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-star-allow.html:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-url-allow-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-url-allow.html:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-url-block-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-url-block.html:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-none-block-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-none-block.html:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-self-block-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-self-block.html:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-star-allow-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-star-allow.html:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-url-allow-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-url-allow.html:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-url-block-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-url-block.html:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-none-block-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-none-block.html:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-self-allow-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-self-allow.html:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-star-allow-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-star-allow.html:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-url-allow-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-url-allow.html:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-url-block-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-url-block.html:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-none-block-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-none-block.html:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-protocolless-allow-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-protocolless-allow.html:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-self-allow-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-self-allow.html:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-self-block-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-self-block.html:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-star-allow-crossorigin-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-star-allow-crossorigin.html:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-star-allow-sameorigin-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-star-allow-sameorigin.html:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-url-allow-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-url-allow.html:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-url-block-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-url-block.html:
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/report-frame-ancestors-cross-origin-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/report-frame-ancestors-cross-origin-https-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/report-frame-ancestors-cross-origin-https.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/report-frame-ancestors-cross-origin.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/report-frame-ancestors-same-origin-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/report-frame-ancestors-same-origin-https-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/report-frame-ancestors-same-origin-https.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/report-frame-ancestors-same-origin.html: Added.
        * http/tests/security/contentSecurityPolicy/resources/echo-intertag.pl: Added.
        * http/tests/security/contentSecurityPolicy/resources/frame-ancestors-test.js:
        (done): Added.
        (injectIFrame): Modified to make use of handleFrameEvent().
        (handleFrameEvent): Added.
        (iframeLoaded): Deleted.
        * http/tests/security/contentSecurityPolicy/resources/frame-in-frame.pl:

2016-03-10  Andy VanWagoner  <andy@instructure.com>

        Add shouldNotBe to standalone test harness
        https://bugs.webkit.org/show_bug.cgi?id=155300

        Reviewed by Saam Barati.

        Copy over the shouldNotBe function from js-test-pre. This fixes errors
        introduced be new Intl tests.

        * resources/standalone-pre.js:
        (shouldNotBe):

2016-03-10  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline two inspector tests after r197954 changed the results.

        Unreviewed test gardening.

        * inspector/debugger/command-line-api-exception-expected.txt:
        * platform/mac/inspector/model/remote-object-expected.txt:

2016-03-10  Michael Saboff  <msaboff@apple.com>

        [ES6] Allow RegExp constructor to take pattern from an existing RegExp with new flags
        https://bugs.webkit.org/show_bug.cgi?id=155315

        Reviewed by Saam Barati.

        New and updated test for change.

        * fast/regex/constructor-expected.txt:
        * fast/regex/script-tests/constructor.js:
        Changed test for new behavior.`

        * js/regexp-old-regexp-new-flags-expected.txt: Added.
        * js/regexp-old-regexp-new-flags.html: Added.
        * js/script-tests/regexp-old-regexp-new-flags.js: Added.
        New test.

        * sputnik/Conformance/15_Native_Objects/15.10_RegExp/15.10.3/S15.10.3.1_A2_T1-expected.txt: Removed.
        * sputnik/Conformance/15_Native_Objects/15.10_RegExp/15.10.3/S15.10.3.1_A2_T1.html: Removed.
        * sputnik/Conformance/15_Native_Objects/15.10_RegExp/15.10.3/S15.10.3.1_A2_T2-expected.txt: Removed.
        * sputnik/Conformance/15_Native_Objects/15.10_RegExp/15.10.3/S15.10.3.1_A2_T2.html: Removed.
        * sputnik/Conformance/15_Native_Objects/15.10_RegExp/15.10.4/S15.10.4.1_A2_T1-expected.txt: Removed.
        * sputnik/Conformance/15_Native_Objects/15.10_RegExp/15.10.4/S15.10.4.1_A2_T1.html: Removed.
        * sputnik/Conformance/15_Native_Objects/15.10_RegExp/15.10.4/S15.10.4.1_A2_T2-expected.txt: Removed.
        * sputnik/Conformance/15_Native_Objects/15.10_RegExp/15.10.4/S15.10.4.1_A2_T2.html: Removed.
        * sputnik/Conformance/15_Native_Objects/15.10_RegExp/15.10.4/S15.10.4.1_A8_T8-expected.txt: Removed.
        * sputnik/Conformance/15_Native_Objects/15.10_RegExp/15.10.4/S15.10.4.1_A8_T8.html: Removed.
        Removed obsolete tests.

2016-03-10  Myles C. Maxfield  <mmaxfield@apple.com>

        [OS X] Main frame scrollbars should appear on the left on RTL systems
        https://bugs.webkit.org/show_bug.cgi?id=155149

        Reviewed by Simon Fraser.

        * fast/scrolling/rtl-scrollbars-expected.html: Added.
        * fast/scrolling/rtl-scrollbars-simple-expected-mismatch.html: Added.
        * fast/scrolling/rtl-scrollbars-simple.html: Added.
        * fast/scrolling/rtl-scrollbars.html: Added.
        * platform/mac-wk1/TestExpectations:
        * platform/mac/TestExpectations:
        * platform/efl/TestExpectations:
        * platform/gtk/TestExpectations:
        * platform/ios-simulator/TestExpectations:
        * platform/win/TestExpectations:

2016-03-07  Jer Noble  <jer.noble@apple.com>

        Add separate WK and WK2 preferences for requiring user gestures for video media, distinct from user gestures for media generally
        https://bugs.webkit.org/show_bug.cgi?id=155141

        Reviewed by Beth Dakin.

        Update layout tests to reflect new restriction name.

        * media/audio-playback-restriction-play-expected.txt:
        * media/audio-playback-restriction-play.html:
        * media/no-autoplay-with-user-gesture-requirement.html:
        * media/video-load-require-user-gesture.html:
        * media/video-play-require-user-gesture.html:
        * media/video-crash-invisible-autoplay-display-none-expected.txt: Added.
        * media/video-crash-invisible-autoplay-display-none.html: Added.
        * media/video-main-content-allow-expected.txt:
        * media/video-main-content-allow-then-deny-expected.txt:
        * media/video-main-content-allow-then-deny.html:
        * media/video-main-content-allow.html:
        * media/video-main-content-deny-display-none-expected.txt:
        * media/video-main-content-deny-display-none.html:
        * media/video-main-content-deny-not-in-dom-expected.txt:
        * media/video-main-content-deny-not-in-dom.html:
        * media/video-main-content-deny-not-visible-expected.txt:
        * media/video-main-content-deny-not-visible.html:
        * media/video-main-content-deny-obscured-expected.txt:
        * media/video-main-content-deny-obscured.html:
        * media/video-main-content-deny-too-small-expected.txt:
        * media/video-main-content-deny-too-small.html:

2016-03-10  Ryosuke Niwa  <rniwa@webkit.org>

        Add :defined support
        https://bugs.webkit.org/show_bug.cgi?id=155108

        Reviewed by Antti Koivisto.

        Added W3C style testharness.js tests and ref tests for :defined pseudo class.

        * fast/custom-elements/defined-pseudo-class-expected.txt: Added.
        * fast/custom-elements/defined-pseudo-class.html: Added.
        * fast/custom-elements/defined-rule-expected.html: Added.
        * fast/custom-elements/defined-rule.html: Added.

2016-03-10  Daniel Bates  <dabates@apple.com>

        CSP: Implement support for script and style nonces
        https://bugs.webkit.org/show_bug.cgi?id=116508
        <rdar://problem/24963980>

        Reviewed by Brent Fulgham.

        Update expected results due to differences between Blink and WebKit violation message formats.

        Additionally mark script- and style- nonce tests as PASS in LayoutTests/TestExpectations so
        that we run them.

        * TestExpectations:
        * http/tests/security/contentSecurityPolicy/1.1/scriptnonce-and-scripthash-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/scriptnonce-and-scripthash.html:
        * http/tests/security/contentSecurityPolicy/1.1/scriptnonce-basic-blocked-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/scriptnonce-ignore-unsafeinline-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/scriptnonce-invalidnonce-expected.txt: Also update result
        to reflect that we consider "'n-" an invalid source expression (as expected).
        * http/tests/security/contentSecurityPolicy/1.1/stylenonce-allowed-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/stylenonce-blocked-expected.txt:

2016-03-10  David Kilzer  <ddkilzer@apple.com>

        [iOS] DumpRenderTree crashes when accessing window.testRunner.inspectorTestStubURL
        <http://webkit.org/b/155295>

        Reviewed by Brent Fulgham.

        * platform/ios-simulator-wk1/TestExpectations:
        * platform/ios-simulator-wk2/TestExpectations:
        - Remove all "inspector/" tests.  They are already skipped in
          platform/ios-simulator/TestExpectations, so no need to
          resurrect them here.

2016-03-10  Daniel Bates  <dabates@apple.com>

        CSP: Implement support for inline script and inline style hashes
        https://bugs.webkit.org/show_bug.cgi?id=155007
        <rdar://problem/24964098>

        Reviewed by Brent Fulgham.

        Add new test http/tests/security/contentSecurityPolicy/1.1/scripthash-tests.html to ensure that
        script hashes are interpreted correctly. Update many existing tests that had a hash source with
        a SHA-1 hash to use a SHA-256 hash. The valid hash algorithms are SHA-256, SHA-384, and SHA-512
        per the Content Security Policy Level 3 spec. At the time of writing, Blink also supports SHA-1.

        * TestExpectations: Mark many CSP 1.1 tests as PASS so that we run them. Remove entries for tests
        http/tests/security/contentSecurityPolicy/1.1/{script, style}hash-default-src.html as these tests
        now pass.
        * http/tests/security/contentSecurityPolicy/1.1/resources/didRunInlineScriptEpilogue.js: Added.
        * http/tests/security/contentSecurityPolicy/1.1/resources/didRunInlineScriptPrologue.js: Added.
        * http/tests/security/contentSecurityPolicy/1.1/resources/testScriptHash.php: Added.
        * http/tests/security/contentSecurityPolicy/1.1/scripthash-allowed.html: Update test as SHA-1 is not
        a supported hash algorithm per the Content Security Policy Level 3 spec.
        * http/tests/security/contentSecurityPolicy/1.1/scripthash-basic-blocked-expected.txt: Ditto.
        * http/tests/security/contentSecurityPolicy/1.1/scripthash-basic-blocked.html: Ditto.
        * http/tests/security/contentSecurityPolicy/1.1/scripthash-default-src-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/scripthash-ignore-unsafeinline-expected.txt: Ditto.
        * http/tests/security/contentSecurityPolicy/1.1/scripthash-ignore-unsafeinline.html: Ditto.
        * http/tests/security/contentSecurityPolicy/1.1/scripthash-malformed-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/scripthash-tests-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/scripthash-tests.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/scripthash-unicode-normalization.html: Update test
        as SHA-1 is not a supported hash algorithm per the Content Security Policy Level 3 spec.
        * http/tests/security/contentSecurityPolicy/1.1/stylehash-allowed-expected.txt: Ditto.
        * http/tests/security/contentSecurityPolicy/1.1/stylehash-allowed.html: Ditto.
        * http/tests/security/contentSecurityPolicy/1.1/stylehash-basic-blocked-error-event.html: Ditto.
        * http/tests/security/contentSecurityPolicy/1.1/stylehash-basic-blocked-expected.txt: Ditto.
        * http/tests/security/contentSecurityPolicy/1.1/stylehash-basic-blocked.html: Ditto.
        * http/tests/security/contentSecurityPolicy/1.1/stylehash-default-src-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/stylehash-svg-style-basic-blocked-error-event.html: Update test
        as SHA-1 is not a supported hash algorithm per the Content Security Policy Level 3 spec.

2016-03-10  Frederic Wang  <fwang@igalia.com>

        [GTK] Add support for WOFF2
        https://bugs.webkit.org/show_bug.cgi?id=152616

        Reviewed by Carlos Garcia Campos.

        * fast/text/woff2-expected.html: Adjust font-size to work around anti-aliasing effects.
        * fast/text/woff2.html: Ditto.
        * platform/gtk/TestExpectations: Update test expectation of woff2 test for GTK.

2016-03-10  Manuel Rego Casasnovas  <rego@igalia.com>

        [css-grid] Fix placement for unknown named grid lines
        https://bugs.webkit.org/show_bug.cgi?id=155230

        Reviewed by Sergio Villar Senin.

        Updated current tests to the new expected behavior and created a new
        test checking different cases explicitly.

        * fast/css-grid-layout/grid-container-change-named-grid-lines-recompute-child.html:
        * fast/css-grid-layout/grid-item-bad-named-area-auto-placement-expected.txt:
        * fast/css-grid-layout/grid-item-bad-named-area-auto-placement.html:
        * fast/css-grid-layout/grid-item-named-grid-area-resolution.html:
        * fast/css-grid-layout/grid-item-named-grid-line-resolution-expected.txt:
        * fast/css-grid-layout/grid-item-named-grid-line-resolution.html:
        * fast/css-grid-layout/grid-item-negative-position-resolution.html:
        * fast/css-grid-layout/grid-item-position-changed-dynamic.html:
        * fast/css-grid-layout/grid-item-unknown-named-grid-line-resolution-expected.txt: Added.
        * fast/css-grid-layout/grid-item-unknown-named-grid-line-resolution.html: Added.
        * fast/css-grid-layout/named-grid-lines-with-named-grid-areas-resolution.html:

2016-03-09  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Get a RemoteObject or ObjectPreview from HeapSnapshot Object Identifier
        https://bugs.webkit.org/show_bug.cgi?id=155264
        <rdar://problem/25070716>

        Reviewed by Timothy Hatcher.

        * inspector/heap/getPreview-expected.txt: Added.
        * inspector/heap/getPreview.html: Added.
        * inspector/heap/getRemoteObject-expected.txt: Added.
        * inspector/heap/getRemoteObject.html: Added.
        Test the new protocol methods in different scenarios.

        * inspector/heap/snapshot-expected.txt:
        * inspector/heap/snapshot.html:
        Fix typo.

2016-03-09  Andy VanWagoner  <thetalecrafter@gmail.com>

        [INTL] Intl Constructors not web compatible with Object.create usage
        https://bugs.webkit.org/show_bug.cgi?id=153679

        Reviewed by Darin Adler.

        Add tests for Object.create + contructor.call initialization of NumberFormat
        and DateTimeFormat objects.

        * js/intl-datetimeformat-expected.txt:
        * js/intl-numberformat-expected.txt:
        * js/script-tests/intl-datetimeformat.js:
        * js/script-tests/intl-numberformat.js:

2016-03-09  Ryosuke Niwa  <rniwa@webkit.org>

        defineElement should upgrade existing unresolved custom elements
        https://bugs.webkit.org/show_bug.cgi?id=155107

        Reviewed by Darin Adler.

        Added W3C style testharness.js tests for asynchronously defining custom elements.

        * fast/custom-elements/upgrading/Node-cloneNode.html:
        * fast/custom-elements/upgrading/upgrading-parser-created-element-expected.txt: Added.
        * fast/custom-elements/upgrading/upgrading-parser-created-element.html: Added.

2016-03-09  Saam Barati  <sbarati@apple.com>

        ES6: Implement lexical scoping for function definitions in strict mode
        https://bugs.webkit.org/show_bug.cgi?id=152844

        Reviewed by Geoffrey Garen.

        * js/let-syntax-expected.txt:
        * js/parser-syntax-check-expected.txt:
        * js/script-tests/parser-syntax-check.js:
        (testFailed):
        (runTest):

2016-03-09  Jer Noble  <jer.noble@apple.com>

        Add heuristic for "main content" videos which override user gesture requirements
        https://bugs.webkit.org/show_bug.cgi?id=155224

        Reviewed by Eric Carlson.

        * media/video-main-content-allow-expected.txt: Added.
        * media/video-main-content-allow-then-deny-expected.txt: Added.
        * media/video-main-content-allow-then-deny.html: Added.
        * media/video-main-content-allow.html: Added.
        * media/video-main-content-deny-display-none-expected.txt: Added.
        * media/video-main-content-deny-display-none.html: Added.
        * media/video-main-content-deny-not-in-dom-expected.txt: Added.
        * media/video-main-content-deny-not-in-dom.html: Added.
        * media/video-main-content-deny-not-visible-expected.txt: Added.
        * media/video-main-content-deny-not-visible.html: Added.
        * media/video-main-content-deny-obscured-expected.txt: Added.
        * media/video-main-content-deny-obscured.html: Added.
        * media/video-main-content-deny-too-small-expected.txt: Added.
        * media/video-main-content-deny-too-small.html: Added.

2016-03-09  Ryan Haddad  <ryanhaddad@apple.com>

        Skipping js/regress/getter-richards-try-catch.html on ios-simulator debug
        https://bugs.webkit.org/show_bug.cgi?id=155271

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-03-09  Ryan Haddad  <ryanhaddad@apple.com>

        Skip two flaky tests on mac-wk1
        https://bugs.webkit.org/show_bug.cgi?id=155196

        Unreviewed test gardening.

        media/video-with-blob-url-allowed-by-csp-media-src-star.html and media/video-with-data-url-allowed-by-csp-media-src-star.html
        are flaky on mac-wk1. Skipping to get bots to green during investigation.

        * platform/mac-wk1/TestExpectations:

2016-03-09  Ryosuke Niwa  <rniwa@webkit.org>

        Rename Node.treeRoot to rootNode and turn it on by default
        https://bugs.webkit.org/show_bug.cgi?id=155226

        Reviewed by Antonio Gomes.
        
        Split Node-interface-treeRoot.html into two pieces, the one that doesn't invoke shadow DOM and the other that tests
        shadow DOM related cases. I intend to upstream these tests to W3C at some point so keep them in testharness.js form.

        * fast/dom/Node/rootNode-expected.txt: Added.
        * fast/dom/Node/rootNode.html: Copied from LayoutTests/fast/shadow-dom/Node-interface-treeRoot.html.
        * fast/shadow-dom/Node-interface-rootNode-expected.txt: Renamed from Node-interface-treeRoot-expected.txt.
        * fast/shadow-dom/Node-interface-rootNode.html: Renamed from LayoutTests/fast/shadow-dom/Node-interface-treeRoot.html.
        * js/dom/dom-static-property-for-in-iteration-expected.txt:
        * platform/efl/js/dom/dom-static-property-for-in-iteration-expected.txt:
        * platform/gtk/js/dom/dom-static-property-for-in-iteration-expected.txt:

2016-03-09  Michael Saboff  <msaboff@apple.com>

        [ES6] Implement RegExp sticky flag and related functionality
        https://bugs.webkit.org/show_bug.cgi?id=155177

        Reviewed by Saam Barati.

        New and updated tests.

        * js/Object-getOwnPropertyNames-expected.txt:
        * js/regexp-flags-expected.txt:
        * js/regexp-sticky-expected.txt: Added.
        * js/regexp-sticky.html: Added.
        * js/script-tests/Object-getOwnPropertyNames.js:
        * js/script-tests/regexp-flags.js:
        (RegExp.prototype.hasOwnProperty): Deleted check for sticky property.
        * js/script-tests/regexp-sticky.js: New test.
        (asString):
        (testStickyExec):
        (testStickyMatch):

2016-03-09  Mark Lam  <mark.lam@apple.com>

        FunctionExecutable::ecmaName() should not be based on inferredName().
        https://bugs.webkit.org/show_bug.cgi?id=155203

        Reviewed by Michael Saboff.

        * js/script-tests/function-toString-vs-name.js:
        - Fixed up object property test section and added new test cases.
        * platform/mac/http/tests/media/media-source/mediasource-sourcebuffer-mode-expected.txt:

2016-03-09  Chris Dumez  <cdumez@apple.com>

        Align HTMLKeygenElement.keytype with the specification
        https://bugs.webkit.org/show_bug.cgi?id=155214

        Reviewed by Darin Adler.

        Add test coverage for HTMLKeygenElement.keytype.

        * fast/dom/HTMLKeygenElement/keygen-keytype-expected.txt: Added.
        * fast/dom/HTMLKeygenElement/keygen-keytype.html: Added.

2016-03-09  Ryan Haddad  <ryanhaddad@apple.com>

        Cleaning up TestExpectations files to remove deleted tests and duplicate entries for ios-simulator.

        Unreviewed test gardening.

        * TestExpectations:
        * platform/ios-simulator/TestExpectations:

2016-03-09  Ryan Haddad  <ryanhaddad@apple.com>

        Skipping fast/events/max-tabindex-focus.html on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=155233

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-03-08  Brent Fulgham  <bfulgham@apple.com>

        Local HTML should be blocked from localStorage access unless "Disable Local File Restrictions" is checked..
        https://bugs.webkit.org/show_bug.cgi?id=155185
        <rdar://problem/11101440>

        Reviewed by Zalan Bujtas.

        * storage/domstorage/localstorage/blocked-file-access-expected.txt: Added.
        * storage/domstorage/localstorage/blocked-file-access.html: Added.
        * storage/domstorage/localstorage/resources/blocked-example.html: Added.

2016-03-09  Manuel Rego Casasnovas  <rego@igalia.com>

        [css-grid] Allow to place positioned grid items on the padding
        https://bugs.webkit.org/show_bug.cgi?id=155199

        Reviewed by Sergio Villar Senin.

        Add new tests and updated results in a current one.

        * fast/css-grid-layout/grid-positioned-items-implicit-grid.html:
        * fast/css-grid-layout/grid-positioned-items-padding-expected.txt: Added.
        * fast/css-grid-layout/grid-positioned-items-padding.html: Added.
        * fast/css-grid-layout/grid-positioned-items-within-grid-implicit-track-expected.txt: Added.
        * fast/css-grid-layout/grid-positioned-items-within-grid-implicit-track.html: Added.

2016-03-09  Andreas Kling  <akling@apple.com>

        ImageDocuments leak their world.
        <https://webkit.org/b/155167>
        <rdar://problem/24987363>

        Reviewed by Antti Koivisto.

        Made a little test that loads an image into an <iframe> 10 times and then
        triggers a garbage collection and checks that all the documents got destroyed.

        Prior to this change, all 10 ImageDocuments would remain alive at the end.

        This got rolled out the first time because it failed on bots. It failed due
        to expecting a specific number of documents to be live at the start of the
        test, which was not reliable on bots since we appear to have more leaks(!)

        Tweaked the test to check the delta in live document count instead.

        * fast/dom/ImageDocument-world-leak-expected.txt: Added.
        * fast/dom/ImageDocument-world-leak.html: Added.

2016-03-08  Sergio Villar Senin  <svillar@igalia.com>

        [css-grid] Fix auto-track sizing with min-size:auto and specific sizes
        https://bugs.webkit.org/show_bug.cgi?id=155165

        Reviewed by Darin Adler.

        * fast/css-grid-layout/grid-automatic-minimum-for-auto-columns-expected.txt:
        * fast/css-grid-layout/grid-automatic-minimum-for-auto-columns.html:
        * fast/css-grid-layout/grid-automatic-minimum-for-auto-rows-expected.txt:
        * fast/css-grid-layout/grid-automatic-minimum-for-auto-rows.html:

2016-03-09  Manuel Rego Casasnovas  <rego@igalia.com>

        [css-grid] Initial support for implicit grid before explicit grid
        https://bugs.webkit.org/show_bug.cgi?id=155014

        Reviewed by Darin Adler.

        Updated results in current tests and added specific test for this.

        * fast/css-grid-layout/grid-auto-flow-resolution.html:
        * fast/css-grid-layout/grid-item-negative-position-resolution.html:
        * fast/css-grid-layout/grid-item-spanning-resolution.html:
        * fast/css-grid-layout/implicit-tracks-before-explicit-expected.txt: Added.
        * fast/css-grid-layout/implicit-tracks-before-explicit.html: Added.

2016-03-09  Myles C. Maxfield  <mmaxfield@apple.com>

        [iOS] Arabic text on Wikipedia is shown as boxes
        https://bugs.webkit.org/show_bug.cgi?id=155129
        <rdar://problem/24919902>

        Reviewed by Darin Adler.

        This test is iOS-specific.

        * platform/efl/TestExpectations:
        * platform/gtk/TestExpectations:
        * platform/mac/TestExpectations:
        * platform/win/TestExpectations:
        * fast/text/arabic-blacklisted-expected.html: Added.
        * fast/text/arabic-blacklisted.html: Added.

2016-03-08  Chris Dumez  <cdumez@apple.com>

        Element with maximum tabIndex cannot be returned by nextElementWithGreaterTabIndex()
        https://bugs.webkit.org/show_bug.cgi?id=155215

        Reviewed by Ryosuke Niwa.

        Add test to make sure that an Element with a tabIndex equal to
        2147483647 (maximum tabIndex) can be focused.

        * fast/events/max-tabindex-focus-expected.txt: Added.
        * fast/events/max-tabindex-focus.html: Added.

2016-03-08  Filip Pizlo  <fpizlo@apple.com>

        DFG should be able to constant-fold strings
        https://bugs.webkit.org/show_bug.cgi?id=155200

        Reviewed by Geoffrey Garen.

        * js/regress/script-tests/strcat-const.js: Added.
        (foo):
        (bar):
        * js/regress/script-tests/strcat-length-const.js: Added.
        (foo):
        (bar):
        * js/regress/strcat-const-expected.txt: Added.
        * js/regress/strcat-const.html: Added.
        * js/regress/strcat-length-const-expected.txt: Added.
        * js/regress/strcat-length-const.html: Added.

2016-03-08  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Add Heap domain start/stop tracking commands
        https://bugs.webkit.org/show_bug.cgi?id=155190

        Reviewed by Brian Burg.

        * inspector/heap/tracking-expected.txt: Added.
        * inspector/heap/tracking.html: Added.

2016-03-08  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Add a way to create a Heap Snapshot
        https://bugs.webkit.org/show_bug.cgi?id=155188

        Reviewed by Brian Burg.

        * inspector/heap/snapshot-expected.txt: Added.
        * inspector/heap/snapshot.html: Added.

2016-03-08  Ryan Haddad  <ryanhaddad@apple.com>

        Move two indexeddb test skips out of wk2/TestExpectations and in to TestExpectations.

        Unreviewed test gardening.

        * TestExpectations:
        * platform/wk2/TestExpectations:

2016-03-08  Mark Lam  <mark.lam@apple.com>

        Implement Function.name support for getters/setters and inferring name of function properties.
        https://bugs.webkit.org/show_bug.cgi?id=154865

        Reviewed by Geoffrey Garen.

        * js/function-toString-vs-name-expected.txt: Added.
        * js/function-toString-vs-name.html: Added.
        * js/script-tests/function-toString-vs-name.js: Added.

2016-03-08  Myles C. Maxfield  <mmaxfield@apple.com>

        Font size computed style is innaccurate
        https://bugs.webkit.org/show_bug.cgi?id=154705
        <rdar://problem/23474068>

        Reviewed by Timothy Hatcher.

        Update expected results.

        * css3/calc/font-size-fractional-expected.txt:
        * css3/viewport-percentage-lengths/viewport-percentage-lengths-relative-font-size.html:
        * css3/viewport-percentage-lengths/viewport-percentage-lengths-relative-font-size-expected.txt:
        * editing/mac/attributed-string/font-size-expected.txt:
        * editing/mac/attributed-string/vertical-align-expected.txt:
        * platform/mac-mavericks/editing/mac/attributed-string/font-size-expected.txt:
        * platform/mac-mavericks/editing/mac/attributed-string/vertical-align-expected.txt:
        * platform/mac-yosemite/editing/mac/attributed-string/font-size-expected.txt:
        * platform/mac-yosemite/editing/mac/attributed-string/vertical-align-expected.txt:

2016-03-08  Ryan Haddad  <ryanhaddad@apple.com>

        Marking storage/domstorage/events/basic-body-attribute.html as flaky on ios-simulator-wk2
        https://bugs.webkit.org/show_bug.cgi?id=155201

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/TestExpectations:

2016-03-08  Myles C. Maxfield  <mmaxfield@apple.com>

        [Font Loading] Crash when a single load request causes multiple fonts to fail loading
        https://bugs.webkit.org/show_bug.cgi?id=155009

        Reviewed by Simon Fraser.

        * fast/text/font-face-set-document-multiple-failure-expected.txt: Added.
        * fast/text/font-face-set-document-multiple-failure.html: Added.

2016-03-08  Ryan Haddad  <ryanhaddad@apple.com>

        Skip fast/events/prevent-default-prevents-interaction-with-scrollbars.html on ios-simulator

        Unreviewed test gardening.

        The test relies on mouse events, which are unsupported on ios-simulator.

        * platform/ios-simulator/TestExpectations:

2016-03-08  Ryan Haddad  <ryanhaddad@apple.com>

        Skip css3/filters tests that seem to cause a crash on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=153933

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-03-08  Commit Queue  <commit-queue@webkit.org>

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

        Has platform-specific code in non-platform files (Requested by
        smfr on #webkit).

        Reverted changeset:

        "AX: Force allow user zoom"
        https://bugs.webkit.org/show_bug.cgi?id=155056
        http://trac.webkit.org/changeset/197766

2016-03-08  Ryan Haddad  <ryanhaddad@apple.com>

        Skip svg/animations/animate-marker-orient-from-angle-to-autostartreverse.html on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=155174

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-03-08  Antonio Gomes  <tonikitoo@webkit.org>

        Scrolling does not work when the mouse down is handled by a node
        https://bugs.webkit.org/show_bug.cgi?id=19033

        Reviewed by Simon Fraser.

        * fast/events/prevent-default-prevents-interaction-with-scrollbars-expected.txt: Added.
        * fast/events/prevent-default-prevents-interaction-with-scrollbars.html: Added.

2016-03-08  Michael Saboff  <msaboff@apple.com>

        [ES6] Regular Expression canonicalization tables for Unicode need to be updated to use Unicode CaseFolding.txt
        https://bugs.webkit.org/show_bug.cgi?id=155114

        Reviewed by Darin Adler.

        Updated test cases.

        * js/regexp-unicode-expected.txt:
        * js/script-tests/regexp-unicode.js:

2016-03-08  Commit Queue  <commit-queue@webkit.org>

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

        The test added with this change is failing on all platforms.
        (Requested by ryanhaddad on #webkit).

        Reverted changeset:

        "ImageDocuments leak their world."
        https://bugs.webkit.org/show_bug.cgi?id=155167
        http://trac.webkit.org/changeset/197765

2016-03-08  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline WPT reflection tests for ios-simulator after r197726

        Unreviewed test gardening.

        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/reflection-embedded-expected.txt:
        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/reflection-forms-expected.txt:

2016-03-08  Nan Wang  <n_wang@apple.com>

        AX: Force allow user zoom
        https://bugs.webkit.org/show_bug.cgi?id=155056

        Reviewed by Chris Fleizach.

        * accessibility/ios-simulator/force-user-scalable-expected.txt: Added.
        * accessibility/ios-simulator/force-user-scalable.html: Added.

2016-03-08  Andreas Kling  <akling@apple.com>

        ImageDocuments leak their world.
        <https://webkit.org/b/155167>
        <rdar://problem/24987363>

        Reviewed by Antti Koivisto.

        Made a little test that loads an image into an <iframe> 10 times and then
        triggers a garbage collection and checks that all the documents got destroyed.

        Prior to this change, all 10 ImageDocuments would remain alive at the end.

        * fast/dom/ImageDocument-world-leak-expected.txt: Added.
        * fast/dom/ImageDocument-world-leak.html: Added.

2016-03-08  Alejandro G. Castro  <alex@igalia.com>

        Unreviewed EFL build fix after r197752.

        * platform/efl/TestExpectations: Avoid running the mediastream
        tests until the support is implemented and compiled by default.

2016-03-08  Alejandro G. Castro  <alex@igalia.com>

        [GTK] [EFL] Avoid running mediastream tests by default until we compile by default
        https://bugs.webkit.org/show_bug.cgi?id=153540

        Reviewed by Philippe Normand.

        After bumping gstreamer to 1.6.3 in r196804 we can enable again
        compilation of mediastream and running the tests. We have updated
        the expectations accordingly.

        * platform/efl/TestExpectations:
        * platform/gtk/TestExpectations:

2016-03-08  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        [Fetch API] Implement fetch skeleton
        https://bugs.webkit.org/show_bug.cgi?id=155111

        Reviewed by Darin Adler.

        * TestExpectations: Marking some tests as flaky.

2016-03-08  Nikos Andronikos  <nikos.andronikos-webkit@cisra.canon.com.au>

        [SVG2] Implement marker orient='auto-start-reverse'
        https://bugs.webkit.org/show_bug.cgi?id=138456

        Reviewed by Darin Adler.

        * svg/animations/animate-marker-orient-from-angle-to-autostartreverse-expected.txt: Added.
        * svg/animations/animate-marker-orient-from-angle-to-autostartreverse.html: Added.
        * svg/animations/animate-marker-orienttype-4-expected.html: Added.
        * svg/animations/animate-marker-orienttype-4.html: Added.
          Verify output after animation has run - ensure animation reflected in visual result.
        * svg/animations/script-tests/animate-marker-orient-from-angle-to-autostartreverse.js: Added.
          Test DOM values at various snap-shot times throughout the animation.
        (sample1):
        (sample2):
        (sample3):
        (executeTest):
        * svg/custom/marker-auto-start-reverse-expected.html: Added.
        * svg/custom/marker-auto-start-reverse.html: Added.
          Verify static result - start marker is oriented at 180 degrees to direction of path.
        * svg/dom/SVGAnimatedEnumeration-SVGMarkerElement-expected.txt:
        * svg/dom/script-tests/SVGAnimatedEnumeration-SVGMarkerElement.js:
          Check attributes are treated as case sensitive.
          Check UNKNOWN is returned for enum value when auto-start-reverse set.

2016-03-07  Chris Dumez  <cdumez@apple.com>

        Stop clamping HTMLElement.tabIndex to the range of a short
        https://bugs.webkit.org/show_bug.cgi?id=155159

        Reviewed by Ryosuke Niwa.

        Drop outdated test.

        * fast/dom/tabindex-clamp-expected.txt: Removed.
        * fast/dom/tabindex-clamp.html: Removed.

2016-03-07  Daniel Bates  <dabates@apple.com>

        CSP: Source '*' should not match URLs with schemes blob, data, or filesystem
        https://bugs.webkit.org/show_bug.cgi?id=154122
        <rdar://problem/24613336>

        Reviewed by Brent Fulgham.

        Add tests to ensure that we do not regress our interpretation of * with respect to directives
        img-src, media-src, style-src, and default-src.

        When running in WebKitTestRunner, skip the tests fast/dom/HTMLImageElement/image-with-blob-url-blocked-by-csp-img-src-star.html
        and media/video-with-blob-url-allowed-by-csp-media-src-star.html as they make use of eventSender.beginDragWithFiles(),
        which is not implement. We will need to fix <https://bugs.webkit.org/show_bug.cgi?id=64285>
        before we can run these tests in WebKitTestRunner.

        * TestExpectations:
        * fast/dom/HTMLImageElement/image-with-blob-url-blocked-by-csp-img-src-star-expected.html: Added.
        * fast/dom/HTMLImageElement/image-with-blob-url-blocked-by-csp-img-src-star.html: Added.
        * fast/dom/HTMLImageElement/image-with-data-url-allowed-by-csp-img-src-star-expected.html: Added.
        * fast/dom/HTMLImageElement/image-with-data-url-allowed-by-csp-img-src-star.html: Added.
        * fast/dom/HTMLImageElement/image-with-file-url-blocked-by-csp-img-src-star-expected.html: Added.
        * fast/dom/HTMLImageElement/image-with-file-url-blocked-by-csp-img-src-star.html: Added.
        * fast/dom/HTMLImageElement/resources/green.png: Added.
        * fast/dom/HTMLLinkElement/link-with-blob-url-blocked-by-csp-style-src-star-expected.html: Added.
        * fast/dom/HTMLLinkElement/link-with-blob-url-blocked-by-csp-style-src-star.html: Added.
        * fast/dom/HTMLLinkElement/link-with-data-url-blocked-by-csp-style-src-star-expected.html: Added.
        * fast/dom/HTMLLinkElement/link-with-data-url-blocked-by-csp-style-src-star.html: Added.
        * fast/dom/HTMLLinkElement/link-with-file-url-blocked-by-csp-style-src-star-expected.html: Added.
        * fast/dom/HTMLLinkElement/link-with-file-url-blocked-by-csp-style-src-star.html: Added.
        * fast/dom/HTMLLinkElement/resources/red-background-color.css: Added.
        (#test):
        * http/tests/security/contentSecurityPolicy/image-with-http-url-allowed-by-csp-img-src-star-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/image-with-http-url-allowed-by-csp-img-src-star.html: Added.
        * http/tests/security/contentSecurityPolicy/image-with-https-url-allowed-by-csp-img-src-star-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/image-with-https-url-allowed-by-csp-img-src-star.html: Added.
        * http/tests/security/contentSecurityPolicy/javascript-url-blocked-by-default-src-star-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/javascript-url-blocked-by-default-src-star.html: Added.
        * http/tests/security/contentSecurityPolicy/link-with-http-url-allowed-by-csp-style-src-star-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/link-with-http-url-allowed-by-csp-style-src-star.html: Added.
        * http/tests/security/contentSecurityPolicy/link-with-https-url-allowed-by-csp-style-src-star-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/link-with-https-url-allowed-by-csp-style-src-star.html: Added.
        * http/tests/security/contentSecurityPolicy/video-with-http-url-allowed-by-csp-media-src-star-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/video-with-http-url-allowed-by-csp-media-src-star.html: Added.
        * http/tests/security/contentSecurityPolicy/video-with-https-url-allowed-by-csp-media-src-star-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/video-with-https-url-allowed-by-csp-media-src-star.html: Added.
        * media/video-with-blob-url-allowed-by-csp-media-src-star-expected.html: Added.
        * media/video-with-blob-url-allowed-by-csp-media-src-star.html: Added.
        * media/video-with-data-url-allowed-by-csp-media-src-star-expected.html: Added.
        * media/video-with-data-url-allowed-by-csp-media-src-star.html: Added.
        * media/video-with-file-url-blocked-by-csp-media-src-star-expected.html: Added.
        * media/video-with-file-url-blocked-by-csp-media-src-star.html: Added.
        * platform/wk2/TestExpectations:

2016-03-07  Alex Christensen  <achristensen@webkit.org>

        Fix cookies with private browsing and NetworkSession
        https://bugs.webkit.org/show_bug.cgi?id=155147
        rdar://problem/25018279

        Reviewed by Brady Eidson.

        * http/tests/cookies/private-cookie-storage-expected.txt: Added.
        * http/tests/cookies/private-cookie-storage.html: Added.

2016-03-07  Ryan Haddad  <ryanhaddad@apple.com>

        Marking media/track/track-cues-pause-on-exit.html as flaky on ElCapitan Debug WK2
        https://bugs.webkit.org/show_bug.cgi?id=155151

        Unreviewed test gardening.

        * platform/mac-wk2/TestExpectations:

2016-03-07  Ryan Haddad  <ryanhaddad@apple.com>

        Marking imported/w3c/indexeddb/idbcursor-advance-continue-async.htm as flaky on Yosemite Release WK2
        https://bugs.webkit.org/show_bug.cgi?id=154606

        Unreviewed test gardening.

        * platform/mac-wk2/TestExpectations:

2016-03-07  Ryan Haddad  <ryanhaddad@apple.com>

        Marking js/promises-tests/promises-tests-2-3-3.html as flaky on mac
        https://bugs.webkit.org/show_bug.cgi?id=155140

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-03-07  Ryan Haddad  <ryanhaddad@apple.com>

        Marking inspector/console/addInspectedNode.html as flaky on Yosemite WK2
        https://bugs.webkit.org/show_bug.cgi?id=155138

        Unreviewed test gardening.

        * platform/mac-wk2/TestExpectations:

2016-03-07  Ryan Haddad  <ryanhaddad@apple.com>

        Skipping css3/filters/huge-region-composited.html on ios-simulator in an 
        attempt to eliminate a flaky crash.
        https://bugs.webkit.org/show_bug.cgi?id=153933

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-03-07  Ryan Haddad  <ryanhaddad@apple.com>

        Skip unsupported plugin tests from r197697 on ios-simulator

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-03-07  Ryan Haddad  <ryanhaddad@apple.com>

        Skip storage/indexeddb/intversion-open-in-upgradeneeded.html on mac-wk2
        https://bugs.webkit.org/show_bug.cgi?id=155050

        Unreviewed test gardening.

        * platform/mac-wk2/TestExpectations:

2016-03-07  Adam Bergkvist  <adam.bergkvist@ericsson.com>

        WebRTC: Implement MediaEndpointPeerConnection::createOffer()
        https://bugs.webkit.org/show_bug.cgi?id=154867

        Reviewed by Eric Carlson and Jer Noble.

        The output SDP from createOffer() is processed by verifying all variable
        identifiers, such as session and user id, and replacing them with
        predefined values to make the SDP comparable with an expected result.

        The test is currently skipped on the mac port until support to read the
        SDPProcessor JavaScript resource is added.

        * fast/mediastream/RTCPeerConnection-inspect-offer-expected.txt: Added.
        * fast/mediastream/RTCPeerConnection-inspect-offer.html: Added.
        * platform/mac/TestExpectations:

2016-03-07  Ryan Haddad  <ryanhaddad@apple.com>

        Skip storage/indexeddb/modern/exceed-open-file-limit.html
        https://bugs.webkit.org/show_bug.cgi?id=155091

        Unreviewed test gardening.

        * platform/wk2/TestExpectations:

2016-03-07  Daniel Bates  <dabates@apple.com>

        CSP: object-src directive should prohibit creation of nested browsing context
        https://bugs.webkit.org/show_bug.cgi?id=153153
        <rdar://problem/24383209>

        Reviewed by Brent Fulgham.

        Add test to ensure that we enforce the Content Security Policy object-src directive
        for HTML object and HTML embed elements that behave like an HTML iframe element.

        * TestExpectations: Remove entries for tests that pass.
        * http/tests/security/contentSecurityPolicy/embed-src-url-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/embed-src-url-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/embed-src-url-blocked2-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/embed-src-url-blocked2.html: Added.

        * http/tests/security/contentSecurityPolicy/object-src-param-code-blocked-expected.txt:
        * http/tests/security/contentSecurityPolicy/object-src-param-movie-blocked-expected.txt:
        * http/tests/security/contentSecurityPolicy/object-src-param-movie-blocked.html:
        * http/tests/security/contentSecurityPolicy/object-src-param-src-blocked-expected.txt:
        * http/tests/security/contentSecurityPolicy/object-src-param-src-blocked.html:
        * http/tests/security/contentSecurityPolicy/object-src-param-src-blocked2-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/object-src-param-src-blocked2.html: Added.
        * http/tests/security/contentSecurityPolicy/object-src-param-url-blocked-expected.txt:
        * http/tests/security/contentSecurityPolicy/object-src-param-url-blocked.html:
        Simplify the code used in the above tests and update incorrect expected results.

        * http/tests/security/contentSecurityPolicy/object-src-url-blocked2-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/object-src-url-blocked2.html: Added.
        * http/tests/security/contentSecurityPolicy/resources/object-src-param.js: Removed.

2016-03-07  Ryan Haddad  <ryanhaddad@apple.com>

        Marking js/arraybuffer-wrappers.html as a flaky timeout on Mac
        https://bugs.webkit.org/show_bug.cgi?id=155092

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-03-07  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline inspector/model/remote-object.html for mac after r197626
        https://bugs.webkit.org/show_bug.cgi?id=155115

        Unreviewed test gardening.

        * platform/mac/inspector/model/remote-object-expected.txt:

2016-03-07  Simon Fraser  <simon.fraser@apple.com>

        [iOS Simulator] Three object-position tests failing after r197618
        https://bugs.webkit.org/show_bug.cgi?id=155116

        Mark two tests as image failures, and add new results for a compositing test.

        * platform/ios-simulator/TestExpectations:
        * platform/ios-simulator/compositing/video/video-object-position-expected.txt: Added.

2016-03-07  Manuel Rego Casasnovas  <rego@igalia.com>

        [css-grid] Add missing test for grid-template shorthand
        https://bugs.webkit.org/show_bug.cgi?id=155013

        Reviewed by Sergio Villar Senin.

        We support the following syntax in grid-template shorthand:
            -webkit-grid-template: [foo1] 'a' 50px [foo2]
                                   [bar1] 'b' 50px [bar2] / 100px;

        But we don't have a test to check that grid-template-rows value
        has the names of the same lines grouped. So it's:
            [foo1] 50px [foo2 bar1] 50px [bar2];

        This means that if we remove the third argument in
        CSSParser::parseGridLineNames(), all the current tests are passing.

        Without that argument, the value for grid-template-rows would be:
            [foo1] 50px [foo2] [bar1] 50px [bar2];

        Which is wrong.

        This patch adds a specific test case for this which would fail
        in that case.

        * fast/css-grid-layout/grid-template-shorthand-get-set-expected.txt:
        * fast/css-grid-layout/grid-template-shorthand-get-set.html:

2016-03-06  Zalan Bujtas  <zalan@apple.com>

        [iOS] Some more gardening after r197627.

        Unreviewed.

        * platform/ios-simulator/TestExpectations: skip a test.

2016-03-06  Zalan Bujtas  <zalan@apple.com>

        [iOS] Gardening after r197627.

        Unreviewed.

        * platform/ios-simulator/TestExpectations:

2016-03-06  Filip Pizlo  <fpizlo@apple.com>

        RegExpMatchesArray doesn't know how to have a bad time
        https://bugs.webkit.org/show_bug.cgi?id=155069

        Reviewed by Yusuke Suzuki.

        * js/regress/regexp-exec-expected.txt: Added.
        * js/regress/regexp-exec.html: Added.
        * js/regress/script-tests/regexp-exec.js: Added.

2016-03-06  Zalan Bujtas  <zalan@apple.com>

        [iOS] Gardening after r197627.

        Unreviewed.

        * platform/ios-simulator/css2.1/20110323/border-conflict-style-088-expected.txt:

2016-03-05  Zalan Bujtas  <zalan@apple.com>

        [iOS] Gardening after r197627.

        Unreviewed.

        * platform/ios-simulator/css2.1/20110323/border-conflict-style-079-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-01-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-02-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-03-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-04-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-05-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-06-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-07-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-08-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-11-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-12-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-13-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-14-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-15-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-16-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-17-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-18-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-21-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-22-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-23-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-24-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-25-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-26-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-27-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-28-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-31-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-32-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-33-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-34-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-35-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-36-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-37-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-38-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-41-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-42-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-43-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-44-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-45-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-46-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-47-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-48-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-51-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-52-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-53-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-54-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-55-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-56-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-57-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-58-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-61-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-62-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-63-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-64-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-65-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-66-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-67-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-68-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-71-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-72-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-73-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-74-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-75-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-76-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-77-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-78-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-81-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-82-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-83-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-84-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-85-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-86-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-87-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-88-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-91-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-92-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-93-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-94-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-95-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-96-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-97-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-98-d-expected.txt:
        * platform/ios-simulator/fast/borders/border-antialiasing-expected.txt:
        * platform/ios-simulator/fast/dynamic/create-renderer-for-whitespace-only-text-expected.txt:
        * platform/ios-simulator/fast/table/border-collapsing/002-expected.txt:
        * platform/ios-simulator/fast/table/border-collapsing/002-vertical-expected.txt:
        * platform/ios-simulator/fast/table/border-collapsing/border-collapsing-head-foot-expected.txt:
        * platform/ios-simulator/fast/table/border-collapsing/border-collapsing-head-foot-vertical-expected.txt:
        * platform/ios-simulator/fast/table/border-collapsing/cached-69296-expected.txt:
        * platform/ios-simulator/fast/table/border-collapsing/cached-change-row-border-width-expected.txt:
        * platform/ios-simulator/fast/table/border-collapsing/cached-change-tbody-border-width-expected.txt:
        * platform/ios-simulator/fast/table/border-collapsing/equal-precedence-resolution-expected.txt:
        * platform/ios-simulator/fast/table/border-collapsing/rtl-border-collapsing-expected.txt:
        * platform/ios-simulator/fast/table/border-collapsing/rtl-border-collapsing-vertical-expected.txt:
        * platform/ios-simulator/fast/table/colgroup-spanning-groups-rules-expected.txt:
        * platform/ios-simulator/fast/table/frame-and-rules-expected.txt:
        * platform/ios-simulator/fast/table/overflowHidden-expected.txt:
        * platform/ios-simulator/fast/table/rules-attr-dynchange1-expected.txt:
        * platform/ios-simulator/fast/table/rules-attr-dynchange2-expected.txt:
        * platform/ios-simulator/fast/text/international/bidi-override-expected.txt:
        * platform/ios-simulator/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-009-expected.txt:
        * platform/ios-simulator/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-012-expected.txt:
        * platform/ios-simulator/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-013-expected.txt:
        * platform/ios-simulator/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-014-expected.txt:
        * platform/ios-simulator/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-015-expected.txt:
        * platform/ios-simulator/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-016-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug24200-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug43854-2-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug9024-expected.txt: Added.
        * platform/ios-simulator/tables/mozilla/collapsing_borders/bug41262-3-expected.txt:
        * platform/ios-simulator/tables/mozilla/collapsing_borders/bug41262-4-expected.txt:
        * platform/ios-simulator/tables/mozilla/core/table_rules-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/backgr_layers-opacity-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/backgr_position-table-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/backgr_simple-table-cell-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/backgr_simple-table-column-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/backgr_simple-table-column-group-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/backgr_simple-table-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/backgr_simple-table-row-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/backgr_simple-table-row-group-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/table_rules_all-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/table_rules_none-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_table_rules_groups-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_table_rules_none-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/bugs/bug1055-2-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/bugs/bug89315-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/collapsing_borders/bug41262-1-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/collapsing_borders/bug41262-5-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/collapsing_borders/bug41262-6-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/backgr_border-table-cell-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/backgr_border-table-column-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/backgr_border-table-column-group-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/backgr_border-table-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/backgr_border-table-quirks-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/backgr_border-table-row-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/backgr_border-table-row-group-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/backgr_fixed-bg-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/backgr_layers-hide-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/backgr_layers-show-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/backgr_position-table-cell-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/backgr_position-table-column-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/backgr_position-table-column-group-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/backgr_position-table-row-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/backgr_position-table-row-group-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/table_rules_cols-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/table_rules_rows-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/x_table_rules_all-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/x_table_rules_cols-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/x_table_rules_rows-expected.txt:

2016-03-05  Ryosuke Niwa  <rniwa@webkit.org>

        Add the support for upgrading custom elements in cloneNode
        https://bugs.webkit.org/show_bug.cgi?id=155062

        Reviewed by Antti Koivisto.

        Added test cases for upgrading elements with Node.prototype.cloneNode.

        * fast/custom-elements/lifecycle-callback-timing-expected.txt:
        * fast/custom-elements/lifecycle-callback-timing.html:

2016-03-05  Sam Weinig  <sam@webkit.org>

        Update tests to match the latest version of the HTML5 spec.

        * fast/forms/autocomplete-expected.txt:
        * fast/forms/autocomplete.html:
        Fields that don't have any value set for their autocomplete attribute should return the the empty string.

2016-03-05  Zalan Bujtas  <zalan@apple.com>

        Make table collapsed borders subpixel aware.
        https://bugs.webkit.org/show_bug.cgi?id=150383

        Reviewed by Simon Fraser.

        This patch enables authors to 
        - set subpixel width on collapsed borders
        - and push those borders to subpixel positions.

        * fast/table/collapsed-border-with-odd-pixel-width-expected.html: Added.
        * fast/table/collapsed-border-with-odd-pixel-width.html: Added.
        * fast/table/hidpi-collapsed-border-with-odd-pixel-width-expected.html:

2016-03-05  Sam Weinig  <sam@webkit.org>

        Add support for processing the autofill field name out of form control elements ultimately to aid input methods
        <rdar://problem/23041180>
        https://bugs.webkit.org/show_bug.cgi?id=155079

        Reviewed by Enrica Casucci.

        * fast/forms/autocomplete-tokens-expected.txt:
        * fast/forms/autocomplete-tokens.html:
        Update test to also test field names, as they are now exposed via internals.

2016-03-05  Simon Fraser  <simon.fraser@apple.com>

        Add support for the object-position CSS property
        https://bugs.webkit.org/show_bug.cgi?id=122811
        rdar://problem/15836338

        Reviewed by Sam Weinig.

        Various object-position tests.

        * compositing/video/video-object-position-expected.txt: Added.
        * compositing/video/video-object-position.html: Added.
        * fast/css/object-position/object-position-embed-expected.html: Added.
        * fast/css/object-position/object-position-embed.html: Added.
        * fast/css/object-position/object-position-img-expected.html: Added.
        * fast/css/object-position/object-position-img-svg-expected.html: Added.
        * fast/css/object-position/object-position-img-svg.html: Added.
        * fast/css/object-position/object-position-img.html: Added.
        * fast/css/object-position/object-position-input-image-expected.html: Added.
        * fast/css/object-position/object-position-input-image.html: Added.
        * fast/css/object-position/object-position-object-expected.html: Added.
        * fast/css/object-position/object-position-object.html: Added.
        * fast/css/object-position/object-position-video-poster-expected.html: Added.
        * fast/css/object-position/object-position-video-poster.html: Added.
        * fast/css/object-position/resources/expected.css: Added.
        * fast/css/object-position/resources/test.css: Added.

2016-03-05  Simon Fraser  <simon.fraser@apple.com>

        Add parsing support for object-position
        https://bugs.webkit.org/show_bug.cgi?id=155065

        Reviewed by Sam Weinig.
        
        object-position parsing test.

        * fast/css/object-position/parsing-object-position-expected.txt: Added.
        * fast/css/object-position/parsing-object-position.html: Added.

2016-03-05  Joanmarie Diggs  <jdiggs@igalia.com>

        AX: Implement missing/different accessibility API mappings for SVG
        https://bugs.webkit.org/show_bug.cgi?id=155034

        Reviewed by Chris Fleizach.

        * accessibility/svg-group-element-with-title.html: Modified to reflect correct ATK results.
        * accessibility/svg-image.html: Modified to reflect correct ATK results.
        * accessibility/svg-labelledby.html: Modified to reflect correct ATK results.
        * accessibility/svg-remote-element.html: Modified to reflect correct ATK results.
        * accessibility/w3c-svg-description-calculation.html: Added.
        * accessibility/w3c-svg-elements-not-exposed.html: Added.
        * accessibility/w3c-svg-name-calculation.html: Added.
        * accessibility/w3c-svg-presentational-role.html: Added.
        * accessibility/w3c-svg-roles.html: Added.
        * platform/gtk/accessibility/svg-group-element-with-title-expected.txt: Added.
        * platform/gtk/accessibility/svg-image-expected.txt: Added.
        * platform/gtk/accessibility/svg-labelledby-expected.txt: Added.
        * platform/gtk/accessibility/svg-remote-element-expected.txt: Added.
        * platform/gtk/accessibility/w3c-svg-description-calculation-expected.txt: Added.
        * platform/gtk/accessibility/w3c-svg-elements-not-exposed-expected.txt: Added.
        * platform/gtk/accessibility/w3c-svg-name-calculation-expected.txt: Added.
        * platform/gtk/accessibility/w3c-svg-presentational-role-expected.txt: Added.
        * platform/gtk/accessibility/w3c-svg-roles-expected.txt: Added.
        * platform/mac/accessibility/w3c-svg-description-calculation-expected.txt: Added.
        * platform/mac/accessibility/w3c-svg-elements-not-exposed-expected.txt: Added.
        * platform/mac/accessibility/w3c-svg-name-calculation-expected.txt: Added.
        * platform/mac/accessibility/w3c-svg-presentational-role-expected.txt: Added.
        * platform/mac/accessibility/w3c-svg-roles-expected.txt: Added.

2016-03-04  Ryosuke Niwa  <rniwa@webkit.org>

        Add basic support for attributeChanged lifecycle callback
        https://bugs.webkit.org/show_bug.cgi?id=155011

        Reviewed by Antti Koivisto.

        Added a test for attributeChangedCallback and a test for the timing of lifecycle callbacks in general.

        * fast/custom-elements/attribute-changed-callback-expected.txt: Added.
        * fast/custom-elements/attribute-changed-callback.html: Added.
        * fast/custom-elements/lifecycle-callback-timing-expected.txt: Added.
        * fast/custom-elements/lifecycle-callback-timing.html: Added.

2016-03-04  Tim Horton  <timothy_horton@apple.com>

        Temporarily skip attachment tests on iOS

        * platform/ios-simulator/TestExpectations:
        There's no point in running these quite yet (I'm surprised they weren't already skipped).
        We'll turn them back on soon.

2016-03-04  Ryosuke Niwa  <rniwa@webkit.org>

        Update defineCustomElement according to the spec rewrite
        https://bugs.webkit.org/show_bug.cgi?id=155010
        <rdar://problem/24970878>

        Reviewed by Chris Dumez.

        Update the tests for the rename and semantics change of defineCustomElement and HTMLElement constructor.

        * fast/custom-elements/Document-createElement.html:
        * fast/custom-elements/Document-defineCustomElement-expected.txt: Removed.
        * fast/custom-elements/Document-defineCustomElement.html: Removed.
        * fast/custom-elements/Document-defineElement-expected.txt: Renamed from LayoutTests/fast/custom-elements/Document-defineCustomElement-expected.txt.
        * fast/custom-elements/Document-defineElement.html: Renamed from LayoutTests/fast/custom-elements/Document-defineCustomElement.html.
        Also added a test case for defining multiple custom elements with a single class, which must throw.
        * fast/custom-elements/HTMLElement-constructor-expected.txt:
        * fast/custom-elements/HTMLElement-constructor.html:
        Removed test cases for the tag name in the first argument as well as ones that associate a single class with multiple tag names.
        * fast/custom-elements/parser/parser-constructs-custom-element-in-document-write.html:
        * fast/custom-elements/parser/parser-constructs-custom-element-synchronously.html:
        * fast/custom-elements/parser/parser-constructs-custom-elements.html:
        * fast/custom-elements/parser/parser-fallsback-to-unknown-element.html:
        * fast/custom-elements/parser/parser-sets-attributes-and-children.html:
        * fast/custom-elements/parser/parser-uses-constructed-element.html:
        * fast/custom-elements/parser/parser-uses-registry-of-owner-document.html:

2016-03-04  Simon Fraser  <simon.fraser@apple.com>

        Use larger tiles when possible to reduce per-tile painting overhead
        https://bugs.webkit.org/show_bug.cgi?id=154985

        Reviewed by Zalan Bujtas.

        * tiled-drawing/background-transparency-toggle-expected.txt:
        * tiled-drawing/scrolling/fast-scroll-iframe-latched-iframe-expected.txt:
        * tiled-drawing/scrolling/fast-scroll-iframe-latched-iframe-with-handler-expected.txt:
        * tiled-drawing/scrolling/fast-scroll-iframe-latched-mainframe-expected.txt:
        * tiled-drawing/scrolling/fast-scroll-iframe-latched-mainframe-with-handler-expected.txt:
        * tiled-drawing/scrolling/fixed-background/fixed-background-no-image-expected.txt:
        * tiled-drawing/scrolling/fixed-background/fixed-body-background-body-layer-expected.txt:
        * tiled-drawing/scrolling/fixed-background/fixed-body-background-expected.txt:
        * tiled-drawing/scrolling/fixed-background/fixed-body-background-opacity-expected.txt:
        * tiled-drawing/scrolling/fixed-background/fixed-body-background-positioned-expected.txt:
        * tiled-drawing/scrolling/fixed-background/fixed-html-background-expected.txt:
        * tiled-drawing/scrolling/fixed-background/fixed-non-propagated-body-background-expected.txt:
        * tiled-drawing/scrolling/fixed/four-bars-zoomed-expected.txt:
        * tiled-drawing/tile-coverage-after-scroll-expected.txt:
        * tiled-drawing/tile-coverage-after-scroll-speculative-expected.txt:
        * tiled-drawing/tile-coverage-scroll-to-bottom-expected.txt:
        * tiled-drawing/tile-coverage-slow-scrolling-expected.txt:
        * tiled-drawing/tile-coverage-speculative-expected.txt:
        * tiled-drawing/tile-size-unscrollable-expected.txt:
        * tiled-drawing/tile-size-vertically-scrollable-expected.txt:
        * tiled-drawing/visible-rect-content-inset-expected.txt:

2016-03-04  Ryan Haddad  <ryanhaddad@apple.com>

        Temporarily skip fast/table/table-overflow.html on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=155036

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-03-04  Ryan Haddad  <ryanhaddad@apple.com>

        Skip fast/text/all-small-caps-whitespace.html on ios-simulator

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-03-04  Ryan Haddad  <ryanhaddad@apple.com>

        Skip storage/indexeddb/modern/256-open-databases.html on mac
        https://bugs.webkit.org/show_bug.cgi?id=155028

        Unreviewed test gardening.

        * platform/wk2/TestExpectations:

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

        Location.reload should not be writable
        https://bugs.webkit.org/show_bug.cgi?id=154989

        Reviewed by Gavin Barraclough.

        Add a layout test to verify that operations marked as [Unforgeable] in
        IDL are indeed not writable.

        * fast/html/unforgeable-operations-readonly-expected.txt: Added.
        * fast/html/unforgeable-operations-readonly.html: Added.

2016-03-04  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline inspector/model/remote-object.html for mac after r197539

        Unreviewed test gardening.

        * platform/mac/inspector/model/remote-object-expected.txt:

2016-03-04  Myles C. Maxfield  <mmaxfield@apple.com>

        Whitespace causes font-variant: all-small-caps to synthesize
        https://bugs.webkit.org/show_bug.cgi?id=155004
        <rdar://problem/24630796>

        Reviewed by Darin Adler.

        * fast/text/all-small-caps-whitespace-expected.html: Added.
        * fast/text/all-small-caps-whitespace.html: Added.
        * platform/mac/TestExpectations: Skip on platforms which don't support proper coverage
        queries.

2016-03-04  Simon Fraser  <simon.fraser@apple.com>

        REGRESSION (r197541): many tiled drawing tests failing after new "large tile size" logic was added
        https://bugs.webkit.org/show_bug.cgi?id=155020
        
        Rebaseline these tests.

        * platform/mac-wk2/TestExpectations:
        * tiled-drawing/background-transparency-toggle-expected.txt:
        * tiled-drawing/scrolling/fast-scroll-iframe-latched-iframe-expected.txt:
        * tiled-drawing/scrolling/fast-scroll-iframe-latched-iframe-with-handler-expected.txt:
        * tiled-drawing/scrolling/fast-scroll-iframe-latched-mainframe-expected.txt:
        * tiled-drawing/scrolling/fast-scroll-iframe-latched-mainframe-with-handler-expected.txt:
        * tiled-drawing/scrolling/fixed-background/fixed-background-no-image-expected.txt:
        * tiled-drawing/scrolling/fixed-background/fixed-body-background-body-layer-expected.txt:
        * tiled-drawing/scrolling/fixed-background/fixed-body-background-expected.txt:
        * tiled-drawing/scrolling/fixed-background/fixed-body-background-opacity-expected.txt:
        * tiled-drawing/scrolling/fixed-background/fixed-body-background-positioned-expected.txt:
        * tiled-drawing/scrolling/fixed-background/fixed-html-background-expected.txt:
        * tiled-drawing/scrolling/fixed-background/fixed-non-propagated-body-background-expected.txt:
        * tiled-drawing/scrolling/fixed/four-bars-zoomed-expected.txt:
        * tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-2d-overflow-expected.txt:
        * tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-borders-expected.txt:
        * tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-overflow-expected.txt:
        * tiled-drawing/tile-coverage-after-scroll-expected.txt:
        * tiled-drawing/tile-coverage-after-scroll-speculative-expected.txt:
        * tiled-drawing/tile-coverage-scroll-to-bottom-expected.txt:
        * tiled-drawing/tile-coverage-slow-scrolling-expected.txt:
        * tiled-drawing/tile-coverage-speculative-expected.txt:
        * tiled-drawing/tile-size-unscrollable-expected.txt:
        * tiled-drawing/tile-size-vertically-scrollable-expected.txt:
        * tiled-drawing/visible-rect-content-inset-expected.txt:

2016-03-04  Darin Adler  <darin@apple.com>

        REGRESSION (r197541): many tiled drawing tests failing after new "large tile size" logic was added
        https://bugs.webkit.org/show_bug.cgi?id=155020

        * platform/mac-wk2/TestExpectations: Added failure expectations for tiled drawing tests.
        * platform/wk2/TestExpectations: Moved some expectations to a more appropriate section in the file.

2016-03-04  Skachkov Oleksandr  <gskachkov@gmail.com>

        [ES6] Arrow function syntax. Lexical bind "super" inside of the arrow function in generator.
        https://bugs.webkit.org/show_bug.cgi?id=152575

        Reviewed by Yusuke Suzuki.

        * js/arrowfunction-superproperty-expected.txt:
        * js/arrowfunction-syntax-errors-expected.txt:
        * js/script-tests/arrowfunction-superproperty.js:
        * js/script-tests/arrowfunction-syntax-errors.js:

2016-03-03  Antti Koivisto  <antti@apple.com>

        ComposedTreeIterator may traverse slotted nodes multiple times
        https://bugs.webkit.org/show_bug.cgi?id=154983

        Reviewed by Ryosuke Niwa.

        * fast/shadow-dom/composed-tree-slots-expected.txt: Added.
        * fast/shadow-dom/composed-tree-slots.html: Added.

2016-03-03  Filip Pizlo  <fpizlo@apple.com>

        DFG/FTL should inline accesses to RegExpObject::m_lastIndex
        https://bugs.webkit.org/show_bug.cgi?id=155003

        Reviewed by Benjamin Poulain.

        * js/regress/regexp-last-index-expected.txt: Added.
        * js/regress/regexp-last-index.html: Added.
        * js/regress/regexp-set-last-index-expected.txt: Added.
        * js/regress/regexp-set-last-index.html: Added.
        * js/regress/script-tests/regexp-last-index.js: Added.
        * js/regress/script-tests/regexp-set-last-index.js: Added.

2016-03-03  Filip Pizlo  <fpizlo@apple.com>

        Unreviewed, remove test with flaky timeout that doesn't test anything anymore. This test
        was relevant back when arguments got torn off; something that we don't do anymore. It
        uses a loop that waits for the top-tier compiler to compile it. We don't write tests
        like that anymore.

        * js/dfg-osr-exit-between-create-and-tearoff-arguments-expected.txt: Removed.
        * js/dfg-osr-exit-between-create-and-tearoff-arguments.html: Removed.
        * js/script-tests/dfg-osr-exit-between-create-and-tearoff-arguments.js: Removed.

2016-03-03  Keith Miller  <keith_miller@apple.com>

        JSArrayBuffers should be collected less aggressively
        https://bugs.webkit.org/show_bug.cgi?id=154982

        Reviewed by Geoffrey Garen.

        * js/arraybuffer-wrappers-expected.txt: Added.
        * js/arraybuffer-wrappers.html: Added.
        * js/script-tests/arraybuffer-wrappers.js: Added.
        (prototype.types.forEach):

2016-03-03  Simon Fraser  <simon.fraser@apple.com>

        Use larger tiles when possible to reduce per-tile painting overhead
        https://bugs.webkit.org/show_bug.cgi?id=154985
        rdar://problem/23635219

        Reviewed by Tim Horton.
        
        Rebaseline tests with new tile sizes. Add new tests that explicitly test tile size on
        pages with different scrollability.

        * tiled-drawing/background-transparency-toggle-expected.txt:
        * tiled-drawing/scrolling/fast-scroll-iframe-latched-iframe-expected.txt:
        * tiled-drawing/scrolling/fast-scroll-iframe-latched-iframe-with-handler-expected.txt:
        * tiled-drawing/scrolling/fast-scroll-iframe-latched-mainframe-expected.txt:
        * tiled-drawing/scrolling/fast-scroll-iframe-latched-mainframe-with-handler-expected.txt:
        * tiled-drawing/scrolling/fixed-background/fixed-background-no-image-expected.txt:
        * tiled-drawing/scrolling/fixed-background/fixed-body-background-body-layer-expected.txt:
        * tiled-drawing/scrolling/fixed-background/fixed-body-background-expected.txt:
        * tiled-drawing/scrolling/fixed-background/fixed-body-background-opacity-expected.txt:
        * tiled-drawing/scrolling/fixed-background/fixed-body-background-positioned-expected.txt:
        * tiled-drawing/scrolling/fixed-background/fixed-html-background-expected.txt:
        * tiled-drawing/scrolling/fixed-background/fixed-non-propagated-body-background-expected.txt:
        * tiled-drawing/tile-coverage-after-scroll-expected.txt:
        * tiled-drawing/tile-coverage-after-scroll-speculative-expected.txt:
        * tiled-drawing/tile-coverage-scroll-to-bottom-expected.txt:
        * tiled-drawing/tile-coverage-slow-scrolling-expected.txt:
        * tiled-drawing/tile-coverage-speculative-expected.txt:
        * tiled-drawing/tile-size-both-scrollable-expected.txt: Copied from LayoutTests/tiled-drawing/scrolling/fixed-background/fixed-background-no-image-expected.txt.
        * tiled-drawing/tile-size-both-scrollable.html: Added.
        * tiled-drawing/tile-size-horizontally-scrollable-expected.txt: Copied from LayoutTests/tiled-drawing/scrolling/fixed-background/fixed-background-no-image-expected.txt.
        * tiled-drawing/tile-size-horizontally-scrollable.html: Added.
        * tiled-drawing/tile-size-unscrollable-expected.txt: Added.
        * tiled-drawing/tile-size-unscrollable.html: Added.
        * tiled-drawing/tile-size-vertically-scrollable-expected.txt: Copied from LayoutTests/tiled-drawing/scrolling/fixed-background/fixed-background-no-image-expected.txt.
        * tiled-drawing/tile-size-vertically-scrollable.html: Added.
        * tiled-drawing/visible-rect-content-inset-expected.txt:

2016-03-03  Simon Fraser  <simon.fraser@apple.com>

        Fix an image resource URL in tiled scrolling tests
        https://bugs.webkit.org/show_bug.cgi?id=154981

        Reviewed by Tim Horton.
        
        These tests had an incorrect url to compositing/resources/simple_image.png.

        * tiled-drawing/scrolling/fixed-background/fixed-background-composited-expected.html:
        * tiled-drawing/scrolling/fixed-background/fixed-background-composited.html:
        * tiled-drawing/scrolling/fixed-background/fixed-background-negative-z-index-fixed-expected.html:
        * tiled-drawing/scrolling/fixed-background/fixed-background-negative-z-index-fixed.html:
        * tiled-drawing/scrolling/fixed-background/fixed-body-background-body-layer.html:
        * tiled-drawing/scrolling/fixed-background/fixed-body-background-opacity.html:
        * tiled-drawing/scrolling/fixed-background/fixed-body-background-positioned.html:
        * tiled-drawing/scrolling/fixed-background/fixed-body-background-transformed.html:
        * tiled-drawing/scrolling/fixed-background/fixed-body-background-zoomed.html:
        * tiled-drawing/scrolling/fixed-background/fixed-body-background.html:
        * tiled-drawing/scrolling/fixed-background/fixed-html-background.html:
        * tiled-drawing/scrolling/fixed-background/fixed-non-propagated-body-background.html:

2016-03-03  Keith Miller  <keith_miller@apple.com>

        Array prototype JS builtins should support Symbol.species
        https://bugs.webkit.org/show_bug.cgi?id=154710

        Reviewed by Geoffrey Garen.

        Add test that checks the Array object created by a species
        constructor in Array.prototype functions cannot come from a
        different global object without subclassing.

        * js/array-species-different-globalobjects-expected.txt: Added.
        * js/array-species-different-globalobjects.html: Added.

2016-03-03  Michael Saboff  <msaboff@apple.com>

        [ES6] Make Unicode RegExp pattern parsing conform to the spec
        https://bugs.webkit.org/show_bug.cgi?id=154988

        Reviewed by Benjamin Poulain.

        Added tests cases.

        * js/regexp-unicode-expected.txt:
        * js/script-tests/regexp-unicode.js:
        (shouldThrowInvalidEscape):


        [ES6] Add support for Symbol.toPrimitive
        https://bugs.webkit.org/show_bug.cgi?id=154877

        Reviewed by Saam Barati.

        Update test for Symbol.toPrimitive.

        * js/Object-getOwnPropertyNames-expected.txt:
        * js/script-tests/Object-getOwnPropertyNames.js:

2016-03-02  Ryosuke Niwa  <rniwa@webkit.org>

        Disallow custom elements inside template elements and share the registry for windowless documents
        https://bugs.webkit.org/show_bug.cgi?id=154944
        <rdar://problem/24944875>

        Reviewed by Antti Koivisto.

        Added various tests to ensure the custom elements registry is not shared between documents with
        distinct browsing context (e.g. iframes) but shared among the ones that share a single browsing context
        (e.g. documents created by DOMImplementation).

        Also added a test case for defineCustomElement to ensure it throws NotSupportedError when it's called on
        a template element's inert owner document as well as a basic test case for document.write.

        * fast/custom-elements/Document-defineCustomElement-expected.txt:
        * fast/custom-elements/Document-defineCustomElement.html: Added a new test case.
        * fast/custom-elements/parser/parser-constructs-custom-element-in-document-write-expected.txt: Added.
        * fast/custom-elements/parser/parser-constructs-custom-element-in-document-write.html: Added.
        * fast/custom-elements/parser/parser-uses-registry-of-owner-document-expected.txt: Added.
        * fast/custom-elements/parser/parser-uses-registry-of-owner-document.html: Added.

2016-03-03  Zalan Bujtas  <zalan@apple.com>

        Subpixel rendering: Make collapsed borders painting subpixel aware.
        https://bugs.webkit.org/show_bug.cgi?id=154980

        Reviewed by David Hyatt.

        This patch enables collapsed borders with odd pixel width paint on subpixel position.
        Currently borders with odd pixels are split at integral position so that border-width: 3px;
        paints 1px on the left(top) and 2px on the right(bottom) side. With this patch
        we paint 1.5px on both sides(on 2x display).

        * fast/table/hidpi-collapsed-border-with-odd-pixel-width-expected.html: Added.
        * fast/table/hidpi-collapsed-border-with-odd-pixel-width.html: Added.

2016-03-03  Filip Pizlo  <fpizlo@apple.com>

        DFG should be able to compile StringReplace
        https://bugs.webkit.org/show_bug.cgi?id=154979

        Reviewed by Benjamin Poulain.

        Add a microbenchmark for a case of StringReplace that we hadn't covered with a microbenchmark
        yet: using something absurd for the replace value. This is interesting for implementing the
        32_64 version of StringReplace, which gets really weird in the absurd case because of how it
        consumes the entire register file while making the call on x86-32.

        * js/regress/script-tests/string-replace-generic.js: Added.
        * js/regress/string-replace-generic-expected.txt: Added.
        * js/regress/string-replace-generic.html: Added.

2016-03-03  Dave Hyatt  <hyatt@apple.com>

        Add support for the "last" value of hanging-punctuation
        https://bugs.webkit.org/show_bug.cgi?id=154977

        Reviewed by Darin Adler and Simon Fraser.

        * fast/text/hanging-punctuation-first-and-last-together-expected.html: Added.
        * fast/text/hanging-punctuation-first-and-last-together.html: Added.
        * fast/text/hanging-punctuation-first-ws-expected.html: Added.
        * fast/text/hanging-punctuation-first-ws.html: Added.
        * fast/text/hanging-punctuation-last-expected.html: Added.
        * fast/text/hanging-punctuation-last-rtl-expected.html: Added.
        * fast/text/hanging-punctuation-last-rtl.html: Added.
        * fast/text/hanging-punctuation-last-ws-expected.html: Added.
        * fast/text/hanging-punctuation-last-ws.html: Added.
        * fast/text/hanging-punctuation-last.html: Added.

2016-03-03  Brady Eidson  <beidson@apple.com>

        storage/indexeddb/delete-in-upgradeneeded-close-in-open-success.html flaky on mac-wk2.
        https://bugs.webkit.org/show_bug.cgi?id=154747

        Reviewed by Alex Christensen.
        
        This callback coming out of order like this is okay, so the test should just allow it.

        It makes sense that the flake is WK2-only, since WK1 has a much more well defined order 
        with thread-hopping versus process-hopping.

        * storage/indexeddb/delete-in-upgradeneeded-close-in-open-success-expected.txt:
        * storage/indexeddb/delete-in-upgradeneeded-close-in-open-success-private-expected.txt:
        * storage/indexeddb/resources/delete-in-upgradeneeded-close-in-open-success.js:

2016-03-03  Brady Eidson  <beidson@apple.com>

        storage/indexeddb/intversion-open-in-upgradeneeded.html is flaky on mac-wk2 debug.
        https://bugs.webkit.org/show_bug.cgi?id=154706

        Rubberstamped by Alex Christensen.

        This test was fixed by http://trac.webkit.org/changeset/197474.
        
        Unskipping it now.
        
        * platform/mac-wk2/TestExpectations:

2016-03-03  Chris Dumez  <cdumez@apple.com>

        Drop [TreatNullAs=EmptyString] from URL interface attributes
        https://bugs.webkit.org/show_bug.cgi?id=154951

        Reviewed by Darin Adler.

        Update existing tests now that URL interface attributes no longer treat
        null as the empty string.

        * fast/dom/DOMURL/set-href-attribute-hash-expected.txt:
        * fast/dom/DOMURL/set-href-attribute-hash.html:
        * fast/dom/DOMURL/set-href-attribute-host-expected.txt:
        * fast/dom/DOMURL/set-href-attribute-host.html:
        * fast/dom/DOMURL/set-href-attribute-hostname-expected.txt:
        * fast/dom/DOMURL/set-href-attribute-hostname.html:
        * fast/dom/DOMURL/set-href-attribute-pathname-expected.txt:
        * fast/dom/DOMURL/set-href-attribute-pathname.html:
        * fast/dom/DOMURL/set-href-attribute-protocol-expected.txt:
        * fast/dom/DOMURL/set-href-attribute-protocol.html:
        * fast/dom/DOMURL/set-href-attribute-search-expected.txt:
        * fast/dom/DOMURL/set-href-attribute-search.html:

2016-03-03  Javier Fernandez  <jfernandez@igalia.com>

        [CSS Box Alignment] New CSS Value 'normal' for Content Alignment
        https://bugs.webkit.org/show_bug.cgi?id=154282

        The Box Alignment specification defines a new value 'normal' to be used
        as default for the different layout models, which will define the
        specific behavior for each case. This patch adds a new CSS value in the
        parsing logic and adapts the Content Alignment properties to the new
        value.

        Since the 'normal' vlaue, initial/default for both justify-content
        and align-content CSS properties, behaves now as 'stretch' instead
        of o'start' we have to rebaseline those tests affected by the new
        default value.

        Reviewed by David Hyatt.

        * css3/flexbox/css-properties-expected.txt:
        * css3/flexbox/css-properties.html:
        * css3/parse-align-content-expected.txt:
        * css3/parse-align-content.html:
        * css3/parse-justify-content-expected.txt:
        * css3/parse-justify-content.html:
        * css3/resources/alignment-parsing-utils.js:
        (checkBadValues):
        * fast/css-grid-layout/auto-content-resolution-columns.html:
        * fast/css-grid-layout/grid-auto-columns-rows-update.html:
        * fast/css-grid-layout/grid-auto-flow-resolution.html:
        * fast/css-grid-layout/grid-columns-rows-get-set-multiple.html:
        * fast/css-grid-layout/grid-columns-rows-get-set.html:
        * fast/css-grid-layout/grid-container-change-named-grid-lines-recompute-child.html:
        * fast/css-grid-layout/grid-content-sized-columns-resolution.html:
        * fast/css-grid-layout/grid-dynamic-updates-relayout.html:
        * fast/css-grid-layout/grid-element-min-max-width.html:
        * fast/css-grid-layout/grid-element-repeat-get-set.html:
        * fast/css-grid-layout/grid-initialize-span-one-items.html:
        * fast/css-grid-layout/grid-item-addition-auto-placement-update.html:
        * fast/css-grid-layout/grid-item-addition-track-breadth-update.html:
        * fast/css-grid-layout/grid-item-bad-named-area-auto-placement.html:
        * fast/css-grid-layout/grid-item-margin-auto-columns-rows-horizontal-ltr.html:
        * fast/css-grid-layout/grid-item-margin-auto-columns-rows-horizontal-rtl.html:
        * fast/css-grid-layout/grid-item-margin-auto-columns-rows-vertical-ltr.html:
        * fast/css-grid-layout/grid-item-margin-auto-columns-rows-vertical-rtl.html:
        * fast/css-grid-layout/grid-item-multiple-minmax-content-resolution.html:
        * fast/css-grid-layout/grid-item-named-grid-area-resolution.html:
        * fast/css-grid-layout/grid-item-negative-indexes.html:
        * fast/css-grid-layout/grid-item-order-in-content-sized-columns-resolution.html:
        * fast/css-grid-layout/grid-item-removal-auto-placement-update.html:
        * fast/css-grid-layout/grid-item-removal-track-breadth-update.html:
        * fast/css-grid-layout/grid-update-sizes-after-distributing-all.html:
        * fast/css-grid-layout/implicit-columns-auto-resolution.html:
        * fast/css-grid-layout/implicit-position-dynamic-change.html:
        * fast/css-grid-layout/mark-as-infinitely-growable.html:
        * fast/css-grid-layout/maximize-tracks-definite-indefinite-width.html:
        * fast/css-grid-layout/minmax-spanning-resolution-columns.html:
        * fast/css-grid-layout/named-grid-line-get-set.html:
        * fast/css-grid-layout/named-grid-lines-computed-style-implicit-tracks.html:
        * fast/css-grid-layout/named-grid-lines-with-named-grid-areas-resolution.html:
        * fast/css-grid-layout/percent-intrinsic-track-breadth.html:
        * fast/css-grid-layout/percent-track-breadths-regarding-container-size.html:
        * fast/css-grid-layout/resources/grid-definitions-parsing-utils.js:
        (checkGridTemplatesSetJSValues):
        * fast/css-grid-layout/resources/grid-template-shorthand-parsing-utils.js:
        (checkGridDefinitionsSetJSValues):
        (testGridDefinitionsSetBadJSValues):
        * fast/css/getComputedStyle/computed-style-expected.txt:
        * fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
        * svg/css/getComputedStyle-basic-expected.txt:

2016-03-02  Chris Dumez  <cdumez@apple.com>

        HTMLFormElement's named property getter does not return a RadioNodelist
        https://bugs.webkit.org/show_bug.cgi?id=154949

        Reviewed by Ryosuke Niwa.

        Add layout test to confirm that HTMLFormElement's named property getter
        does indeed return a RadioNodeList when there are several matches.

        * fast/dom/HTMLFormElement/named-property-getter-radionodelist-expected.txt: Added.
        * fast/dom/HTMLFormElement/named-property-getter-radionodelist.html: Added.

2016-03-02  Chris Dumez  <cdumez@apple.com>

        Drop [TreatNullAs=LegacyNullString] from HTMLBaseElement.href
        https://bugs.webkit.org/show_bug.cgi?id=154952

        Reviewed by Ryosuke Niwa.

        Update existing layout test now that HTMLBaseElement.href setter no
        longer treats null as the empty string.

        * fast/dom/HTMLBaseElement/href-attribute-resolves-with-respect-to-document-expected.txt:
        * fast/dom/HTMLBaseElement/href-attribute-resolves-with-respect-to-document.html:

2016-03-02  Zalan Bujtas  <zalan@apple.com>

        Paint table borders on empty cells even in quirks mode.
        https://bugs.webkit.org/show_bug.cgi?id=154928

        Reviewed by David Hyatt.

        Enable border painting for empty cells unless 'empty-cells: hide' is set. 
        This is inline with FF and Chrome behaviour.

        * fast/table/border-on-empty-table-cells-quirks-mode-expected.html: Added.
        * fast/table/border-on-empty-table-cells-quirks-mode.html: Added.

2016-03-02  Ryan Haddad  <ryanhaddad@apple.com>

        Marking storage/indexeddb/odd-strings.html as flaky on mac-wk1
        https://bugs.webkit.org/show_bug.cgi?id=154619

        Unreviewed test gardening.

        * platform/mac-wk1/TestExpectations:

2016-03-02  Brady Eidson  <beidson@apple.com>

        Unreviewed test gardening.

        * platform/wk2/TestExpectations: Mark two tests that are very slow as [ Slow ].

2016-03-02  Ryan Haddad  <ryanhaddad@apple.com>

        Skip unsupported test fast/text/complex-small-caps-non-bmp-capitalize.html on ios-simulator

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-03-02  Brady Eidson  <beidson@apple.com>

        Modern IDB: Close UniqueIDBDatabases once they become unused.
        https://bugs.webkit.org/show_bug.cgi?id=154922

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/modern/256-open-databases-expected.txt: Added.
        * storage/indexeddb/modern/256-open-databases.html: Added.
        * storage/indexeddb/modern/exceed-open-file-limit-expected.txt: Added.
        * storage/indexeddb/modern/exceed-open-file-limit.html: Added.
        * storage/indexeddb/modern/resources/256-open-databases.js: Added.
        * storage/indexeddb/modern/resources/exceed-open-file-limit.js: Added.

2016-03-02  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline fast/transforms/bounding-rect-zoom.html for ios-simulator after r197450

        Unreviewed test gardening.

        * platform/ios-simulator/fast/transforms/bounding-rect-zoom-expected.txt:

2016-03-02  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline imported/w3c/web-platform-tests/html/dom/reflection-forms.html for ios-simulator after r197458

        Unreviewed test gardening.

        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/reflection-forms-expected.txt:

2016-03-02  Ryosuke Niwa  <rniwa@webkit.org>

        Add a custom element test for synchronous element construction in HTML parser
        https://bugs.webkit.org/show_bug.cgi?id=154932

        Reviewed by Antti Koivisto.

        Added a test.

        * fast/custom-elements/parser/parser-constructs-custom-element-synchronously-expected.txt: Added.
        * fast/custom-elements/parser/parser-constructs-custom-element-synchronously.html: Added.

2016-03-02  Filip Pizlo  <fpizlo@apple.com>

        Add a benchmark for string transcoding.

        Rubber stamped by Saam Barati.

        I wrote some code like this while working on
        https://github.com/WebAssembly/design/pull/573. I thought I'd add it as a benchmark since
        it stresses things that we may not have good bench coverage for.

        * js/regress/script-tests/string-transcoding.js: Added.
        (decodeUTF8):
        (encodeUTF8):
        (arraysEqual):
        (arrayToString):
        (setHeader):
        (print):
        (tryArray):
        (doSteps):
        * js/regress/string-transcoding-expected.txt: Added.
        * js/regress/string-transcoding.html: Added.

2016-03-02  Dave Hyatt  <hyatt@apple.com>

        Add support for the "first" value of the hanging-punctuation property.
        https://bugs.webkit.org/show_bug.cgi?id=154919

        Reviewed by Simon Fraser.

        * fast/text/hanging-punctuation-first-expected.html: Added.
        * fast/text/hanging-punctuation-first-rtl-expected.html: Added.
        * fast/text/hanging-punctuation-first-rtl.html: Added.
        * fast/text/hanging-punctuation-first.html: Added.

2016-03-01  Ryosuke Niwa  <rniwa@webkit.org>

        Make HTML parser construct custom elements
        https://bugs.webkit.org/show_bug.cgi?id=154908

        Reviewed by Antti Koivisto.

        Added W3C testharness.js based tests for instantiating custom elements inside the HTML parser.

        * fast/custom-elements/parser: Added.
        * fast/custom-elements/parser/parser-constructs-custom-elements-expected.txt: Added.
        * fast/custom-elements/parser/parser-constructs-custom-elements.html: Added.
        * fast/custom-elements/parser/parser-fallsback-to-unknown-element-expected.txt: Added.
        * fast/custom-elements/parser/parser-fallsback-to-unknown-element.html: Added.
        * fast/custom-elements/parser/parser-sets-attributes-and-children-expected.txt: Added.
        * fast/custom-elements/parser/parser-sets-attributes-and-children.html: Added.
        * fast/custom-elements/parser/parser-uses-constructed-element-expected.txt: Added.
        * fast/custom-elements/parser/parser-uses-constructed-element.html: Added.

2016-03-02  Chris Dumez  <cdumez@apple.com>

        Align HTMLInputElement.maxLength with the specification
        https://bugs.webkit.org/show_bug.cgi?id=154906

        Reviewed by Ryosuke Niwa.

        Update test now that input.maxLength initially returns -1
        instead of 524288.

        * fast/forms/input-maxlength-expected.txt:
        * fast/forms/input-maxlength.html:

2016-03-02  Zalan Bujtas  <zalan@apple.com>

        Subpixel layout: Enable vertical/horizontal subpixel spacing for tables.
        https://bugs.webkit.org/show_bug.cgi?id=154899

        Reviewed by Simon Fraser.

        This patch enables authors to specify device pixel values for table border spacing.
        (see border-spacing)

        * fast/table/hidpi-vertical-and-horizontal-spacing-expected.html: Added.
        * fast/table/hidpi-vertical-and-horizontal-spacing.html: Added.

2016-03-02  Joanmarie Diggs  <jdiggs@igalia.com>

        [AX][GTK] Position-related tests need new baseline after r196439
        https://bugs.webkit.org/show_bug.cgi?id=154917

        The tests in question include the position accessed via the component
        interface. The result changed by one pixel after r196439.

        Unreviewed gardening.

        * platform/gtk/accessibility/image-link-expected.txt: new baseline
        * platform/gtk/accessibility/math-multiscript-attributes-expected.txt: new baseline
        * platform/gtk/accessibility/table-attributes-expected.txt: new baseline
        * platform/gtk/accessibility/table-cell-spans-expected.txt: new baseline
        * platform/gtk/accessibility/table-cells-expected.txt: new baseline
        * platform/gtk/accessibility/table-detection-expected.txt: new baseline
        * platform/gtk/accessibility/table-sections-expected.txt: new baseline

2016-02-26  Ryosuke Niwa  <rniwa@webkit.org>

        Contents inside a shadow host with a negative tabindex should not be tab focusable
        https://bugs.webkit.org/show_bug.cgi?id=154769

        Reviewed by Antti Koivisto.

        Added a test for navigating across shadow boundaries.

        * fast/shadow-dom/negative-tabindex-on-shadow-host-expected.txt: Added.
        * fast/shadow-dom/negative-tabindex-on-shadow-host.html: Added.
        * platform/ios-simulator/TestExpectations:

2016-03-01  Myles C. Maxfield  <mmaxfield@apple.com>

        Small-caps non-BMP characters are garbled in the complex text codepath
        https://bugs.webkit.org/show_bug.cgi?id=154875

        Reviewed by Michael Saboff.

        * fast/text/complex-small-caps-non-bmp-capitalize-expected.html: Added.
        * fast/text/complex-small-caps-non-bmp-capitalize.html: Added.
        * fast/text/regress-154875-expected.txt: Deleted
        * fast/text/regress-154875.html: Deleted

2016-03-01  Michael Saboff  <msaboff@apple.com>

        [ES6] Add support for Unicode regular expressions
        https://bugs.webkit.org/show_bug.cgi?id=154842

        Reviewed by Filip Pizlo.

        Added a new test for the added unicode regular expression processing.

        Updated several tests for the y flag changes and "unicode" property.

        * js/regexp-unicode-expected.txt: Added.
        * js/regexp-unicode.html: Added.
        * js/script-tests/regexp-unicode.js: Added.
        New test.

        * js/Object-getOwnPropertyNames-expected.txt:
        * js/regexp-flags-expected.txt:
        * js/script-tests/Object-getOwnPropertyNames.js:
        * js/script-tests/regexp-flags.js:
        (RegExp.prototype.hasOwnProperty):
        Updated tests.

2016-03-01  Ryan Haddad  <ryanhaddad@apple.com>

        Marking fast/text/crash-complex-text-surrogate.html as flaky on mac
        https://bugs.webkit.org/show_bug.cgi?id=154709

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-03-01  Michael Saboff  <msaboff@apple.com>

        ASSERT in platform/graphics/mac/ComplexTextController.cpp::capitalize()
        https://bugs.webkit.org/show_bug.cgi?id=154875

        Reviewed by Myles C. Maxfield.

        New test.

        * fast/text/regress-154875-expected.txt: Added.
        * fast/text/regress-154875.html: Added.

2016-03-01  Filip Pizlo  <fpizlo@apple.com>

        FTL should simplify StringReplace with an empty replacement string
        https://bugs.webkit.org/show_bug.cgi?id=154871

        Reviewed by Michael Saboff.

        Really add this new test.

        * js/regress/script-tests/string-replace-empty.js: Added.
        * js/regress/string-replace-empty-expected.txt: Added.
        * js/regress/string-replace-empty.html: Added.

2016-02-29  Filip Pizlo  <fpizlo@apple.com>

        Turn String.prototype.replace into an intrinsic
        https://bugs.webkit.org/show_bug.cgi?id=154835

        Reviewed by Michael Saboff.

        * js/regress/script-tests/string-replace.js: Added.
        * js/regress/string-replace-expected.txt: Added.
        * js/regress/string-replace.html: Added.

2016-03-01  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline isplaylists/extent-includes tests for mac-wk1

        Unreviewed test gardening.

        * platform/mac-wk1/displaylists/extent-includes-shadow-expected.txt:
        * platform/mac-wk1/displaylists/extent-includes-transforms-expected.txt:

2016-02-29  Ryan Haddad  <ryanhaddad@apple.com>

        Marking webgl/1.0.2/conformance/extensions/get-extension.html as flaky on mac, removing wk1 specific flakiness expectation.
        https://bugs.webkit.org/show_bug.cgi?id=152506

        Unreviewed test gardening.

        * platform/mac-wk1/TestExpectations:
        * platform/mac/TestExpectations:

2016-02-29  Ryan Haddad  <ryanhaddad@apple.com>

        Marking storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange.html as flaky on mac
        https://bugs.webkit.org/show_bug.cgi?id=154748

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-02-29  Ryan Haddad  <ryanhaddad@apple.com>

        Re-enable passing fast/multicol/newmulticol tests on ios-simulator

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/TestExpectations:

2016-02-29  Ryan Haddad  <ryanhaddad@apple.com>

        Removing unnecessary ios-simulator-wk2 expectation file.

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/type-change-state-expected.txt: Removed.

2016-02-29  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline imported/w3c/web-platform-tests/html/dom/reflection-forms.html after r197355

        Unreviewed test gardening.

        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/reflection-forms-expected.txt:

2016-02-29  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline imported/w3c/web-platform-tests/html/dom/reflection-embedded.html for ios-simulator after r197237 

        Unreviewed test gardening.

        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/reflection-embedded-expected.txt:

2016-02-28  Filip Pizlo  <fpizlo@apple.com>

        B3 should have global store elimination
        https://bugs.webkit.org/show_bug.cgi?id=154658

        Reviewed by Benjamin Poulain.

        These two benchmarks both speed up significantly with this change.

        * js/regress/build-large-object-expected.txt: Added.
        * js/regress/build-large-object.html: Added.
        * js/regress/many-repeat-stores-expected.txt: Added.
        * js/regress/many-repeat-stores.html: Added.
        * js/regress/script-tests/build-large-object.js: Added.
        * js/regress/script-tests/many-repeat-stores.js: Added.

2016-02-29  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        streams/pipe-to.html flaky on mac-wk1 debug
        https://bugs.webkit.org/show_bug.cgi?id=154687

        Reviewed by Darin Adler.

        * TestExpectations: Marking streams/pipe-to.html as slow.
        * streams/pipe-to.html: Increasing the timeout value.

2016-02-29  Adrien Plazas  <aplazas@igalia.com>

        [GTK] Touch slider test fails due to assertion in webkitWebViewBaseTouchEvent()
        https://bugs.webkit.org/show_bug.cgi?id=153829

        Reviewed by Carlos Garcia Campos.

        * platform/gtk/TestExpectations:
        Remove now passing tests from the expected failures.

2016-02-28  Antti Koivisto  <antti@apple.com>

        ::slotted doesn't work in nested shadow trees
        https://bugs.webkit.org/show_bug.cgi?id=154765
        <rdar://problem/24870995>

        Reviewed by Ryosuke Niwa.

        * fast/shadow-dom/css-scoping-shadow-slotted-nested-expected.html: Added.
        * fast/shadow-dom/css-scoping-shadow-slotted-nested.html: Added.

2016-02-28  Tim Horton  <timothy_horton@apple.com>

        Switch to application/vnd.apple.folder for <attachment> folder special-case
        https://bugs.webkit.org/show_bug.cgi?id=154786
        <rdar://problem/24416632>

        Reviewed by Anders Carlsson.

        * fast/attachment/attachment-folder-icon-expected.html:
        * fast/attachment/attachment-folder-icon.html:

2016-02-28  Tim Horton  <timothy_horton@apple.com>

        Variables can resolve to the wrong value when elements differ in nothing but inherited variable value
        https://bugs.webkit.org/show_bug.cgi?id=154785

        Reviewed by Antti Koivisto.

        * fast/css/variables/avoid-matched-property-cache-expected.html: Added.
        * fast/css/variables/avoid-matched-property-cache.html: Added.
        Add a test. The non-standard element is necessary because the resolved property
        cache is already disabled when using the "simple" default style sheet, and
        it seems better to use a totally non-standard element than one that might
        end up in the "simple" default style sheet in the future and would silently
        invalidate the test.

2016-02-28  Skachkov Oleksandr  <gskachkov@gmail.com>

        [ES6] Arrow function syntax. Emit loading&putting this/super only if they are used in arrow function
        https://bugs.webkit.org/show_bug.cgi?id=153981

        Reviewed by Saam Barati.

        Added new benchmark tests for invoking arrow function within function, class's constructor and method

        * js/regress/arrowfunction-call-in-class-constructor-expected.txt: Added.
        * js/regress/arrowfunction-call-in-class-constructor.html: Added.
        * js/regress/arrowfunction-call-in-class-method-expected.txt: Added.
        * js/regress/arrowfunction-call-in-class-method.html: Added.
        * js/regress/arrowfunction-call-in-function-expected.txt: Added.
        * js/regress/arrowfunction-call-in-function.html: Added.
        * js/regress/script-tests/arrowfunction-call-in-class-constructor.js: Added.
        * js/regress/script-tests/arrowfunction-call-in-class-method.js: Added.
        * js/regress/script-tests/arrowfunction-call-in-function.js: Added.
        * js/regress/script-tests/arrowfunction-call.js:

2016-02-27  Sukolsak Sakshuwong  <sukolsak@gmail.com>

        Removing ios-simulator baseline for js/number-toLocaleString.html
        https://bugs.webkit.org/show_bug.cgi?id=154524

        Reviewed by Darin Adler.

        The default locale issue has been fixed in r197261.
        Infinity.toLocaleString() should return "∞" as expected.

        * platform/ios-simulator/js/number-toLocaleString-expected.txt: Removed.

2016-02-27  Chris Dumez  <cdumez@apple.com>

        Prevent cross-origin access to Location.assign() / Location.reload()
        https://bugs.webkit.org/show_bug.cgi?id=154779

        Reviewed by Darin Adler.

        Update existing layout tests now that we prevent cross-origin access to
        Location.assign() / Location.reload().

        * http/tests/security/cross-frame-access-getOwnPropertyDescriptor-expected.txt:
        * http/tests/security/cross-frame-access-getOwnPropertyDescriptor.html:
        * http/tests/security/cross-frame-access-location-get-expected.txt:
        * http/tests/security/cross-frame-access-location-get-override-expected.txt:
        * http/tests/security/cross-frame-access-location-get-override.html:
        * http/tests/security/cross-frame-access-location-get.html:
        * http/tests/security/xss-DENIED-defineProperty-expected.txt:

2016-02-27  Andy VanWagoner  <thetalecrafter@gmail.com>

        Intl.Collator uses POSIX locale (detected by js/intl-collator.html on iOS Simulator)
        https://bugs.webkit.org/show_bug.cgi?id=152448

        Reviewed by Darin Adler.

        Add tests for default locale in test runner to be en-US.

        * js/intl-collator-expected.txt:
        * js/intl-datetimeformat-expected.txt:
        * js/intl-numberformat-expected.txt:
        * js/script-tests/intl-collator.js:
        * js/script-tests/intl-datetimeformat.js:
        * js/script-tests/intl-numberformat.js:

2016-02-27  Chris Dumez  <cdumez@apple.com>

        Align HTMLMarqueeElement.scrollAmount / scrollDelay with the specification
        https://bugs.webkit.org/show_bug.cgi?id=154781

        Reviewed by Darin Adler.

        Update existing test to reflect the behavior changes.

        * fast/html/marquee-element-expected.txt:
        * fast/html/marquee-element.html:

2016-02-27  Alexey Proskuryakov  <ap@apple.com>

        Mark failing reftests as such, now that we detect reftest failures.

        * platform/ios-simulator/TestExpectations:

2016-02-27  Alexey Proskuryakov  <ap@apple.com>

        REGRESSION(r195795): [WK2] fast/text/crash-complex-text-surrogate.html is flakey
        https://bugs.webkit.org/show_bug.cgi?id=154709

        The test has been made made non-flaky, but it also needs new results.

        * platform/mac/fast/text/crash-complex-text-surrogate-expected.txt:

2016-02-26  Chris Dumez  <cdumez@apple.com>

        Fix the behavior of reflecting IDL attributes of type unsigned long
        https://bugs.webkit.org/show_bug.cgi?id=154771

        Reviewed by Ryosuke Niwa.

        Add test coverage for the behavior of reflecting IDL attributes of type
        unsigned long.

        * fast/dom/reflect-unsigned-long-expected.txt: Added.
        * fast/dom/reflect-unsigned-long.html: Added.

2016-02-26  Zalan Bujtas  <zalan@apple.com>

        REGRESSION (188611): Search field Cancel button should not overlap search text on extensions page.
        https://bugs.webkit.org/show_bug.cgi?id=154692
        <rdar://problem/22840453>

        Reviewed by Brent Fulgham.

        Adjust the cancel button position using the actual size of the cancel button.

        When the input box and the font height trigger different cancel button sizes, we need to readjust
        the rectangle returned by cancelButtonRectForBounds.
        This fixes both the mispositioned cancel button and the squared off icon when the input field is zoomed all the way in.

        * fast/forms/search/search-padding-cancel-results-buttons-expected.txt:
        * platform/mac/fast/css/focus-ring-exists-for-search-field-expected.txt:
        * platform/mac/fast/css/text-input-with-webkit-border-radius-expected.txt:
        * platform/mac/fast/css/text-overflow-input-expected.txt:
        * platform/mac/fast/forms/box-shadow-override-expected.txt:
        * platform/mac/fast/forms/control-restrict-line-height-expected.txt:
        * platform/mac/fast/forms/input-appearance-height-expected.txt:
        * platform/mac/fast/forms/placeholder-position-expected.txt:
        * platform/mac/fast/forms/placeholder-pseudo-style-expected.txt:
        * platform/mac/fast/forms/search-cancel-button-style-sharing-expected.txt:
        * platform/mac/fast/forms/search-display-none-cancel-button-expected.txt:
        * platform/mac/fast/forms/search-rtl-expected.txt:
        * platform/mac/fast/forms/search-styled-expected.txt:
        * platform/mac/fast/forms/search-vertical-alignment-expected.txt:
        * platform/mac/fast/forms/search/search-size-with-decorations-expected.txt:
        * platform/mac/fast/forms/searchfield-heights-expected.txt:
        * platform/mac/fast/repaint/search-field-cancel-expected.txt:
        * platform/mac/fast/replaced/width100percent-searchfield-expected.txt:

2016-02-26  Commit Queue  <commit-queue@webkit.org>

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

        Test simply needs updated result (Requested by litherum on
        #webkit).

        Reverted changeset:

        "Unreviewed, rolling out r197158."
        https://bugs.webkit.org/show_bug.cgi?id=154758
        http://trac.webkit.org/changeset/197216

2016-02-26  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline tests for ios-simulator after r197162

        Unreviewed test gardening.

        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt:
        * platform/ios-simulator/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/type-change-state-expected.txt:
        * platform/ios-simulator/imported/w3c/web-platform-tests/html/semantics/selectors/pseudo-classes/indeterminate-radio-expected.txt: Added.

2016-02-26  Commit Queue  <commit-queue@webkit.org>

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

        This change did not fix the failing test (Requested by
        ryanhaddad on #webkit).

        Reverted changeset:

        "REGRESSION(r195795): [WK2] fast/text/crash-complex-text-
        surrogate.html is flakey"
        https://bugs.webkit.org/show_bug.cgi?id=154709
        http://trac.webkit.org/changeset/197158

2016-02-26  Commit Queue  <commit-queue@webkit.org>

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

        This change causes editing/mac/attributed-string/font-
        size.html to fail on El Capitan WK1 (Requested by ryanhaddad
        on #webkit).

        Reverted changeset:

        "Font size computed style is innaccurate"
        https://bugs.webkit.org/show_bug.cgi?id=154705
        http://trac.webkit.org/changeset/197160

2016-02-26  Ryan Haddad  <ryanhaddad@apple.com>

        Skip js/basic-map.html on Mac since it is already run in JSC tests
        https://bugs.webkit.org/show_bug.cgi?id=154753

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-02-26  Mark Lam  <mark.lam@apple.com>

        Function.name and Function.length should be configurable.
        https://bugs.webkit.org/show_bug.cgi?id=154604

        Reviewed by Saam Barati.

        * ietestcenter/Javascript/TestCases/15.2.3.3-4-187.js:
        (ES5Harness.registerTest.test):
        * ietestcenter/Javascript/TestCases/15.3.4.5-15-2.js:
        (ES5Harness.registerTest.test):
        * js/dom/function-name-expected.txt:
        * js/dom/getOwnPropertyDescriptor-expected.txt:
        * js/dom/script-tests/function-name.js:
        * js/mozilla/strict/15.3.5.1-expected.txt:
        * js/mozilla/strict/function-name-arity-expected.txt:
        * js/mozilla/strict/script-tests/15.3.5.1.js:
        * js/mozilla/strict/script-tests/function-name-arity.js:
        * js/resources/getOwnPropertyDescriptor.js:
        * sputnik/Conformance/15_Native_Objects/15.10_RegExp/15.10.6/15.10.6.2_RegExp.prototype.exec/S15.10.6.2_A9.html:
        * sputnik/Conformance/15_Native_Objects/15.10_RegExp/15.10.6/15.10.6.3_RegExp.prototype.test/S15.10.6.3_A9.html:
        * sputnik/Conformance/15_Native_Objects/15.10_RegExp/15.10.6/15.10.6.4_RegExp.prototype.toString/S15.10.6.4_A9.html:
        * sputnik/Conformance/15_Native_Objects/15.1_The_Global_Object/15.1.2/15.1.2.1_eval/S15.1.2.1_A4.2.html:
        * sputnik/Conformance/15_Native_Objects/15.1_The_Global_Object/15.1.2/15.1.2.2_parseInt/S15.1.2.2_A9.2.html:
        * sputnik/Conformance/15_Native_Objects/15.1_The_Global_Object/15.1.2/15.1.2.3_parseFloat/S15.1.2.3_A7.2.html:
        * sputnik/Conformance/15_Native_Objects/15.1_The_Global_Object/15.1.2/15.1.2.4_isNaN/S15.1.2.4_A2.2.html:
        * sputnik/Conformance/15_Native_Objects/15.1_The_Global_Object/15.1.2/15.1.2.5_isFinite/S15.1.2.5_A2.2.html:
        * sputnik/Conformance/15_Native_Objects/15.1_The_Global_Object/15.1.3/15.1.3.1_decodeURI/S15.1.3.1_A5.2.html:
        * sputnik/Conformance/15_Native_Objects/15.1_The_Global_Object/15.1.3/15.1.3.2_decodeURIComponent/S15.1.3.2_A5.2.html:
        * sputnik/Conformance/15_Native_Objects/15.1_The_Global_Object/15.1.3/15.1.3.3_encodeURI/S15.1.3.3_A5.2.html:
        * sputnik/Conformance/15_Native_Objects/15.1_The_Global_Object/15.1.3/15.1.3.4_encodeURIComponent/S15.1.3.4_A5.2.html:
        * sputnik/Conformance/15_Native_Objects/15.2_Object/15.2.4/15.2.4.2_Object.prototype.toString/S15.2.4.2_A9.html:
        * sputnik/Conformance/15_Native_Objects/15.2_Object/15.2.4/15.2.4.3_Object.prototype.toLocaleString/S15.2.4.3_A9.html:
        * sputnik/Conformance/15_Native_Objects/15.2_Object/15.2.4/15.2.4.4_Object.prototype.valueOf/S15.2.4.4_A9.html:
        * sputnik/Conformance/15_Native_Objects/15.2_Object/15.2.4/15.2.4.5_Object.prototype.hasOwnProperty/S15.2.4.5_A9.html:
        * sputnik/Conformance/15_Native_Objects/15.2_Object/15.2.4/15.2.4.6_Object.prototype.isPrototypeOf/S15.2.4.6_A9.html:
        * sputnik/Conformance/15_Native_Objects/15.2_Object/15.2.4/15.2.4.7_Object.prototype.propertyIsEnumerable/S15.2.4.7_A9.html:
        * sputnik/Conformance/15_Native_Objects/15.3_Function/15.3.4/15.3.4.2_Function.prototype.toString/S15.3.4.2_A9.html:
        * sputnik/Conformance/15_Native_Objects/15.3_Function/15.3.4/15.3.4.3_Function.prototype.apply/S15.3.4.3_A9.html:
        * sputnik/Conformance/15_Native_Objects/15.3_Function/15.3.4/15.3.4.4_Function.prototype.call/S15.3.4.4_A9.html:
        * sputnik/Conformance/15_Native_Objects/15.3_Function/15.3.5/S15.3.5.1_A2_T1.html:
        * sputnik/Conformance/15_Native_Objects/15.3_Function/15.3.5/S15.3.5.1_A2_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.3_Function/15.3.5/S15.3.5.1_A2_T3.html:
        * sputnik/Conformance/15_Native_Objects/15.4_Array/15.4.4/15.4.4.10_Array_prototype_slice/S15.4.4.10_A5.2.html:
        * sputnik/Conformance/15_Native_Objects/15.4_Array/15.4.4/15.4.4.11_Array_prototype_sort/S15.4.4.11_A7.2.html:
        * sputnik/Conformance/15_Native_Objects/15.4_Array/15.4.4/15.4.4.12_Array_prototype_splice/S15.4.4.12_A5.2.html:
        * sputnik/Conformance/15_Native_Objects/15.4_Array/15.4.4/15.4.4.13_Array_prototype_unshift/S15.4.4.13_A5.2.html:
        * sputnik/Conformance/15_Native_Objects/15.4_Array/15.4.4/15.4.4.2_Array_prototype_toString/S15.4.4.2_A4.2.html:
        * sputnik/Conformance/15_Native_Objects/15.4_Array/15.4.4/15.4.4.3_Array_prototype_toLocaleString/S15.4.4.3_A4.2.html:
        * sputnik/Conformance/15_Native_Objects/15.4_Array/15.4.4/15.4.4.4_Array_prototype_concat/S15.4.4.4_A4.2.html:
        * sputnik/Conformance/15_Native_Objects/15.4_Array/15.4.4/15.4.4.5_Array_prototype_join/S15.4.4.5_A6.2.html:
        * sputnik/Conformance/15_Native_Objects/15.4_Array/15.4.4/15.4.4.6_Array_prototype_pop/S15.4.4.6_A5.2.html:
        * sputnik/Conformance/15_Native_Objects/15.4_Array/15.4.4/15.4.4.7_Array_prototype_push/S15.4.4.7_A6.2.html:
        * sputnik/Conformance/15_Native_Objects/15.4_Array/15.4.4/15.4.4.8_Array_prototype_reverse/S15.4.4.8_A5.2.html:
        * sputnik/Conformance/15_Native_Objects/15.4_Array/15.4.4/15.4.4.9_Array_prototype_shift/S15.4.4.9_A5.2.html:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.10_String.prototype.match/S15.5.4.10_A9.html:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.11_String.prototype.replace/S15.5.4.11_A9.html:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.12_String.prototype.search/S15.5.4.12_A9.html:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.13_String.prototype.slice/S15.5.4.13_A9.html:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.14_String.prototype.split/S15.5.4.14_A9.html:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.15_String.prototype.substring/S15.5.4.15_A9.html:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.16_String.prototype.toLowerCase/S15.5.4.16_A9.html:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.17_String.prototype.toLocaleLowerCase/S15.5.4.17_A9.html:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.18_String.prototype.toUpperCase/S15.5.4.18_A9.html:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.19_String.prototype.toLocaleUpperCase/S15.5.4.19_A9.html:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.4_String.prototype.charAt/S15.5.4.4_A9.html:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.5_String.prototype.charCodeAt/S15.5.4.5_A9.html:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.6_String.prototype.concat/S15.5.4.6_A9.html:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.7_String.prototype.indexOf/S15.5.4.7_A9.html:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.8_String.prototype.lastIndexOf/S15.5.4.8_A9.html:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.9_String.prototype.localeCompare/S15.5.4.9_A9.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.4/15.9.4.2_Date.parse/S15.9.4.2_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.4/15.9.4.3_Date.UTC/S15.9.4.3_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.10_Date.prototype.getFullYear/S15.9.5.10_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.11_Date.prototype.getUTCFullYear/S15.9.5.11_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.12_Date.prototype.getMonth/S15.9.5.12_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.13_Date.prototype.getUTCMonth/S15.9.5.13_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.14_Date.prototype.getDate/S15.9.5.14_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.15_Date.prototype.getUTCDate/S15.9.5.15_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.16_Date.prototype.getDay/S15.9.5.16_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.17_Date.prototype.getUTCDay/S15.9.5.17_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.18_Date.prototype.getHours/S15.9.5.18_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.19_Date.prototype.getUTCHours/S15.9.5.19_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.20_Date.prototype.getMinutes/S15.9.5.20_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.21_Date.prototype.getUTCMinutes/S15.9.5.21_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.22_Date.prototype.getSeconds/S15.9.5.22_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.23_Date.prototype.getUTCSeconds/S15.9.5.23_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.24_Date.prototype.getMilliseconds/S15.9.5.24_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.25_Date.prototype.getUTCMilliseconds/S15.9.5.25_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.26_Date.prototype.getTimezoneOffset/S15.9.5.26_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.27_Date.prototype.setTime/S15.9.5.27_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.28_Date.prototype.setMilliseconds/S15.9.5.28_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.29_Date.prototype.setUTCMilliseconds/S15.9.5.29_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.2_Date.prototype.toString/S15.9.5.2_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.30_Date.prototype.setSeconds/S15.9.5.30_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.31_Date.prototype.setUTCSeconds/S15.9.5.31_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.32_Date.prototype.setMinutes/S15.9.5.32_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.33_Date.prototype.setUTCMinutes/S15.9.5.33_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.34_Date.prototype.setHours/S15.9.5.34_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.35_Date.prototype.setUTCHours/S15.9.5.35_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.36_Date.prototype.setDate/S15.9.5.36_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.37_Date.prototype.setUTCDate/S15.9.5.37_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.38_Date.prototype.setMonth/S15.9.5.38_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.39_Date.prototype.setUTCMonth/S15.9.5.39_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.3_Date.prototype.toDateString/S15.9.5.3_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.40_Date.prototype.setFullYear/S15.9.5.40_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.41_Date.prototype.setUTCFullYear/S15.9.5.41_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.42_Date.prototype.toUTCString/S15.9.5.42_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.4_Date.prototype.toTimeString/S15.9.5.4_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.5_Date.prototype.toLocaleString/S15.9.5.5_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.6_Date.prototype.toLocaleDateString/S15.9.5.6_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.7_Date.prototype.toLocaleTimeString/S15.9.5.7_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.8_Date.prototype.valueOf/S15.9.5.8_A3_T2.html:
        * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.9_Date.prototype.getTime/S15.9.5.9_A3_T2.html:

2016-02-26  Chris Dumez  <cdumez@apple.com>

        Unreviewed, fix flaky test introduced in r197156.

        * fast/dom/Node/nullable-parameters-expected.txt:
        * fast/dom/Node/nullable-parameters.html:
        * fast/dom/Node/resources/testdoc.xml: Removed.
        * fast/dom/Node/resources/testdoc2.xml: Removed.

2016-02-26  Said Abou-Hallawa  <sabouhallawa@apple.com>

        <g> wrapping <symbol> causes display of hidden <symbol>
        https://bugs.webkit.org/show_bug.cgi?id=154576

        Reviewed by Darin Adler.

        Ensure the <symbol> element is not displayed when it's wrapped in a <g>
        element and this <g> element is referenced by a <use> element.

        * platform/gtk/svg/custom/use-on-g-containing-symbol-expected.png: Removed.
        * platform/gtk/svg/custom/use-on-g-containing-symbol-expected.txt: Removed.
        * platform/ios-simulator/svg/custom/use-on-g-containing-symbol-expected.txt: Removed.
        * platform/mac/svg/custom/use-on-g-containing-symbol-expected.png: Removed.
        * platform/mac/svg/custom/use-on-g-containing-symbol-expected.txt: Removed.
        * platform/win/svg/custom/use-on-g-containing-symbol-expected.txt: Removed.
        * svg/custom/use-on-g-containing-symbol-expected.svg: Added.
        * svg/custom/use-on-g-containing-symbol.svg:
        The original test was wrong. It had the following definition:
            "<g id='symbol'><symbol>...</symbol></g>"
        And it was expecting to have the symbol drawn if the <g> element was
        referenced like that
            "<use xlink:href='#symbol'/>"
        FireFox does not render anything for this <use> element which is correct.
        With this patch, this test failed so it had to be modified to test the right
        behavior. Also it is now converted to a ref test.

2016-02-26  Commit Queue  <commit-queue@webkit.org>

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

        This change broke the Mac build (Requested by ryanhaddad on
        #webkit).

        Reverted changeset:

        "REGRESSION (188611): Search field Cancel button should not
        overlap search text on extensions page."
        https://bugs.webkit.org/show_bug.cgi?id=154692
        http://trac.webkit.org/changeset/197167

2016-02-26  Zalan Bujtas  <zalan@apple.com>

        REGRESSION (188611): Search field Cancel button should not overlap search text on extensions page.
        https://bugs.webkit.org/show_bug.cgi?id=154692
        <rdar://problem/22840453>

        Reviewed by Brent Fulgham.

        Adjust the cancel button position using the actual size of the cancel button.

        When the input box and the font height trigger different cancel button sizes, we need to readjust
        the rectangle returned by cancelButtonRectForBounds.
        This fixes both the mispositioned cancel button and the squared off icon when the input field is zoomed all the way in.

        Covered by existing tests.

        * fast/forms/search/search-padding-cancel-results-buttons-expected.txt:
        * platform/mac/fast/css/focus-ring-exists-for-search-field-expected.txt:
        * platform/mac/fast/css/text-input-with-webkit-border-radius-expected.txt:
        * platform/mac/fast/css/text-overflow-input-expected.txt:
        * platform/mac/fast/forms/box-shadow-override-expected.txt:
        * platform/mac/fast/forms/control-restrict-line-height-expected.txt:
        * platform/mac/fast/forms/input-appearance-height-expected.txt:
        * platform/mac/fast/forms/placeholder-position-expected.txt:
        * platform/mac/fast/forms/placeholder-pseudo-style-expected.txt:
        * platform/mac/fast/forms/search-cancel-button-style-sharing-expected.txt:
        * platform/mac/fast/forms/search-display-none-cancel-button-expected.txt:
        * platform/mac/fast/forms/search-rtl-expected.txt:
        * platform/mac/fast/forms/search-styled-expected.txt:
        * platform/mac/fast/forms/search-vertical-alignment-expected.txt:
        * platform/mac/fast/forms/search/search-size-with-decorations-expected.txt:
        * platform/mac/fast/forms/searchfield-heights-expected.txt:
        * platform/mac/fast/repaint/search-field-cancel-expected.txt:
        * platform/mac/fast/replaced/width100percent-searchfield-expected.txt:

2016-02-26  Antti Koivisto  <antti@apple.com>

        Implement ::slotted pseudo element
        https://bugs.webkit.org/show_bug.cgi?id=149441
        <rdar://problem/22731987>

        Reviewed by Andreas Kling.

        * fast/shadow-dom/css-scoping-shadow-slotted-rule.html:

            Enable the test, fix it and update it to the current spec.

        * fast/shadow-dom/slotted-pseudo-element-css-text-expected.txt: Added.
        * fast/shadow-dom/slotted-pseudo-element-css-text.html: Added.

            Add parsing/cssText test based on a Blink test.
            There are a few failures due to * not roundtripping and the parser being too lenient with pseudo elements.

        * platform/mac/TestExpectations:

2016-02-26  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        Sync web-platform-tests up to revision 5ca8b46
        https://bugs.webkit.org/show_bug.cgi?id=154678

        Reviewed by Chris Dumez.

        * platform/mac/TestExpectations: Renaming test filenames, and adding test expectation to area-coords.html.

2016-02-25  Myles C. Maxfield  <mmaxfield@apple.com>

        Font size computed style is innaccurate
        https://bugs.webkit.org/show_bug.cgi?id=154705
        <rdar://problem/23474068>

        Reviewed by Timothy Hatcher.

        Update expected results.

        * css3/calc/font-size-fractional-expected.txt:
        * css3/viewport-percentage-lengths/viewport-percentage-lengths-relative-font-size.html:
        * css3/viewport-percentage-lengths/viewport-percentage-lengths-relative-font-size-expected.txt:
        * editing/mac/attributed-string/font-size-expected.txt:
        * editing/mac/attributed-string/vertical-align-expected.txt:
        * platform/mac-mavericks/editing/mac/attributed-string/font-size-expected.txt:
        * platform/mac-mavericks/editing/mac/attributed-string/vertical-align-expected.txt:
        * platform/mac-yosemite/editing/mac/attributed-string/font-size-expected.txt:
        * platform/mac-yosemite/editing/mac/attributed-string/vertical-align-expected.txt:

2016-02-25  Myles C. Maxfield  <mmaxfield@apple.com>

        REGRESSION(r195795): [WK2] fast/text/crash-complex-text-surrogate.html is flakey
        https://bugs.webkit.org/show_bug.cgi?id=154709
        <rdar://problem/24483596>

        Reviewed by Dan Bernstein.

        * platform/mac-wk2/TestExpectations:

2016-02-25  Chris Dumez  <cdumez@apple.com>

        [Web IDL] Mark DOMString parameters as nullable when they should be
        https://bugs.webkit.org/show_bug.cgi?id=154666

        Reviewed by Darin Adler.

        Add test coverage for minor behavioral changes in this patch.

        * fast/dom/Element/getElementsByTagNameNS-nullable-expected.txt: Added.
        * fast/dom/Element/getElementsByTagNameNS-nullable.html: Added.
        * fast/dom/Node/nullable-parameters-expected.txt: Added.
        * fast/dom/Node/nullable-parameters.html: Added.
        * fast/dom/Node/resources/testdoc.xml: Added.
        * fast/dom/Node/resources/testdoc2.xml: Added.
        * fast/events/storageevent-initStorageEvent-nullable-expected.txt: Added.
        * fast/events/storageevent-initStorageEvent-nullable.html: Added.

2016-02-25  Ryan Haddad  <ryanhaddad@apple.com>

        Skipping flaky test storage/indexeddb/intversion-open-in-upgradeneeded.html on mac-wk2
        https://bugs.webkit.org/show_bug.cgi?id=154706

        Unreviewed test gardening.

        * platform/mac-wk2/TestExpectations:

2016-02-25  Daniel Bates  <dabates@apple.com>

        [iOS Simulator] http/tests/security/contentSecurityPolicy/1.1/plugintypes tests failing
        https://bugs.webkit.org/show_bug.cgi?id=154652

        Skip Content Security Policy plugin-types tests when run in the iOS simulator app because
        plugins are not supported on iOS.

        * platform/ios-simulator/TestExpectations:

2016-02-25  Myles C. Maxfield  <mmaxfield@apple.com>

        [Win] [SVG -> OTF Converter] Support the SVG -> OTF Font Converter
        https://bugs.webkit.org/show_bug.cgi?id=143402

        Reviewed by Alex Christensen.

        Rebaseline many tests.

        There are some known bugs (which are marked in platform/win/TestExpecations):
        webkit.org/b/137204 The SVG -> OTF Font converter outputs 'kern' tables instead of 'GPOS' tables
        webkit.org/b/154690 SVG Fonts don't draw multibyte characters
        webkit.org/b/137096 The SVG -> OTF Font Converter does not work with SVG's "altglyph" facility
        webkit.org/b/137093 Same thing with the "lang" attribute

        * platform/win/svg/W3C-SVG-1.1/fonts-desc-02-t-expected.txt: Added.
        * platform/win/svg/W3C-SVG-1.1/text-text-06-t-expected.txt: Added.
        * platform/win/TestExpectations:
        * platform/win/svg/W3C-SVG-1.1-SE/color-prop-05-t-expected.txt:
        * platform/win/svg/W3C-SVG-1.1-SE/coords-dom-01-f-expected.txt:
        * platform/win/svg/W3C-SVG-1.1-SE/coords-dom-02-f-expected.txt:
        * platform/win/svg/W3C-SVG-1.1-SE/coords-dom-03-f-expected.txt:
        * platform/win/svg/W3C-SVG-1.1-SE/coords-dom-04-f-expected.txt:
        * platform/win/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.txt:
        * platform/win/svg/W3C-SVG-1.1-SE/filters-felem-01-b-expected.txt:
        * platform/win/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.txt:
        * platform/win/svg/W3C-SVG-1.1-SE/interact-pointer-03-t-expected.txt:
        * platform/win/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.txt:
        * platform/win/svg/W3C-SVG-1.1-SE/paths-dom-02-f-expected.txt:
        * platform/win/svg/W3C-SVG-1.1-SE/pservers-grad-17-b-expected.txt:
        * platform/win/svg/W3C-SVG-1.1-SE/pservers-grad-20-b-expected.txt:
        * platform/win/svg/W3C-SVG-1.1-SE/pservers-pattern-03-f-expected.txt:
        * platform/win/svg/W3C-SVG-1.1-SE/pservers-pattern-04-f-expected.txt:
        * platform/win/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.txt:
        * platform/win/svg/W3C-SVG-1.1-SE/styling-css-04-f-expected.txt:
        * platform/win/svg/W3C-SVG-1.1-SE/styling-pres-02-f-expected.txt:
        * platform/win/svg/W3C-SVG-1.1-SE/svgdom-over-01-f-expected.txt:
        * platform/win/svg/W3C-SVG-1.1-SE/text-tref-03-b-expected.txt:
        * platform/win/svg/W3C-SVG-1.1-SE/text-tspan-02-b-expected.txt:
        * platform/win/svg/W3C-SVG-1.1-SE/types-dom-02-f-expected.txt:
        * platform/win/svg/W3C-SVG-1.1-SE/types-dom-03-b-expected.txt:
        * platform/win/svg/W3C-SVG-1.1-SE/types-dom-04-b-expected.txt:
        * platform/win/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.txt:
        * platform/win/svg/W3C-SVG-1.1-SE/types-dom-06-f-expected.txt:
        * platform/win/svg/W3C-SVG-1.1-SE/types-dom-07-f-expected.txt:
        * platform/win/svg/W3C-SVG-1.1/animate-elem-03-t-expected.txt:
        * platform/win/svg/W3C-SVG-1.1/animate-elem-24-t-expected.txt:
        * platform/win/svg/W3C-SVG-1.1/animate-elem-36-t-expected.txt:
        * platform/win/svg/W3C-SVG-1.1/animate-elem-40-t-expected.txt:
        * platform/win/svg/W3C-SVG-1.1/filters-light-04-f-expected.txt:
        * platform/win/svg/W3C-SVG-1.1/filters-turb-02-f-expected.txt:
        * platform/win/svg/W3C-SVG-1.1/fonts-elem-01-t-expected.txt:
        * platform/win/svg/W3C-SVG-1.1/fonts-elem-02-t-expected.txt:
        * platform/win/svg/W3C-SVG-1.1/fonts-elem-03-b-expected.txt:
        * platform/win/svg/W3C-SVG-1.1/fonts-elem-04-b-expected.txt:
        * platform/win/svg/W3C-SVG-1.1/fonts-elem-05-t-expected.txt:
        * platform/win/svg/W3C-SVG-1.1/fonts-elem-06-t-expected.txt:
        * platform/win/svg/W3C-SVG-1.1/fonts-elem-07-b-expected.txt:
        * platform/win/svg/W3C-SVG-1.1/masking-mask-01-b-expected.txt:
        * platform/win/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.txt:
        * platform/win/svg/W3C-SVG-1.1/render-elems-06-t-expected.txt:
        * platform/win/svg/W3C-SVG-1.1/render-elems-07-t-expected.txt:
        * platform/win/svg/W3C-SVG-1.1/render-elems-08-t-expected.txt:
        * platform/win/svg/W3C-SVG-1.1/render-groups-01-b-expected.txt:
        * platform/win/svg/W3C-SVG-1.1/render-groups-03-t-expected.txt:
        * platform/win/svg/W3C-SVG-1.1/text-fonts-03-t-expected.txt:
        * platform/win/svg/W3C-SVG-1.1/text-intro-02-b-expected.txt:
        * platform/win/svg/W3C-SVG-1.1/text-intro-03-b-expected.txt:
        * platform/win/svg/batik/text/textEffect-expected.txt:
        * platform/win/svg/batik/text/textEffect3-expected.txt:
        * platform/win/svg/custom/glyph-selection-arabic-forms-expected.txt:
        * platform/win/svg/custom/svg-fonts-in-html-expected.txt:
        * platform/win/svg/custom/svg-fonts-with-no-element-reference-expected.txt: Added.
        * platform/win/svg/custom/svg-fonts-word-spacing-expected.txt:
        * platform/win/svg/foreignObject/text-tref-02-b-expected.txt:
        * platform/win/svg/hixie/intrinsic/003-expected.txt:
        * platform/win/svg/text/text-overflow-ellipsis-svgfont-kerning-ligatures-expected.txt:
        * platform/win/svg/text/text-text-04-t-expected.txt:
        * platform/win/svg/text/text-text-05-t-expected.txt:
        * platform/win/svg/text/text-text-06-t-expected.txt:
        * platform/win/svg/wicd/test-rightsizing-b-expected.txt:
        * platform/win/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.txt:
        * platform/win/svg/zoom/page/zoom-svg-through-object-with-absolute-size-expected.txt:

2016-02-25  Daniel Bates  <dabates@apple.com>

        CSP: Remove SecurityPolicy script interface
        https://bugs.webkit.org/show_bug.cgi?id=154694
        <rdar://problem/24846482>

        Reviewed by Andy Estes.

        Remove SecurityPolicy tests and update platform-specific expected results as needed.

        * http/tests/security/contentSecurityPolicy/1.1/securitypolicy-allowconnectionto-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicy-allowconnectionto.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicy-alloweval-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicy-alloweval.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicy-allowfontfrom-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicy-allowfontfrom.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicy-allowformaction-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicy-allowformaction.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicy-allowframefrom-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicy-allowframefrom.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicy-allowimagefrom-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicy-allowimagefrom.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicy-allowinlinescript-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicy-allowinlinescript.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicy-allowinlinestyle-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicy-allowinlinestyle.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicy-allowmediafrom-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicy-allowmediafrom.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicy-allowobjectfrom-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicy-allowobjectfrom.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicy-allowplugintype-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicy-allowplugintype.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicy-allowscriptfrom-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicy-allowscriptfrom.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicy-allowstylefrom-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicy-allowstylefrom.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicy-isactive-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicy-isactive.html: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicy-reporturi-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicy-reporturi.html: Removed.
        * http/tests/security/contentSecurityPolicy/resources/securitypolicy-tests-base.js: Removed.
        * platform/gtk/js/dom/global-constructors-attributes-expected.txt: Update expected result as needed.
        * platform/win/js/dom/global-constructors-attributes-expected.txt: Ditto.

2016-02-25  Chris Dumez  <cdumez@apple.com>

        Drop [TreatReturnedNullStringAs=Undefined] WebKit-specific IDL attribute
        https://bugs.webkit.org/show_bug.cgi?id=154662

        Reviewed by Darin Adler.

        Add layout test to cover the return value of document.defaultCharset before
        and after its frame is detached.

        * fast/frames/detached-frame-document-defaultCharset-expected.txt: Added.
        * fast/frames/detached-frame-document-defaultCharset.html: Added.

2016-02-25  Ryan Haddad  <ryanhaddad@apple.com>

        Removing failure expectation for 26 editing tests that now pass on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=152131

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/TestExpectations:
        * platform/ios-simulator/TestExpectations:

2016-02-25  Brady Eidson  <beidson@apple.com>

        Unreviewed test gardening.

        Fix a test flake where order doesn't matter.

        * platform/wk2/storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-expected.txt: Removed.
        * storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-expected.txt:
        * storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-private-expected.txt:
        * storage/indexeddb/resources/deletedatabase-delayed-by-open-and-versionchange.js:
        (prepareDatabase.request.onblocked):
        (onOpenSuccess):

2016-02-25  Brady Eidson  <beidson@apple.com>

        Unreviewed test gardening.

        * TestExpectations: Skip a web inspector IndexedDB test for now.

2016-02-25  Ryan Haddad  <ryanhaddad@apple.com>

        Removing a pass expectation for inspector/indexeddb/requestDatabaseNames.html that overrides the skip r197122

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-02-25  Brady Eidson  <beidson@apple.com>

        Modern IDB: WebKit 2 IPC layer.
        https://bugs.webkit.org/show_bug.cgi?id=153808

        Reviewed by Alex Christensen.

        - Consolidate all test failures to the platform agnostic TestExpectations file.
        - Remove all existing WK2-specific results.
        - Add one new WK2-specific result.
        - Skip two WK2-only failures.
        
        * TestExpectations:
        * platform/mac-wk1/TestExpectations:
        * platform/mac-wk2/TestExpectations:
        * platform/wk2/TestExpectations:
        * platform/wk2/imported/w3c/indexeddb/abort-in-initial-upgradeneeded-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/idbcursor-advance-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/idbcursor_advance_index5-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/idbcursor_advance_index9-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/idbcursor_advance_objectstore5-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/idbcursor_continue_index5-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/idbcursor_continue_index6-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/idbcursor_continue_index8-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/idbcursor_continue_invalid-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/idbcursor_continue_objectstore6-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/idbcursor_delete_index4-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/idbcursor_delete_objectstore4-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/idbdatabase_close2-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/idbdatabase_deleteObjectStore4-not_reused-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/idbfactory_deleteDatabase3-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/idbfactory_open12-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/idbindex-multientry-big-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/idbindex_get3-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/idbindex_get7-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/idbindex_getKey7-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/idbindex_openCursor2-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/idbindex_openKeyCursor3-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/idbobjectstore_add4-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/idbobjectstore_createIndex2-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/idbobjectstore_createIndex4-deleteIndex-event_order-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/idbobjectstore_createIndex6-event_order-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/idbobjectstore_createIndex7-event_order-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/idbobjectstore_put4-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/idbtransaction_abort-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/idbversionchangeevent-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/keygenerator-constrainterror-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/keygenerator-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/keygenerator-overflow-expected.txt: Removed.
        * platform/wk2/imported/w3c/indexeddb/transaction-requestqueue-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/aborted-versionchange-closes-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/bad-keypath-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/basics-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/clear-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/create-and-remove-object-store-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/create-objectstore-basics-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/cursor-continue-dir-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/cursor-continue-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/cursor-finished-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/cursors-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/database-basics-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/deleteIndex-bug110792-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-expected.txt: Added.
        * platform/wk2/storage/indexeddb/index-count-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/intversion-abort-in-initial-upgradeneeded-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/intversion-close-in-oncomplete-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/intversion-close-in-upgradeneeded-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/invalid-keys-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/key-requirements-delete-null-key-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/key-requirements-inline-and-passed-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/key-requirements-put-no-key-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/key-requirements-put-null-key-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/key-type-array-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/keypath-arrays-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/keypath-edges-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/keyrange-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/mozilla/bad-keypath-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/mozilla/clear-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/mozilla/create-objectstore-basics-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/mozilla/cursors-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/mozilla/key-requirements-delete-null-key-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/mozilla/key-requirements-inline-and-passed-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/mozilla/key-requirements-put-no-key-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/mozilla/key-requirements-put-null-key-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/mozilla/readonly-transactions-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/object-lookups-in-versionchange-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/objectstore-count-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/open-cursor-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/readonly-transactions-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/request-result-cache-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/transaction-abort-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/transaction-active-flag-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/transaction-after-close-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/transaction-read-only-expected.txt: Removed.
        * platform/wk2/storage/indexeddb/version-change-exclusive-expected.txt: Removed.

2016-02-25  Daniel Bates  <dabates@apple.com>

        CSP: Make SecurityPolicyViolationEvent more closely conform to CSP spec and enable it by default
        https://bugs.webkit.org/show_bug.cgi?id=154522
        <rdar://problem/24762078>

        Reviewed by Brent Fulgham.

        Add new test http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-image-https.html
        to ensure that SecurityPolicyViolationEvent.statusCode is 0 when dispatched for a violation on an HTTPS-served
        document per section Reporting of the Content Security Policy 2.0 spec, <https://www.w3.org/TR/2015/CR-CSP2-20150721/>.
        Update existing test results and mark more tests as PASS in file LayoutTests/TestExpectations.

        * TestExpectations: Mark tests http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation*.html as PASS
        so that we run them.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-basics-expected.txt: Update expected result to
        reflect failing sub-test. We do not support the experimental JavaScript event listener onsecuritypolicyviolation when
        building with ENABLE(CSP_NEXT) disabled.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-cross-origin-image-expected.txt: Update line and column numbers.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-cross-origin-image-from-script-expected.txt: Ditto.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-cross-origin-image-from-script.html: Ditto.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-cross-origin-image.html: Ditto.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-image-expected.txt: Ditto.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-image-from-script-expected.txt: Ditto.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-image-from-script.html: Ditto.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-image-https-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-image-https.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-image.html: Update line and column numbers.
        * js/dom/global-constructors-attributes-expected.txt: Update expected results now that we expose SecurityPolicyViolationEvent.
        * platform/efl/js/dom/global-constructors-attributes-expected.txt: Ditto.
        * platform/mac-mavericks/js/dom/global-constructors-attributes-expected.txt: Ditto.
        * platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt: Ditto.
        * platform/mac/js/dom/global-constructors-attributes-expected.txt: Ditto.

2016-02-25  Eric Carlson  <eric.carlson@apple.com>

        [MediaStream] MediaDeviceInfo deviceId and groupId must be unique to the page's origin
        https://bugs.webkit.org/show_bug.cgi?id=153163
        <rdar://problem/24334526>

        Reviewed by Tim Horton.

        * fast/mediastream/MediaDevices-enumerateDevices-expected.txt:
        * fast/mediastream/MediaDevices-enumerateDevices.html:
        * http/tests/media/media-stream/enumerate-devices-source-id-expected.txt: Added.
        * http/tests/media/media-stream/enumerate-devices-source-id-persistent-expected.txt: Added.
        * http/tests/media/media-stream/enumerate-devices-source-id-persistent.html: Added.
        * http/tests/media/media-stream/enumerate-devices-source-id.html: Added.
        * http/tests/media/media-stream/resources/enumerate-devices-source-id-frame.html: Added.

2016-02-24  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Expose Proxy target and handler internal properties to Inspector
        https://bugs.webkit.org/show_bug.cgi?id=154663

        Reviewed by Timothy Hatcher.

        * inspector/model/remote-object.html:
        * platform/mac/inspector/model/remote-object-expected.txt:
        Test that a Proxy object includes the internal properties.

2016-02-24  Ryan Haddad  <ryanhaddad@apple.com>

        Marking storage/indexeddb/odd-strings.html as flaky on mac-wk1
        https://bugs.webkit.org/show_bug.cgi?id=154619

        Unreviewed test gardening.

        * platform/mac-wk1/TestExpectations:

2016-02-24  Ryan Haddad  <ryanhaddad@apple.com>

        Marking imported/w3c/indexeddb/idbcursor-advance.htm as flaky on Yosemite Release WK2
        https://bugs.webkit.org/show_bug.cgi?id=154618

        Unreviewed test gardening.

        * platform/mac-wk2/TestExpectations:

2016-02-24  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        [Fetch API] Implement Fetch API Response
        https://bugs.webkit.org/show_bug.cgi?id=154536

        Reviewed by Alex Christensen.

        Adding Response as constructor in global and worker scopes.

        * js/dom/global-constructors-attributes-dedicated-worker-expected.txt:
        * js/dom/global-constructors-attributes-expected.txt:
        * platform/efl/js/dom/global-constructors-attributes-dedicated-worker-expected.txt:
        * platform/efl/js/dom/global-constructors-attributes-expected.txt:
        * platform/gtk/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac-mavericks/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac/js/dom/global-constructors-attributes-expected.txt:
        * platform/win/js/dom/global-constructors-attributes-expected.txt:

2016-02-24  Commit Queue  <commit-queue@webkit.org>

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

        "It broke JSC tests when 'this' was loaded from global scope"
        (Requested by saamyjoon on #webkit).

        Reverted changeset:

        "[ES6] Arrow function syntax. Emit loading&putting this/super
        only if they are used in arrow function"
        https://bugs.webkit.org/show_bug.cgi?id=153981
        http://trac.webkit.org/changeset/197033

2016-02-24  Daniel Bates  <dabates@apple.com>

        CSP: Enable plugin-types directive by default
        https://bugs.webkit.org/show_bug.cgi?id=154420
        <rdar://problem/24730322>

        Reviewed by Brent Fulgham.

        * TestExpectations: Mark http/tests/security/contentSecurityPolicy/1.1/plugintypes*.html tests as PASS so that we run them.
        * http/tests/security/contentSecurityPolicy/1.1/plugintypes-invalid-expected.txt: Update expected result.
        * http/tests/security/contentSecurityPolicy/1.1/plugintypes-invalid.html: Call runTests() following changes to multiple-iframe-plugin-test.js.
        Also add closing tags for <body> and <html> to make the document well-formed.
        * http/tests/security/contentSecurityPolicy/1.1/plugintypes-mismatched-data.html: Substitute "Content-Security-Policy" for "X-WebKit-CSP";
        no behavior change.
        * http/tests/security/contentSecurityPolicy/1.1/plugintypes-mismatched-url.html: Ditto.
        * http/tests/security/contentSecurityPolicy/1.1/plugintypes-notype-data.html: Ditto.
        * http/tests/security/contentSecurityPolicy/1.1/plugintypes-notype-url-expected.txt: Update expected result.
        * http/tests/security/contentSecurityPolicy/1.1/plugintypes-notype-url.html: Substitute "Content-Security-Policy" for "X-WebKit-CSP";
        no behavior change.
        * http/tests/security/contentSecurityPolicy/1.1/plugintypes-nourl-allowed.html: Ditto.
        * http/tests/security/contentSecurityPolicy/1.1/plugintypes-nourl-blocked.html: Ditto.
        * http/tests/security/contentSecurityPolicy/1.1/plugintypes-url-01.html: Call runTests() following changes to multiple-iframe-plugin-test.js.
        Also add closing tags for <body> and <html> to make the document well-formed.
        * http/tests/security/contentSecurityPolicy/1.1/plugintypes-url-02.html: Ditto.
        * http/tests/security/contentSecurityPolicy/resources/echo-object-data.pl: Remove logic to support Content Security Policy header X-WebKit-CSP
        as it is sufficient to make use of the standardized header Content-Security-Policy.
        * http/tests/security/contentSecurityPolicy/resources/multiple-iframe-plugin-test.js: Simplify code now that we do not pass query string parameter
        experimental to script echo-object-data.pl.
        (runTests): Runs all the sub-tests.
        (runNextTest.iframe.onload): Formerly named testImpl.iframe.onload.
        (runNextTest): Formerly named testImpl. Runs the next sub-test.
        (testExperimentalPolicy): Deleted.
        (test): Deleted.
        (testImpl.iframe.onload): Deleted.
        (testImpl): Deleted.
        (finishTesting): Deleted.
        * http/tests/security/contentSecurityPolicy/source-list-parsing-no-semicolon-expected.txt: Update expected result based on change to test (below).
        * http/tests/security/contentSecurityPolicy/source-list-parsing-no-semicolon.html: Modified to test that we emit
        a console warning when plugin-types is used as a source expression.

2016-02-24  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline two W3C tests for ios-simulator after r197014

        Unreviewed test gardening.

        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/reflection-embedded-expected.txt:
        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/reflection-forms-expected.txt:

2016-02-24  Skachkov Oleksandr  <gskachkov@gmail.com>

        [ES6] Arrow function syntax. Emit loading&putting this/super only if they are used in arrow function
        https://bugs.webkit.org/show_bug.cgi?id=153981

        Reviewed by Saam Barati.

        Added new benchmark tests for invoking arrow function within function, class's constructor and method

        * js/regress/arrowfunction-call-in-class-constructor-expected.txt: Added.
        * js/regress/arrowfunction-call-in-class-constructor.html: Added.
        * js/regress/arrowfunction-call-in-class-method-expected.txt: Added.
        * js/regress/arrowfunction-call-in-class-method.html: Added.
        * js/regress/arrowfunction-call-in-function-expected.txt: Added.
        * js/regress/arrowfunction-call-in-function.html: Added.
        * js/regress/script-tests/arrowfunction-call-in-class-constructor.js: Added.
        * js/regress/script-tests/arrowfunction-call-in-class-method.js: Added.
        * js/regress/script-tests/arrowfunction-call-in-function.js: Added.
        * js/regress/script-tests/arrowfunction-call.js:

2016-02-24  Zalan Bujtas  <zalan@apple.com>

        Background of an absolutely positioned inline element inside text-indented parent is positioned statically.
        https://bugs.webkit.org/show_bug.cgi?id=154019

        Reviewed by Simon Fraser.

        This patch ensures that statically positioned out-of-flow renderers are also text-aligned
        even when none of the renderers on the first line generate a linebox (so we end up with no bidi runs at all).
        The fix is to pass IndentTextOrNot information to startAlignedOffsetForLine through updateStaticInlinePositionForChild
        so that we can compute the left position for this statically positioned out of flow renderer.

        * fast/css3-text/css3-text-indent/text-indent-with-absolute-pos-child-expected.html: Added.
        * fast/css3-text/css3-text-indent/text-indent-with-absolute-pos-child.html: Added.

2016-02-24  Carlos Garcia Campos  <cgarcia@igalia.com>

        REGRESSION(r195949): [GTK] Test /webkit2/WebKitWebView/insert/link is failing since r195949
        https://bugs.webkit.org/show_bug.cgi?id=153747

        Reviewed by Michael Catanzaro.

        Add test to check that moving to line boundary clears the
        selection even if the cursor is already at the boundary.

        * editing/selection/move-to-line-boundary-clear-selection-expected.txt: Added.
        * editing/selection/move-to-line-boundary-clear-selection.html: Added.

2016-02-23  Sergio Villar Senin  <svillar@igalia.com>

        [css-grid] Swap the order of columns/rows in grid-gap shorthand
        https://bugs.webkit.org/show_bug.cgi?id=154584

        Reviewed by Darin Adler.

        * fast/css-grid-layout/grid-gutters-get-set-expected.txt:
        * fast/css-grid-layout/grid-gutters-get-set.html:

2016-02-24  Adam Bergkvist  <adam.bergkvist@ericsson.com>

        WebRTC: RTCPeerConnection: Sort out responsibilities of close() and stop()
        https://bugs.webkit.org/show_bug.cgi?id=154581

        Reviewed by Eric Carlson.

        Updated test with replaceTrack() call after the RTCPeerConnection object, that
        created the RTCRtpSender, is closed.

        * fast/mediastream/RTCRtpSender-replaceTrack-expected.txt:
        * fast/mediastream/RTCRtpSender-replaceTrack.html:

2016-02-23  Chris Dumez  <cdumez@apple.com>

        Align our implementation of Range.createContextualFragment with the specification
        https://bugs.webkit.org/show_bug.cgi?id=154627

        Reviewed by Ryosuke Niwa.

        Import some more layout tests from blink to improve coverage for
        Range.createContextualFragment().

        * imported/blink/fast/dom/Range/create-contextual-fragment-from-bodyless-document-range-expected.txt: Added.
        * imported/blink/fast/dom/Range/create-contextual-fragment-from-bodyless-document-range.html: Added.
        * imported/blink/fast/dom/Range/create-contextual-fragment-from-detached-text-node-range-expected.txt: Added.
        * imported/blink/fast/dom/Range/create-contextual-fragment-from-detached-text-node-range.html: Added.
        * imported/blink/fast/dom/Range/create-contextual-fragment-from-document-fragment-range-expected.txt: Added.
        * imported/blink/fast/dom/Range/create-contextual-fragment-from-document-fragment-range.html: Added.
        * imported/blink/fast/dom/Range/create-contextual-fragment-from-document-range-expected.txt: Added.
        * imported/blink/fast/dom/Range/create-contextual-fragment-from-document-range.html: Added.
        * imported/blink/fast/dom/Range/create-contextual-fragment-from-xhtml-document-range-expected.txt: Added.
        * imported/blink/fast/dom/Range/create-contextual-fragment-from-xhtml-document-range.xhtml: Added.
        * imported/blink/fast/dom/Range/create-contextual-fragment-script-not-ran-expected.txt: Added.
        * imported/blink/fast/dom/Range/create-contextual-fragment-script-not-ran.html: Added.
        * imported/blink/fast/dom/Range/create-contextual-fragment-script-unmark-already-started-expected.txt: Added.
        * imported/blink/fast/dom/Range/create-contextual-fragment-script-unmark-already-started.html: Added.

2016-02-23  Dean Jackson  <dino@apple.com>

        [WebGL] iOS doesn't respect the alpha:false context creation attribute
        https://bugs.webkit.org/show_bug.cgi?id=154617
        <rdar://problem/13417023>

        Reviewed by Sam Weinig.

        Add a test that draws contexts with and without alpha, and then a reference
        version that hard-codes the non-alpha colors.

        * fast/canvas/webgl/context-attributes-alpha-expected.html: Added.
        * fast/canvas/webgl/context-attributes-alpha.html: Added.

2016-02-23  Daniel Bates  <dabates@apple.com>

        CSP: Enable base-uri directive by default
        https://bugs.webkit.org/show_bug.cgi?id=154521
        <rdar://problem/24762032>

        Reviewed by Brent Fulgham.

        Copy test http/tests/security/contentSecurityPolicy/1.1/base-uri-deny.html to
        http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-base-uri-deny.html,
        making some minor stylistic changes, and update TestExpectations to skip it because it depends
        on the firing of event SecurityPolicyViolationEvent, which is disabled as of the time of writing.
        We will enable the firing of this event in <https://bugs.webkit.org/show_bug.cgi?id=154522>.
        Repurpose test name base-uri-deny.html to test that the base-uri directive prevents the use of
        document base URL without depending on the firing of event SecurityPolicyViolationEvent.

        Additionally, add test http/tests/security/contentSecurityPolicy/1.1/base-uri-default-ignored.html
        to ensure that we do not fall back to enforcing the default-src directive in absence of
        a base-uri directive as per section base-uri of the Content Security Policy 2.0 spec.,
        <https://www.w3.org/TR/2015/CR-CSP2-20150721/>.

        * TestExpectations:
        * http/tests/security/contentSecurityPolicy/1.1/base-uri-default-ignored-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/base-uri-default-ignored.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/base-uri-deny-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/base-uri-deny.html: Repurpose test.
        * http/tests/security/contentSecurityPolicy/1.1/resources/base-href/resources/safe-script.js: Added.
        * http/tests/security/contentSecurityPolicy/1.1/resources/safe-script.js: Added.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-base-uri-deny-expected.txt: Copied from LayoutTests/http/tests/security/contentSecurityPolicy/1.1/base-uri-deny-expected.txt.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-base-uri-deny.html: Copied from LayoutTests/http/tests/security/contentSecurityPolicy/1.1/base-uri-deny.html.
        * http/tests/security/contentSecurityPolicy/source-list-parsing-no-semicolon-expected.txt: Update expected result based on change to test (below).
        * http/tests/security/contentSecurityPolicy/source-list-parsing-no-semicolon.html: Modified to test that we emit
        a console warning when base-uri is used as a source expression.

2016-02-22  Ryosuke Niwa  <rniwa@webkit.org>

        Calling importNode on shadow root causes a crash
        https://bugs.webkit.org/show_bug.cgi?id=154570

        Reviewed by Anders Carlsson.

        Added W3C-style testharness tests for calling cloneNode on a shadow root.

        Also added tests for adoptNode and importNode.

        * fast/shadow-dom/Document-prototype-adoptNode-expected.txt: Added.
        * fast/shadow-dom/Document-prototype-adoptNode.html: Added.
        * fast/shadow-dom/Document-prototype-importNode-expected.txt: Added.
        * fast/shadow-dom/Document-prototype-importNode.html: Added.
        * fast/shadow-dom/Node-prototype-cloneNode-expected.txt: Added.
        * fast/shadow-dom/Node-prototype-cloneNode.html: Added.

2016-02-23  Daniel Bates  <dabates@apple.com>

        REGRESSION (r196892): No longer emit error message when CSP form-action directive is used as a source expression
        https://bugs.webkit.org/show_bug.cgi?id=154555
        <rdar://problem/24776777>

        Reviewed by Andy Estes.

        Test that we emit a console error message when form-action is used as a source expression.

        * http/tests/security/contentSecurityPolicy/source-list-parsing-no-semicolon-expected.txt:
        * http/tests/security/contentSecurityPolicy/source-list-parsing-no-semicolon.html: Use form-action as a
        source expression. Also, use a double quoted (") string literal instead of a single quoted (') string
        literal to represent the CSP policy so as to avoid the need to escape embedded single quote characters.

2016-02-22  Dean Jackson  <dino@apple.com>

        Add tests for fast click change in r196679
        https://bugs.webkit.org/show_bug.cgi?id=154568
        <rdar://problem/24782479>

        Reviewed by Myles Maxfield.

        Bug http://webkit.org/b/154318 made some changes to the fast
        click behaviour, but didn't include any tests. Here they are!

        * fast/events/ios/fast-click-double-tap-sends-click-expected.txt: Added.
        * fast/events/ios/fast-click-double-tap-sends-click.html: Checks that a double tap on a clickable element sends a click.
        * fast/events/ios/fast-click-double-tap-zooms-on-image-expected.txt: Added.
        * fast/events/ios/fast-click-double-tap-zooms-on-image.html: Checks that a double tap on an image can trigger a zoom if there
        isn't anything else listening.
        * fast/events/ios/fast-click-double-tap-zooms-on-text-expected.txt: Added.
        * fast/events/ios/fast-click-double-tap-zooms-on-text.html: Checks that a double tap on a block of text can trigger a zoom
        if there isn't anything else listening.
        * fast/events/ios/no-fast-click-double-tap-causes-zoom-expected.txt: Added.
        * fast/events/ios/no-fast-click-double-tap-causes-zoom.html: When we are not in fast click mode, a double tap should
        trigger a zoom. This is checking the inverse behaviour to fast-click-double-tap-sends-click.
        * fast/events/ios/viewport-device-width-allows-double-tap-zoom-out.html: Removed some code that could never be called.
        * fast/events/ios/viewport-zooms-from-element-to-initial-scale.html: Ditto.
        * platform/ios-simulator/TestExpectations: Add the new tests.

2016-02-23  Alexey Proskuryakov  <ap@apple.com>

        REGRESSION (r192251): http/tests/navigation/page-cache-xhr.html is flaky
        https://bugs.webkit.org/show_bug.cgi?id=154589

        Reviewed by Youenn Fablet.

        * http/tests/navigation/page-cache-xhr.html: Load a file that exists. The content
        doesn't matter, as we expect to navigate away before the load occurs.

        * http/tests/resources/load-and-stall.cgi: Added cache control, just for a good measure.

2016-02-23  Mark Lam  <mark.lam@apple.com>

        Debug assertion failure while loading http://kangax.github.io/compat-table/es6/.
        https://bugs.webkit.org/show_bug.cgi?id=154542

        Reviewed by Saam Barati.

        * js/Promise-types-expected.txt:
        * js/basic-map-expected.txt:
        * js/basic-set-expected.txt:
        * js/dom/basic-weakmap-expected.txt:
        * js/dom/basic-weakset-expected.txt:
        * js/script-tests/Promise-types.js:
        * js/typedarray-constructors-expected.txt:
        - Updated error message string.

2016-02-23  Manuel Rego Casasnovas  <rego@igalia.com>

        [css-grid] Rows track sizes are optional in grid-template shorthand
        https://bugs.webkit.org/show_bug.cgi?id=154586

        Reviewed by Sergio Villar Senin.

        You can omit the size of the rows in grid-template shorthand,
        even if you specify a named grid line for the end of the row,
        due to a change in the spec back in 2014:
        https://github.com/w3c/csswg-drafts/commit/9f660c4183c73c1f5279c46904dc6cb314f76194

        Before if you want to specify a named grid line,
        you need to set the row size.

        Update parsing, so it nows accepts things like:
            grid-template: 100px / "a" [bottom];

2016-02-23  Nikos Andronikos  <nikos.andronikos-webkit@cisra.canon.com.au>

        [SVG] Update SVG source to return string literals as ASCIILiteral and add test cases for case sensitivity
        https://bugs.webkit.org/show_bug.cgi?id=154373

        Reviewed by Youenn Fablet.

        Add test cases for case-sensitivity for SVGAnimatedEnumeration elements.

        * svg/dom/SVGAnimatedEnumeration-case-sensitive-expected.txt: Added.
        * svg/dom/SVGAnimatedEnumeration-case-sensitive.html: Added.
        * svg/dom/script-tests/SVGAnimatedEnumeration-case-sensitive.js: Added.
        (testCaseSensitivity):

2016-02-22  Myles C. Maxfield  <mmaxfield@apple.com>

        Font features specified in @font-face blocks don't apply to local() families
        https://bugs.webkit.org/show_bug.cgi?id=154554

        Reviewed by Dean Jackson.

        * css3/font-feature-font-face-local-expected.html: Added.
        * css3/font-feature-font-face-local.html: Added.

2016-02-22  Chris Dumez  <cdumez@apple.com>

        REGRESSION (r196563): Images not loading on https://klim.co.nz/blog/paypal-sans-design-information/
        https://bugs.webkit.org/show_bug.cgi?id=154547
        <rdar://problem/24772167>

        Reviewed by Gavin Barraclough.

        Add regression test for <rdar://problem/24772167>.

        * fast/dom/Window/addEventListener-implicit-this-expected.txt:
        * fast/dom/Window/addEventListener-implicit-this.html:

2016-02-22  Simon Fraser  <simon.fraser@apple.com>

        Repeated background images have the wrong position when using bottom/right-relative background-position
        https://bugs.webkit.org/show_bug.cgi?id=154478

        Reviewed by Dave Hyatt.
        
        Enhanced background-position-serialize.html to test values that use right/bottom edge specifiers.
        
        Ref test for background-position.

        * fast/css/background-position-serialize-expected.txt:
        * fast/css/background-position-serialize.html:
        * fast/images/background-position-expected.html: Added.
        * fast/images/background-position.html: Added.
        * fast/images/resources/checker.png: Added.

2016-02-22  Myles C. Maxfield  <mmaxfield@apple.com>

        [Font Loading] Split CSSFontSelector into a FontFaceSet implementation and the rest of the class
        https://bugs.webkit.org/show_bug.cgi?id=153347

        Reviewed by Antti Koivisto.

        * fast/text/font-face-javascript.html:
        * fast/text/font-face-set-document-expected.txt: Added.
        * fast/text/font-face-set-document.html: Added.

2016-02-22  Konstantin Tokarev  <annulen@yandex.ru>

        [JSC shell] Don't put empty arguments array to VM.
        https://bugs.webkit.org/show_bug.cgi?id=154516

        Reviewed by Geoffrey Garen.

        This allows arrowfunction-lexical-bind-arguments-top-level test to pass
        in jsc as well as in browser.

        * js/script-tests/arrowfunction-lexical-bind-arguments-top-level.js:
        Removed @ skip annotation.

2016-02-22  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline tests for ios-simulator after W3C HTML/DOM re-sync in r196883

        Unreviewed test gardening.

        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt:
        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/reflection-embedded-expected.txt:

2016-02-22  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline imported/w3c/web-platform-tests/html/dom/reflection-forms.html for ios-simulator after r196893

        Unreviewed test gardening.

        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/reflection-forms-expected.txt:

2016-02-22  Manuel Rego Casasnovas  <rego@igalia.com>

        [css-grid] Swap columns and rows in grid-template shorthand
        https://bugs.webkit.org/show_bug.cgi?id=154472

        Reviewed by Darin Adler.

        The spec was modified past December to change the order of
        columns and rows in the grid-template shorthand:
        https://github.com/w3c/csswg-drafts/commit/f6c7691679a519017a80ebae44fd86c3eae5c5f9

        Updated the parsing and modified the tests to follow the new syntax.

        * fast/css-grid-layout/absolute-positioning-definite-sizes.html:
        * fast/css-grid-layout/flex-content-distribution.html:
        * fast/css-grid-layout/grid-align-content-vertical-lr.html:
        * fast/css-grid-layout/grid-align-content-vertical-rl.html:
        * fast/css-grid-layout/grid-align-content.html:
        * fast/css-grid-layout/grid-gutters-and-alignment.html:
        * fast/css-grid-layout/grid-gutters-and-flex-content.html:
        * fast/css-grid-layout/grid-gutters-and-tracks.html:
        * fast/css-grid-layout/grid-justify-content-vertical-lr.html:
        * fast/css-grid-layout/grid-justify-content-vertical-rl.html:
        * fast/css-grid-layout/grid-justify-content.html:
        * fast/css-grid-layout/grid-shorthand-get-set.html:
        * fast/css-grid-layout/grid-template-shorthand-get-set.html:
        * fast/css-grid-layout/relayout-align-items-changed.html:
        * fast/css-grid-layout/relayout-align-self-changed.html:
        * fast/css-grid-layout/relayout-indefinite-heights.html:
        * fast/css-grid-layout/relayout-justify-items-changed.html:
        * fast/css-grid-layout/relayout-justify-self-changed.html:
        * fast/repaint/align-items-overflow-change.html:
        * fast/repaint/align-self-change.html:
        * fast/repaint/align-self-overflow-change.html:
        * fast/repaint/justify-items-change.html:
        * fast/repaint/justify-items-overflow-change.html:
        * fast/repaint/justify-self-change.html:
        * fast/repaint/justify-self-overflow-change.html:

2016-02-22  Manuel Rego Casasnovas  <rego@igalia.com>

        [css-grid] Swap columns and rows in grid shorthand
        https://bugs.webkit.org/show_bug.cgi?id=154449

        Reviewed by Darin Adler.

        The spec was modified past December to change the order of
        columns and rows in the grid shorthand:
        https://github.com/w3c/csswg-drafts/commit/7454c7c8c5857b61bbbe2ee5f07803c264bf37e4

        Updated the parsing and modified the tests to follow the new syntax.

        * fast/css-grid-layout/grid-shorthand-get-set-expected.txt:
        * fast/css-grid-layout/grid-shorthand-get-set.html:

2016-02-21  Chris Dumez  <cdumez@apple.com>

        Make HTMLSelectElement.size behave as per the specification
        https://bugs.webkit.org/show_bug.cgi?id=154504

        Reviewed by Darin Adler.

        Update test that was covering the case of an HTMLSelectElement with an
        invalid size attribute. The test was expecting the bad "size" attribute
        value to get corrected so that the select element looks like a menu list.
        This workaround was added back in 2007 to workaround a bug on
        www.chainreaction.com (rdar://problem/4697438). This patch drops the
        workaround in HTMLSelectElement::parseAttribute() because:
        1. This is not standard behavior as per the HTML specification
        2. This behavior does not match Firefox either
        3. The workaround is no longer needed for www.chainreaction.com.

        * fast/forms/select-size-expected.html: Added.
        * fast/forms/select-size.html:
        * platform/efl/fast/forms/select-size-expected.txt: Removed.
        * platform/gtk/fast/forms/select-size-expected.txt: Removed.
        * platform/ios-simulator/fast/forms/select-size-expected.txt: Removed.
        * platform/mac/fast/forms/select-size-expected.png: Removed.
        * platform/mac/fast/forms/select-size-expected.txt: Removed.
        * platform/win/fast/forms/select-size-expected.txt: Removed.

2016-02-21  Daniel Bates  <dabates@apple.com>

        CSP: Enable form-action directive by default
        https://bugs.webkit.org/show_bug.cgi?id=154520
        <rdar://problem/24762029>

        Reviewed by Sam Weinig.

        Mark form-action tests as Pass so that we run them.

        * TestExpectations:

2016-02-21  Chris Dumez  <cdumez@apple.com>

        Add username / password attributes to HTMLAnchorElement / HTMLAreaElement
        https://bugs.webkit.org/show_bug.cgi?id=154519

        Reviewed by Sam Weinig.

        * fast/dom/HTMLAnchorElement/script-tests/set-href-attribute-hash.js:
        * fast/dom/HTMLAnchorElement/script-tests/set-href-attribute-host.js:
        * fast/dom/HTMLAnchorElement/script-tests/set-href-attribute-hostname.js:
        * fast/dom/HTMLAnchorElement/script-tests/set-href-attribute-pathname.js:
        * fast/dom/HTMLAnchorElement/script-tests/set-href-attribute-protocol.js:
        * fast/dom/HTMLAnchorElement/script-tests/set-href-attribute-search.js:
        * fast/dom/HTMLAnchorElement/set-href-attribute-hash-expected.txt:
        * fast/dom/HTMLAnchorElement/set-href-attribute-host-expected.txt:
        * fast/dom/HTMLAnchorElement/set-href-attribute-hostname-expected.txt:
        * fast/dom/HTMLAnchorElement/set-href-attribute-pathname-expected.txt:
        * fast/dom/HTMLAnchorElement/set-href-attribute-protocol-expected.txt:
        * fast/dom/HTMLAnchorElement/set-href-attribute-search-expected.txt:
        Update / rebaseline tests now that we no longer treat null as the empty string.

        * fast/dom/HTMLAnchorElement/set-href-attribute-user-pass-expected.txt: Added.
        * fast/dom/HTMLAnchorElement/set-href-attribute-user-pass.html: Added.
        Add test coverage for setting the username / password attributes.

        * js/dom/dom-static-property-for-in-iteration-expected.txt:
        Rebaseline now that HTMLAnchorElement / HTMLAreaElement have 2 additional
        attributes: username and password.

2016-02-21  Chris Dumez  <cdumez@apple.com>

        iframe/frame/object.contentDocument should be on the prototype
        https://bugs.webkit.org/show_bug.cgi?id=154409

        Reviewed by Sam Weinig.

        Add test coverage for trying to access iframe.contentDocument cross origin
        to make sure it still fails and logs a security error.

        * http/tests/security/cross-origin-iframe-contentDocument-expected.txt: Added.
        * http/tests/security/cross-origin-iframe-contentDocument.html: Added.

2016-02-21  Daniel Bates  <dabates@apple.com>

        CSP: sandbox directive should be ignored when contained in a policy defined via a meta element
        https://bugs.webkit.org/show_bug.cgi?id=154299
        <rdar://problem/24680433>

        Add iOS Simulator-specific expected result for test http/tests/security/contentSecurityPolicy/sandbox-empty-in-http-header-inherited-by-subframe.html.

        * platform/ios-simulator/http/tests/security/contentSecurityPolicy/sandbox-empty-in-http-header-inherited-by-subframe-expected.txt: Added.

2016-02-21  Ryan Haddad  <ryanhaddad@apple.com>

        Adding ios-simulator baseline for js/number-toLocaleString.html
        https://bugs.webkit.org/show_bug.cgi?id=154524

        Unreviewed test gardening.

        * platform/ios-simulator/js/number-toLocaleString-expected.txt: Added.

2016-02-21  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline imported/w3c/web-platform-tests/html/dom/reflection-forms.html for ios-simulator after r196846

        Unreviewed test gardening.

        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/reflection-forms-expected.txt:

2016-02-21  Daniel Bates  <dabates@apple.com>

        Another attempt to fix the Content Extension test failures following <https://trac.webkit.org/changeset/196875>
        (https://bugs.webkit.org/show_bug.cgi?id=154307) 

        Rename Content Extension JSON files so that they are associated with tests http/tests/contentextensions/block-cookies-in-csp-report.php
        http/tests/contentextensions/block-csp-report.php and http/tests/contentextensions/hide-on-csp-report.php. These
        files were formerly named block-cookies-in-csp-report.html, block-csp-report.html, and hide-on-csp-report.html,
        respectively, prior to <https://trac.webkit.org/changeset/196878>. Also, update expected result for test block-csp-report.html
        following <https://trac.webkit.org/changeset/196878>.

        * http/tests/contentextensions/block-cookies-in-csp-report.php.json: Renamed from LayoutTests/http/tests/contentextensions/block-cookies-in-csp-report.html.json.
        * http/tests/contentextensions/block-csp-report-expected.txt:
        * http/tests/contentextensions/block-csp-report.php.json: Renamed from LayoutTests/http/tests/contentextensions/block-csp-report.html.json.
        * http/tests/contentextensions/hide-on-csp-report.php.json: Renamed from LayoutTests/http/tests/contentextensions/hide-on-csp-report.html.json.

2016-02-21  Daniel Bates  <dabates@apple.com>

        Attempt to fix the Content Extension test failures following <https://trac.webkit.org/changeset/196875>
        (https://bugs.webkit.org/show_bug.cgi?id=154307)

        Convert Content Extension tests that use the Content Security Policy directive report-uri from HTML files
        to PHP scripts and modified them to define the content security policy for the page via the Content-Security-Policy
        HTTP header instead of via a meta element so that the report-uri directive is honored. Following
        <https://trac.webkit.org/changeset/196875> the directive report-uri is only honored when contained in a
        policy that is delivered via an HTTP header. That is, it is no longer honored when delivered in a meta element.

        * http/tests/contentextensions/block-cookies-in-csp-report.php: Renamed from LayoutTests/http/tests/contentextensions/block-cookies-in-csp-report.html.
        * http/tests/contentextensions/block-csp-report.php: Renamed from LayoutTests/http/tests/contentextensions/block-csp-report.html.
        * http/tests/contentextensions/hide-on-csp-report.php: Renamed from LayoutTests/http/tests/contentextensions/hide-on-csp-report.html.

2016-02-21  Daniel Bates  <dabates@apple.com>

        CSP: Violation report should include column number
        https://bugs.webkit.org/show_bug.cgi?id=154418
        <rdar://problem/24729525>

        Reviewed by Brent Fulgham.

        Update expected results to include source file column information where the violation occurred.

        * http/tests/security/contentSecurityPolicy/report-blocked-file-uri-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-uri-from-inline-javascript-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-uri-from-javascript-expected.txt:

2016-02-21  Daniel Bates  <dabates@apple.com>

        CSP: Violation report should include HTTP status code and effective-directive of protected resource
        https://bugs.webkit.org/show_bug.cgi?id=154288
        <rdar://problem/24674982>
        And
        https://bugs.webkit.org/show_bug.cgi?id=115707
        <rdar://problem/24383128>

        Reviewed by Brent Fulgham.

        Add new test http/tests/security/contentSecurityPolicy/report-status-code-zero-when-using-https.html to ensure
        that the CSP report property status-code is 0 when the protected document is delivered over HTTPS. Fix a
        correctness issue in the result for test http/tests/security/contentSecurityPolicy/report-blocked-file-uri.html
        and update the expected results for the following tests now that the CSP violation report includes properties
        status-code and effective-directive:
            http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-when-private-browsing-enabled.php
            http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-when-private-browsing-toggled.php
            http/tests/security/contentSecurityPolicy/report-same-origin-no-cookies-when-private-browsing-toggled.php
            http/tests/security/contentSecurityPolicy/report-same-origin-with-cookies-when-private-browsing-enabled.php

        The rest of the changes to the expected results are cosmetic and reflect the difference in wording for inline
        script violations between WebKit and Blink. We will consider adopting wording similar to Blink in
        <https://bugs.webkit.org/show_bug.cgi?id=153242>.

        * TestExpectations: Remove entries for tests that now pass. Add test http/tests/security/contentSecurityPolicy/1.1/report-uri-effective-directive.php.
        * http/tests/security/contentSecurityPolicy/1.1/report-uri-effective-directive-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/report-uri-effective-directive.php: Renamed from LayoutTests/http/tests/security/contentSecurityPolicy/1.1/report-uri-effective-directive.html. The report-uri
        directive is only honored when defined in a policy delivered via an HTTP header. We convert this
        HTML file to a PHP script to be able to deliver a Content-Security-Policy HTTP header.
        * http/tests/security/contentSecurityPolicy/report-and-enforce-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-blocked-data-uri-expected.txt: Cosmetic change.
        * http/tests/security/contentSecurityPolicy/report-blocked-file-uri-expected.txt: Ditto.
        * http/tests/security/contentSecurityPolicy/report-blocked-uri-cross-origin-expected.txt: Ditto.
        * http/tests/security/contentSecurityPolicy/report-blocked-uri-expected.txt: Ditto.
        * http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-expected.txt: Ditto.
        * http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-when-private-browsing-enabled-expected.txt: Update expected result now
        that the report includes properties status-code and effective-directive.
        * http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-when-private-browsing-toggled-expected.txt: Ditto.
        * http/tests/security/contentSecurityPolicy/report-only-expected.txt: Cosmetic change.
        * http/tests/security/contentSecurityPolicy/report-only-from-header-expected.txt: Ditto.
        * http/tests/security/contentSecurityPolicy/report-same-origin-no-cookies-when-private-browsing-toggled-expected.txt: Update expected result now
        that the report includes properties status-code and effective-directive.
        * http/tests/security/contentSecurityPolicy/report-same-origin-with-cookies-expected.txt: Cosmetic change.
        * http/tests/security/contentSecurityPolicy/report-same-origin-with-cookies-when-private-browsing-enabled-expected.txt: Update expected result now
        that the report includes properties status-code and effective-directive.
        * http/tests/security/contentSecurityPolicy/report-status-code-zero-when-using-https-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/report-status-code-zero-when-using-https.html: Added.
        * http/tests/security/contentSecurityPolicy/report-uri-expected.txt: Cosmetic change.
        * http/tests/security/contentSecurityPolicy/report-uri-from-child-frame-expected.txt: Cosmetic change.
        * http/tests/security/contentSecurityPolicy/report-uri-from-child-frame.html: Fix ill-formed markup; substitute </iframe> for </script>.
        * http/tests/security/contentSecurityPolicy/report-uri-from-inline-javascript-expected.txt: Cosmetic change.
        * http/tests/security/contentSecurityPolicy/report-uri-from-javascript-expected.txt: Ditto.
        * http/tests/security/contentSecurityPolicy/report-uri-scheme-relative-expected.txt: Ditto.

2016-02-21  Daniel Bates  <dabates@apple.com>

        CSP: report-url directive should be ignored when contained in a policy defined via a meta element
        https://bugs.webkit.org/show_bug.cgi?id=154307
        <rdar://problem/24684817>

        Reviewed by Brent Fulgham.

        Add new test http/tests/security/contentSecurityPolicy/report-uri-in-meta-tag-ignored.html and rename and modify
        existing tests to make them PHP scripts that emit a Content Security Policy HTTP header.

        In addition, remove file http/tests/security/contentSecurityPolicy/resources/generate-csp-report.html that
        is no longer meaningful now that we do not honor the report-uri directive defined in a policy via a meta
        element. Moreover, we have not made use of this file since <http://trac.webkit.org/changeset/176413>.

        * TestExpectations: Update entries for renames.
        * http/tests/security/contentSecurityPolicy/report-and-enforce-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-and-enforce.php: Renamed from LayoutTests/http/tests/security/contentSecurityPolicy/report-and-enforce.html.
        * http/tests/security/contentSecurityPolicy/report-blocked-data-uri-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-blocked-data-uri.php: Renamed from LayoutTests/http/tests/security/contentSecurityPolicy/report-blocked-data-uri.html.
        * http/tests/security/contentSecurityPolicy/report-blocked-file-uri-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-blocked-file-uri.php: Renamed from LayoutTests/http/tests/security/contentSecurityPolicy/report-blocked-file-uri.html.
        * http/tests/security/contentSecurityPolicy/report-blocked-uri-cross-origin-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-blocked-uri-cross-origin.php: Renamed from LayoutTests/http/tests/security/contentSecurityPolicy/report-blocked-uri-cross-origin.html.
        * http/tests/security/contentSecurityPolicy/report-blocked-uri-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-blocked-uri.php: Renamed from LayoutTests/http/tests/security/contentSecurityPolicy/report-blocked-uri.html.
        * http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-when-private-browsing-enabled-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-when-private-browsing-enabled.php: Renamed from LayoutTests/http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-when-private-browsing-enabled.html.
        * http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-when-private-browsing-toggled-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-when-private-browsing-toggled.php: Renamed from LayoutTests/http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-when-private-browsing-toggled.html.
        * http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies.php: Renamed from LayoutTests/http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies.html.
        * http/tests/security/contentSecurityPolicy/report-only-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-only.php: Renamed from LayoutTests/http/tests/security/contentSecurityPolicy/report-only.html.
        * http/tests/security/contentSecurityPolicy/report-same-origin-no-cookies-when-private-browsing-toggled-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-same-origin-no-cookies-when-private-browsing-toggled.php: Renamed from LayoutTests/http/tests/security/contentSecurityPolicy/report-same-origin-no-cookies-when-private-browsing-toggled.html.
        * http/tests/security/contentSecurityPolicy/report-same-origin-with-cookies-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-same-origin-with-cookies-when-private-browsing-enabled-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-same-origin-with-cookies-when-private-browsing-enabled.php: Renamed from LayoutTests/http/tests/security/contentSecurityPolicy/report-same-origin-with-cookies-when-private-browsing-enabled.html.
        * http/tests/security/contentSecurityPolicy/report-same-origin-with-cookies.php: Renamed from LayoutTests/http/tests/security/contentSecurityPolicy/report-same-origin-with-cookies.html.
        * http/tests/security/contentSecurityPolicy/report-uri-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-uri-from-inline-javascript-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-uri-from-inline-javascript.php: Renamed from LayoutTests/http/tests/security/contentSecurityPolicy/report-uri-from-inline-javascript.html.
        * http/tests/security/contentSecurityPolicy/report-uri-from-javascript-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-uri-from-javascript.php: Renamed from LayoutTests/http/tests/security/contentSecurityPolicy/report-uri-from-javascript.html.
        * http/tests/security/contentSecurityPolicy/report-uri-in-meta-tag-ignored-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/report-uri-in-meta-tag-ignored.html: Added.
        * http/tests/security/contentSecurityPolicy/report-uri-scheme-relative-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-uri-scheme-relative.html: Removed.
        * http/tests/security/contentSecurityPolicy/report-uri-scheme-relative.php: Added.
        * http/tests/security/contentSecurityPolicy/report-uri.php: Renamed from LayoutTests/http/tests/security/contentSecurityPolicy/report-uri.html.
        * http/tests/security/contentSecurityPolicy/resources/generate-csp-report.html: Removed. For completeness, we have
        not made use of this file since <http://trac.webkit.org/changeset/176413>.
        * http/tests/security/contentSecurityPolicy/resources/generate-csp-report.php:
        * http/tests/security/contentSecurityPolicy/user-style-sheet-font-crasher.php: Renamed from LayoutTests/http/tests/security/contentSecurityPolicy/user-style-sheet-font-crasher.html.
        * platform/wk2/TestExpectations: Update entries for renames.

2016-02-21  Daniel Bates  <dabates@apple.com>

        CSP: sandbox directive should be ignored when contained in a policy defined via a meta element
        https://bugs.webkit.org/show_bug.cgi?id=154299
        <rdar://problem/24680433>

        Reviewed by Brent Fulgham.

        Add test http/tests/security/contentSecurityPolicy/sandbox-in-meta-tag-ignored.html to ensure that we ignore
        the sandbox directive when delivered via an HTML meta element and log a message to the Web Inspector console.

        Remove tests http/tests/security/contentSecurityPolicy/sandbox-{allow-scripts-subframe, empty, empty-subframe}.html
        that are no longer meaningful now that we ignore the sandbox directive when delivered via an HTML meta element and
        create analogous tests for when the sandbox directive is delivered via an HTTP header.

        * http/tests/security/contentSecurityPolicy/sandbox-allow-scripts-in-http-header2-expected.txt: Renamed from LayoutTests/http/tests/security/contentSecurityPolicy/sandbox-allow-scripts-expected.txt.
        * http/tests/security/contentSecurityPolicy/sandbox-allow-scripts-in-http-header2.php: Renamed from LayoutTests/http/tests/security/contentSecurityPolicy/sandbox-allow-scripts.html.

        * http/tests/security/contentSecurityPolicy/sandbox-allow-scripts-subframe-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/sandbox-allow-scripts-subframe.html: Removed.
        This test is no longer meaningful now that we ignore the sandbox directive when delivered via an HTML meta element.
        An analogous test for when the directive is delivered via an HTTP header is http/tests/security/contentSecurityPolicy//sandbox-allow-scripts-in-http-header.html.

        * http/tests/security/contentSecurityPolicy/sandbox-empty-in-http-header-inherited-by-subframe-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/sandbox-empty-in-http-header-inherited-by-subframe.php: Added. Derived from test http/tests/security/contentSecurityPolicy/sandbox-empty-subframe.html.

        * http/tests/security/contentSecurityPolicy/sandbox-empty-in-http-header-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/sandbox-empty-in-http-header.php: Added. Derived from test http/tests/security/contentSecurityPolicy/sandbox-empty.html.

        * http/tests/security/contentSecurityPolicy/sandbox-empty-subframe-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/sandbox-empty-subframe.html: Removed.
        This test is no longer meaningful now that we ignore the sandbox directive when delivered via an HTML meta element.
        The analogous test for when the directive is delivered via an HTTP header is http/tests/security/contentSecurityPolicy/sandbox-empty-in-http-header-inherited-by-subframe.php.

        * http/tests/security/contentSecurityPolicy/sandbox-empty-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/sandbox-empty.html: Removed.
        This test is no longer meaningful now that we ignore the sandbox directive when delivered via an HTML meta element.
        The analogous test for when the directive is delivered via an HTTP header is http/tests/security/contentSecurityPolicy/sandbox-empty-in-http-header.php.

        * http/tests/security/contentSecurityPolicy/sandbox-in-meta-tag-ignored-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/sandbox-in-meta-tag-ignored.html: Added.

2016-02-21  Commit Queue  <commit-queue@webkit.org>

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

        still crashy on EFL/GTK (Requested by smfr on #webkit).

        Reverted changeset:

        "Wheel event callback removing the window causes crash in
        WebCore."
        https://bugs.webkit.org/show_bug.cgi?id=150871
        http://trac.webkit.org/changeset/196866

2016-02-20  Simon Fraser  <simon.fraser@apple.com>

        Wheel event callback removing the window causes crash in WebCore.
        https://bugs.webkit.org/show_bug.cgi?id=150871

        Reviewed by Brent Fulgham.

        * fast/events/wheel-event-destroys-frame-expected.txt: Added.
        * fast/events/wheel-event-destroys-frame.html: Added.

2016-02-20  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline inspector/model/remote-object.html for Mac after r196846

        Unreviewed test gardening.

        * platform/mac/inspector/model/remote-object-expected.txt:

2016-02-20  Commit Queue  <commit-queue@webkit.org>

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

        It caused a lot of crashes in EFL and GTK bots (Requested by
        KaL on #webkit).

        Reverted changeset:

        "Wheel event callback removing the window causes crash in
        WebCore."
        https://bugs.webkit.org/show_bug.cgi?id=150871
        http://trac.webkit.org/changeset/196837

2016-02-19  Doug Russell  <d_russell@apple.com>

        Bug 154366: AX: AXObjectCache::visiblePositionForTextMarkerData() doesn't account for visibly equivalent positions
        https://bugs.webkit.org/show_bug.cgi?id=154366

        Reviewed by Chris Fleizach.

        * accessibility/mac/text-marker-line-boundary-expected.txt: Added.
        * accessibility/mac/text-marker-line-boundary.html: Added.

2016-02-19  Sukolsak Sakshuwong  <sukolsak@gmail.com>

        [INTL] Implement Number Format Functions
        https://bugs.webkit.org/show_bug.cgi?id=147605

        Reviewed by Darin Adler.

        * js/intl-numberformat-expected.txt:
        * js/intl-numberformat.html:
        * js/number-toLocaleString-expected.txt:
        * js/script-tests/intl-numberformat.js:
        * js/script-tests/number-toLocaleString.js:

2016-02-18  Gavin Barraclough  <barraclough@apple.com>

        JSObject::getPropertySlot - index-as-propertyname, override on prototype, & shadow
        https://bugs.webkit.org/show_bug.cgi?id=154416

        Reviewed by Geoff Garen.

        * js/index-property-shadows-overriden-get-own-property-slot-expected.txt: Added.
        * js/index-property-shadows-overriden-get-own-property-slot.html: Added.
        * js/script-tests/index-property-shadows-overriden-get-own-property-slot.js: Added.
        (test):
            - added test case.

2016-02-19  Chris Dumez  <cdumez@apple.com>

        HTMLFormElement.autocomplete should only return known values
        https://bugs.webkit.org/show_bug.cgi?id=154247
        <rdar://problem/24658195>

        Reviewed by Ryosuke Niwa.

        Update test to expect Form.autocomplete to return "on" by
        default instead of the empty string.

        * fast/forms/autocomplete-expected.txt:
        * fast/forms/autocomplete.html:

2016-02-19  Simon Fraser  <simon.fraser@apple.com>

        Wheel event callback removing the window causes crash in WebCore.
        https://bugs.webkit.org/show_bug.cgi?id=150871

        Reviewed by Brent Fulgham.

        * fast/events/wheel-event-destroys-frame-expected.txt: Added.
        * fast/events/wheel-event-destroys-frame.html: Added.

2016-02-19  Antti Koivisto  <antti@apple.com>

        ComposedTreeIterator traverses normal children for elements with empty shadow root
        https://bugs.webkit.org/show_bug.cgi?id=154464

        Reviewed by Ryosuke Niwa.

        * fast/shadow-dom/composed-tree-basic-expected.txt: Added.
        * fast/shadow-dom/composed-tree-basic.html: Added.

2016-02-19  Nan Wang  <n_wang@apple.com>

        AX: Inconsistency between CharacterOffset and VisiblePostition
        https://bugs.webkit.org/show_bug.cgi?id=154431

        Reviewed by Chris Fleizach.

        * accessibility/mac/text-marker-word-nav-expected.txt:
        * accessibility/mac/text-marker-word-nav.html:
        * accessibility/text-marker/text-marker-previous-next.html:

2016-02-19  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline imported/w3c/web-platform-tests/html/dom/interfaces.html for ios-simulator after r196797

        Unreviewed test gardening.

        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt:

2016-02-19  Javier Fernandez  <jfernandez@igalia.com>

        [CSS Grid Layout Refactoring some layout tests
        https://bugs.webkit.org/show_bug.cgi?id=154291

        Refactored several tests so they use the shared sizing keywords
        instead of specific CSS rules.

        Reviewed by Sergio Villar Senin.

        * fast/css-grid-layout/calc-resolution-grid-item.html:
        * fast/css-grid-layout/flex-and-intrinsic-sizes-expected.txt:
        * fast/css-grid-layout/flex-and-intrinsic-sizes.html:
        * fast/css-grid-layout/grid-align-justify-margin-border-padding-vertical-lr.html:
        * fast/css-grid-layout/grid-align-justify-margin-border-padding-vertical-rl.html:
        * fast/css-grid-layout/grid-align-justify-margin-border-padding.html:
        * fast/css-grid-layout/grid-align-justify-overflow.html:
        * fast/css-grid-layout/grid-align-justify-stretch.html:
        * fast/css-grid-layout/grid-align.html:
        * fast/css-grid-layout/grid-columns-rows-get-set-multiple.html:
        * fast/css-grid-layout/grid-columns-rows-get-set.html:
        * fast/css-grid-layout/grid-container-margin-border-padding-scrollbar.html:
        * fast/css-grid-layout/grid-content-alignment-and-self-alignment.html:
        * fast/css-grid-layout/grid-content-alignment-overflow.html:
        * fast/css-grid-layout/grid-content-alignment-with-span-vertical-lr.html:
        * fast/css-grid-layout/grid-content-alignment-with-span-vertical-rl.html:
        * fast/css-grid-layout/grid-content-alignment-with-span.html:
        * fast/css-grid-layout/grid-element-change-columns-repaint.html:
        * fast/css-grid-layout/grid-element-change-rows-repaint.html:
        * fast/css-grid-layout/grid-element-repeat-get-set.html:
        * fast/css-grid-layout/grid-gutters-and-alignment.html:
        * fast/css-grid-layout/grid-item-auto-margins-alignment-vertical-lr.html:
        * fast/css-grid-layout/grid-item-auto-margins-alignment-vertical-rl.html:
        * fast/css-grid-layout/grid-item-auto-margins-alignment.html:
        * fast/css-grid-layout/grid-item-auto-margins-and-stretch.html:
        * fast/css-grid-layout/grid-item-auto-sized-align-justify-margin-border-padding.html:
        * fast/css-grid-layout/grid-item-change-column-repaint.html:
        * fast/css-grid-layout/grid-item-order-paint-order.html:
        * fast/css-grid-layout/grid-item-stretch-with-margins-borders-padding-expected.txt: Added.
        * fast/css-grid-layout/grid-item-stretch-with-margins-borders-padding-vertical-lr-expected.txt: Added.
        * fast/css-grid-layout/grid-item-stretch-with-margins-borders-padding-vertical-lr.html: Added.
        * fast/css-grid-layout/grid-item-stretch-with-margins-borders-padding-vertical-rl-expected.txt: Added.
        * fast/css-grid-layout/grid-item-stretch-with-margins-borders-padding-vertical-rl.html: Added.
        * fast/css-grid-layout/grid-item-stretch-with-margins-borders-padding.html: Added.
        * fast/css-grid-layout/grid-item-z-index-stacking-context-expected.html:
        * fast/css-grid-layout/grid-item-z-index-stacking-context.html:
        * fast/css-grid-layout/grid-items-should-not-be-stretched-when-height-or-width-or-margin-change.html:
        * fast/css-grid-layout/grid-justify-content-distribution.html:
        * fast/css-grid-layout/grid-justify-content-vertical-lr.html:
        * fast/css-grid-layout/grid-justify-content-vertical-rl.html:
        * fast/css-grid-layout/justify-self-cell.html:
        * fast/css-grid-layout/min-width-height-auto-and-margins.html:
        * fast/css-grid-layout/minmax-fixed-logical-height-only.html:
        * fast/css-grid-layout/minmax-fixed-logical-width-only.html:
        * fast/css-grid-layout/minmax-max-content-resolution-columns.html:
        * fast/css-grid-layout/minmax-max-content-resolution-rows.html:
        * fast/css-grid-layout/named-grid-line-get-set.html:
        * fast/css-grid-layout/percent-grid-item-in-percent-grid-track-in-percent-grid.html:
        * fast/css-grid-layout/percent-grid-item-in-percent-grid-track.html:
        * fast/css-grid-layout/percent-of-indefinite-track-size-in-auto.html:
        * fast/css-grid-layout/percent-of-indefinite-track-size.html:
        * fast/css-grid-layout/percent-track-breadths-regarding-container-size.html:
        * fast/css-grid-layout/place-cell-by-index.html:
        * fast/css-grid-layout/resources/grid-alignment.css:
        (.alignSelfCenterSafe):
        (.alignSelfCenterUnsafe):
        (.alignSelfEndSafe):
        (.alignSelfEndUnsafe):
        (.alignItemsAuto):
        (.alignItemsStretch):
        (.alignItemsStart):
        (.alignItemsEnd):
        (.alignItemsCenterSafe):
        (.alignItemsCenterUnsafe):
        (.alignItemsEndSafe):
        (.alignItemsEndUnsafe):
        (.justifySelfAuto):
        (.justifySelfStretch):
        (.justifySelfStart):
        (.justifySelfCenter):
        (.justifySelfEnd):
        (.justifySelfRight):
        (.justifySelfLeft):
        (.justifySelfFlexStart):
        (.justifySelfFlexEnd):
        (.justifySelfSelfStart):
        (.justifySelfSelfEnd):
        (.justifySelfCenterSafe):
        (.justifySelfCenterUnsafe):
        (.justifyItemsAuto):
        (.justifyItemsStretch):
        (.justifyItemsStart):
        (.justifyItemsCenter):
        (.justifyItemsEnd):
        (.justifyItemsCenterSafe):
        (.justifyItemsCenterUnsafe):
        (.justifyItemsEndSafe):
        (.justifyItemsEndUnsafe):
        (.selfStretch):
        (.contentStart):
        (.contentCenter):
        (.contentEnd):
        (.contentCenterSafe):
        (.contentCenterUnsafe):
        (.contentEndSafe):
        (.contentEndUnsafe):
        (.contentSpaceBetween):
        (.contentSpaceAround):
        (.contentSpaceEvenly):
        (.contentStretch):
        * fast/css-grid-layout/resources/grid.css:
        (.verticalRL):
        (.verticalLR):
        (.horizontalTB):
        (.horizontalBT):
        (.inline-grid): Deleted.
        (.firstRowFirstColumn): Deleted.
        (.directionRTL): Deleted.

2016-02-18  Andy Estes  <aestes@apple.com>

        Revert to dispatching the popstate event synchronously
        https://bugs.webkit.org/show_bug.cgi?id=153297
        rdar://problem/24092294

        Reviewed by Brent Fulgham.

        Renamed and modified this test to expect synchronous dispatch.

        * fast/loader/stateobjects/popstate-is-synchronous-expected.txt: Renamed from LayoutTests/fast/loader/stateobjects/popstate-is-asynchronous-expected.txt.
        * fast/loader/stateobjects/popstate-is-synchronous.html: Renamed from LayoutTests/fast/loader/stateobjects/popstate-is-asynchronous.html.

2016-02-18  Philippe Normand  <pnormand@igalia.com>

        [GStreamer] Bump internal jhbuild versions to 1.6.3
        https://bugs.webkit.org/show_bug.cgi?id=149594

        Reviewed by Michael Catanzaro.

        * platform/gtk/TestExpectations: Skipping new failing tests for now.

2016-02-18  Commit Queue  <commit-queue@webkit.org>

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

        made fast/events/wheelevent-basic-actual.txt fail in WK2
        (Requested by alexchristensen on #webkit).

        Reverted changeset:

        "Wheel event callback removing the window causes crash in
        WebCore."
        https://bugs.webkit.org/show_bug.cgi?id=150871
        http://trac.webkit.org/changeset/196790

2016-02-18  Chris Dumez  <cdumez@apple.com>

        window.history / window.navigator should not be replaceable
        https://bugs.webkit.org/show_bug.cgi?id=154412

        Reviewed by Ryosuke Niwa.

        Update / rebaseline existing tests now that window.history and
        window.navigator are no longer replaceable.

        * fast/dom/Window/get-set-properties-expected.txt:
        * fast/dom/Window/get-set-properties.html:
        * fast/dom/Window/window-property-shadowing-expected.txt:
        * fast/dom/Window/window-property-shadowing.html:
        * http/tests/history/cross-origin-replace-history-object-child-expected.txt:
        * http/tests/history/resources/cross-origin-replaces-history-object-child-iframe.html:
        * js/dom/var-declarations-shadowing-expected.txt:
        * js/dom/var-declarations-shadowing.html:
        * js/getOwnPropertyDescriptor-window-attributes-expected.txt:
        * js/getOwnPropertyDescriptor-window-attributes.html:

2016-02-18  Simon Fraser  <simon.fraser@apple.com>

        Wheel event callback removing the window causes crash in WebCore.
        https://bugs.webkit.org/show_bug.cgi?id=150871

        Reviewed by Brent Fulgham.

        * fast/events/wheel-event-destroys-frame-expected.txt: Added.
        * fast/events/wheel-event-destroys-frame.html: Added.

2016-02-18  Zalan Bujtas  <zalan@apple.com>

        Soft hyphen is not shown when it is placed at the end of an inline element
        https://bugs.webkit.org/show_bug.cgi?id=153980

        Reviewed by David Hyatt.

        This patch handles the case when the character at the breaking position does not fit the
        line and soft-hyphen, as the first breaking opportunity, is followed by this overflowing character.
        (foo&shy;bar where b overflows the line).
        In such cases we don't yet have an item in the breaking history so we need to take a look at
        the current context instead.    

        * fast/text/soft-hyphen-as-first-breaking-opportunity-expected.html: Added.
        * fast/text/soft-hyphen-as-first-breaking-opportunity.html: Added.

2016-02-18  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline imported/w3c/web-platform-tests/html/dom/interfaces.html for ios-simulator after r196770

        Unreviewed test gardening.

        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt:

2016-02-18  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline imported/w3c/web-platform-tests/html/dom/reflection-forms.html for ios-simulator after r196769 

        Unreviewed test gardening.

        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/reflection-forms-expected.txt:

2016-02-18  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline imported/w3c/web-platform-tests/html/dom/interfaces.html for ios-simulator after r196742

        Unreviewed test gardening.

        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt:

2016-02-18  Csaba Osztrogonác  <ossy@webkit.org>

        JSC ARM Linux test gardening after r196625
        https://bugs.webkit.org/show_bug.cgi?id=154392

        Reviewed by Mark Lam.

        * js/script-tests/dfg-float32array.js:
        * js/script-tests/dfg-float64array.js:
        * js/script-tests/dfg-int16array.js:
        * js/script-tests/dfg-int32array-overflow-values.js:
        * js/script-tests/dfg-int32array.js:
        * js/script-tests/dfg-int8array.js:
        * js/script-tests/dfg-osr-entry-hoisted-clobbered-structure-check.js:
        * js/script-tests/dfg-uint16array.js:
        * js/script-tests/dfg-uint32array-overflow-values.js:
        * js/script-tests/dfg-uint32array.js:
        * js/script-tests/dfg-uint8array.js:
        * js/script-tests/dfg-uint8clampedarray.js:
        * js/script-tests/regress-141098.js:

2016-02-17  Myles C. Maxfield  <mmaxfield@apple.com>

        [Font Loading] Implement FontFaceSet
        https://bugs.webkit.org/show_bug.cgi?id=153348

        Reviewed by Simon Fraser.

        * fast/text/font-face-set-javascript-expected.txt: Added.
        * fast/text/font-face-set-javascript.html: Added.

2016-02-17  Commit Queue  <commit-queue@webkit.org>

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

        broke css3/calc/transforms-translate.html (Requested by
        alexchristensen on #webkit).

        Reverted changeset:

        "WebKitCSSMatrix transformList with calculated relative length
        crashes Safari."
        https://bugs.webkit.org/show_bug.cgi?id=153333
        http://trac.webkit.org/changeset/196738

2016-02-17  Dean Jackson  <dino@apple.com>

        WebKitCSSMatrix transformList with calculated relative length crashes Safari.
        https://bugs.webkit.org/show_bug.cgi?id=153333
        <rdar://problem/17198383>

        Reviewed by Simon Fraser.

        Update existing tests to exercise the non-absolute lengths for translation
        and perspective functions.

        * transforms/cssmatrix-2d-interface-expected.txt:
        * transforms/cssmatrix-2d-interface.xhtml:
        * transforms/cssmatrix-3d-interface-expected.txt:
        * transforms/cssmatrix-3d-interface.xhtml:

2016-02-17  Keith Miller  <keith_miller@apple.com>

        Spread operator should be allowed when not the first argument of parameter list
        https://bugs.webkit.org/show_bug.cgi?id=152721

        Reviewed by Saam Barati.

        Update tests with new semantics of spread calling. Additionally,
        adjust benchmarks to run in a more reasonable time now that
        spread is implemented correctly.

        * js/basic-spread-expected.txt:
        * js/parser-syntax-check-expected.txt:
        * js/regress/script-tests/deltablue-varargs.js:
        (deltaBlue):
        * js/regress/script-tests/varargs-construct.js:
        * js/script-tests/basic-spread.js:
        * js/script-tests/parser-syntax-check.js:

2016-02-17  Ryan Haddad  <ryanhaddad@apple.com>

        Add ios-simulator baseline for new W3C HTML tests added with r196710

        Unreviewed test gardening.

        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/reflection-embedded-expected.txt: Added.
        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/reflection-forms-expected.txt: Added.

2016-02-17  Chris Dumez  <cdumez@apple.com>

        SES selftest page crashes on nightly r196694
        https://bugs.webkit.org/show_bug.cgi?id=154350
        <rdar://problem/24704334>

        Reviewed by Mark Lam.

        Add test coverage for the crash which happens when shadowing window.length
        with a value after the window property and then calling
        Object.getOwnPropertyDescriptor(window, "length").

        * js/window-length-getOwnPropertyDescriptor-crash-expected.txt: Added.
        * js/window-length-getOwnPropertyDescriptor-crash.html: Added.

2016-02-17  Simon Fraser  <simon.fraser@apple.com>

        Add tests for iframe and overflow scrollability after navigating back
        https://bugs.webkit.org/show_bug.cgi?id=154300

        Fix the tests added in r196665 to be agnostic about how many pixels a wheel event scrolls.

        * fast/scrolling/iframe-scrollable-after-back-expected.txt:
        * fast/scrolling/iframe-scrollable-after-back.html:
        * fast/scrolling/overflow-scrollable-after-back-expected.txt:
        * fast/scrolling/overflow-scrollable-after-back.html:

2016-02-17  Skachkov Oleksandr  <gskachkov@gmail.com>

        [ES6] Arrow function. Arrow function should raise exception ReferenceError only when access to 'arguments'  on top level
        https://bugs.webkit.org/show_bug.cgi?id=152570

        Reviewed by Saam Barati.

        Add tests to ensure that arrrow function return error when it binds arguments on top level

        * js/arrowfunction-lexical-bind-arguments-top-level-expected.txt: Added.
        * js/arrowfunction-lexical-bind-arguments-top-level.html: Added.
        * js/script-tests/arrowfunction-lexical-bind-arguments-top-level.js: Added.

2016-02-17  Chris Dumez  <cdumez@apple.com>

        Import W3C HTML reflection tests
        https://bugs.webkit.org/show_bug.cgi?id=154310
        <rdar://problem/24685826>

        Reviewed by Ryosuke Niwa.

        Skip newly imported tests in Debug builds because they are slow.

        * TestExpectations:

2016-02-17  Alex Christensen  <achristensen@webkit.org>

        Copy http body when being redirected with 308 with NetworkSession
        https://bugs.webkit.org/show_bug.cgi?id=154348

        Reviewed by Brady Eidson.

        * http/tests/navigation/post-308-response-expected.txt: Copied from LayoutTests/http/tests/navigation/post-307-response-expected.txt.
        * http/tests/navigation/post-308-response.html: Copied from LayoutTests/http/tests/navigation/post-307-response.html.
        * http/tests/navigation/resources/redirection-response.php:
        Added a test verifying data is being sent with post requests after being redirected with an http status code of 308.
        We already had non-CORS tests for 301, 302, 303, and 307, and we already had CORS tests for 301, 302, 303, 307, and 308.
        This fills in the missing non-CORS test.

2016-02-17  Chris Dumez  <cdumez@apple.com>

        Regression(r196648): window.showModalDialog is no longer undefined if the client does not allow showing modal dialog
        https://bugs.webkit.org/show_bug.cgi?id=154330

        Reviewed by Gavin Barraclough.

        Add layout test to make sure that window.showModalDialog is undefined
        when the client does not allow showing modal dialog and to check that
        window.showModalDialog can be shadowed.

        * fast/dom/Window/forbid-showModalDialog-expected.txt: Added.
        * fast/dom/Window/forbid-showModalDialog.html: Added.

2016-02-17  Commit Queue  <commit-queue@webkit.org>

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

         "Causes major slowdowns on deltablue-varargs" (Requested by
        keith_miller on #webkit).

        Reverted changeset:

        "Spread operator should be allowed when not the first argument
        of parameter list"
        https://bugs.webkit.org/show_bug.cgi?id=152721
        http://trac.webkit.org/changeset/196675

2016-02-17  Nan Wang  <n_wang@apple.com>

        AX: Implement sentence related text marker functions using TextIterator
        https://bugs.webkit.org/show_bug.cgi?id=154312

        Reviewed by Chris Fleizach.

        * accessibility/mac/text-marker-paragraph-nav-expected.txt:
        * accessibility/mac/text-marker-paragraph-nav.html:
        * accessibility/mac/text-marker-sentence-nav-expected.txt: Added.
        * accessibility/mac/text-marker-sentence-nav.html: Added.

2016-02-17  Ryan Haddad  <ryanhaddad@apple.com>

        Adding an ios-specific baseline for accessibility/ios-simulator/centerpoint.html during failure investigation
        https://bugs.webkit.org/show_bug.cgi?id=154137

        Unreviewed test gardening.

        * platform/ios-simulator/accessibility/ios-simulator/centerpoint-expected.txt: Added.

2016-02-17  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline imported/w3c/web-platform-tests/html/dom/interfaces.html for ios-simulator

        Unreviewed test gardening.

        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt:

2016-02-17  Ryan Haddad  <ryanhaddad@apple.com>

        Skipping tests added with r196688 on ios-simulator due to reliance on unsupported mouse events.

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-02-17  Chris Dumez  <cdumez@apple.com>

        Window should have its 'constructor' property on the prototype
        https://bugs.webkit.org/show_bug.cgi?id=154037
        <rdar://problem/24689078>

        Reviewed by Gavin Barraclough.

        * http/tests/security/cross-origin-window-property-access-expected.txt:
        * http/tests/security/cross-origin-window-property-access.html:
        Add checks to make sure it still is not possible to access
        window.constructor cross-origin.

        * js/getOwnPropertyDescriptor-window-attributes-expected.txt:
        * js/getOwnPropertyDescriptor-window-attributes.html:
        Update test now that window has it's "constructor" attribute
        on the prototype.

2016-02-16  Carlos Garcia Campos  <cgarcia@igalia.com>

        Add a way to test ScrollAnimator
        https://bugs.webkit.org/show_bug.cgi?id=153479

        Reviewed by Michael Catanzaro.

        * compositing/overflow/overflow-scrollbar-layer-positions-expected.txt:
        * fast/scrolling/overlay-scrollbars-scroll-corner-expected.html: Added.
        * fast/scrolling/overlay-scrollbars-scroll-corner.html: Added.
        * fast/scrolling/scroll-animator-basic-events-expected.txt: Added.
        * fast/scrolling/scroll-animator-basic-events.html: Added.
        * fast/scrolling/scroll-animator-overlay-scrollbars-hovered-expected.txt: Added.
        * fast/scrolling/scroll-animator-overlay-scrollbars-hovered.html: Added.
        * fast/scrolling/scroll-animator-select-list-events-expected.txt: Added.
        * fast/scrolling/scroll-animator-select-list-events.html: Added.
        * fast/scrolling/scrollbar-tickmarks-hittest.html:
        * platform/mac-wk1/TestExpectations:
        * platform/mac-wk1/fast/scrolling/scroll-animator-basic-events-expected.txt: Added.
        * platform/mac-wk1/fast/scrolling/scroll-animator-select-list-events-expected.txt: Added.

2016-02-16  Gavin Barraclough  <barraclough@apple.com>

        JSDOMWindow::getOwnPropertySlot should not search photo chain
        https://bugs.webkit.org/show_bug.cgi?id=154102

        Reviewed by Chris Dumez.

        Should only return *own* properties.

        * fast/dom/Window/es52-globals-expected.txt:
        * http/tests/security/window-named-valueOf-expected.txt:
        * imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt:
            - update test results.

2016-02-16  Keith Miller  <keith_miller@apple.com>

        Spread operator should be allowed when not the first argument of parameter list
        https://bugs.webkit.org/show_bug.cgi?id=152721

        Reviewed by Saam Barati.

        Update tests with new semantics of spread calling.

        * js/basic-spread-expected.txt:
        * js/parser-syntax-check-expected.txt:
        * js/script-tests/basic-spread.js:
        * js/script-tests/parser-syntax-check.js:

2016-02-16  Chris Dumez  <cdumez@apple.com>

        Navigator.geolocation should not be marked a [Replaceable] and should be on the prototype
        https://bugs.webkit.org/show_bug.cgi?id=154304
        <rdar://problem/24685092>

        Reviewed by Gavin Barraclough.

        * fast/dom/Geolocation/enabled-expected.txt:
        * fast/dom/Geolocation/script-tests/enabled.js:
        * js/dom/delete-syntax-expected.txt:
        * js/dom/script-tests/delete-syntax.js:
        Update tests as they expected the navigator properties to be on the
        instance rather than the prototype.

        * js/dom/script-tests/shadow-navigator-geolocation-in-strict-mode-does-not-throw.js: Removed.
        * js/dom/shadow-navigator-geolocation-in-strict-mode-does-not-throw-expected.txt: Removed.
        * js/dom/shadow-navigator-geolocation-in-strict-mode-does-not-throw.html: Removed.
        Drop outdated test.

        * js/navigator-set-geolocation-expected.txt: Added.
        * js/navigator-set-geolocation.html: Added.
        Add test to make sure that Navigator.geolocation cannot be set. I verified that
        this test passes in both Firefox and Chrome.

2016-02-16  Said Abou-Hallawa  <sabouhallawa@apple.com>

        REGRESSION (r190430): WTFCrashWithSecurityImplication in:void SVGRootInlineBox::layoutCharactersInTextBoxes()
        https://bugs.webkit.org/show_bug.cgi?id=154185

        Reviewed by Ryosuke Niwa.
        
        Ensure that adding an HTMLSlotElement with text to an SVGTextElement will
        not create a renderer and we won't crash.

        * fast/shadow-dom/text-slot-child-crash-expected.txt: Added.
        * fast/shadow-dom/text-slot-child-crash.svg: Added.

2016-02-16  Simon Fraser  <simon.fraser@apple.com>

        Add tests for iframe and overflow scrollability after navigating back
        https://bugs.webkit.org/show_bug.cgi?id=154300

        Reviewed by Brent Fulgham.
        
        Test that sends mousewheel events to overflow and iframe, before and after navigating
        forward then back.
        
        These tests detect the regression caused by r188659.

        * fast/scrolling/iframe-scrollable-after-back-expected.txt: Added.
        * fast/scrolling/iframe-scrollable-after-back.html: Added.
        * fast/scrolling/overflow-scrollable-after-back-expected.txt: Added.
        * fast/scrolling/overflow-scrollable-after-back.html: Added.
        * fast/scrolling/resources/scroll-notifying-page.html: Added.
        * platform/ios-simulator/TestExpectations: Skip on iOS.

2016-02-16  Daniel Bates  <dabates@apple.com>

        CSP: Update violation report 'Content-Type' header
        https://bugs.webkit.org/show_bug.cgi?id=153166
        <rdar://problem/24383327>

        Reviewed by Brent Fulgham.

        Update expected results now that we post the Content Security Policy violation report with
        Content-Type application/csp-report.

        * TestExpectations: Update associated bugs for entries that still fail.
        * http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-when-private-browsing-enabled-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-when-private-browsing-toggled-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-same-origin-no-cookies-when-private-browsing-toggled-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-same-origin-with-cookies-when-private-browsing-enabled-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-uri-from-child-frame-expected.txt: Fix up HTTP_REFERER and csp-report
        to reflect the correct value for HTTP_REFERER and the correct values for the report-uri and document-uri keys in the CSP
        report JSON object.

2016-02-16  Ryan Haddad  <ryanhaddad@apple.com>

        Marking pageoverlay/overlay-installation.html  as flaky on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=153337

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-02-16  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline imported/w3c/web-platform-tests/html/dom/interfaces.html for ios-simulator after r196648

        Unreviewed test gardening.

        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt:

2016-02-16  Daniel Bates  <dabates@apple.com>

        CSP: Fix parsing of 'host/path' source expressions
        https://bugs.webkit.org/show_bug.cgi?id=153170
        <rdar://problem/24383407>

        Reviewed by Brent Fulgham.

        Remove entry for test http/tests/security/contentSecurityPolicy/source-list-parsing-paths-03.html
        as it now passes.

        * TestExpectations:

2016-02-16  Joseph Pecoraro  <pecoraro@apple.com>

        JSContext Inspector: Support for inline source maps
        https://bugs.webkit.org/show_bug.cgi?id=154303
        <rdar://problem/24670392>

        Reviewed by Timothy Hatcher.

        * inspector/unit-tests/url-utilities-expected.txt: Added.
        * inspector/unit-tests/url-utilities.html: Added.

2016-02-16  Daniel Bates  <dabates@apple.com>

        CSP: Disallow an empty host in a host-source source expression
        https://bugs.webkit.org/show_bug.cgi?id=153168
        <rdar://problem/24383366>

        Reviewed by Brent Fulgham.

        Remove entry for test http/tests/security/contentSecurityPolicy/source-list-parsing-07.html
        as it now passes.

        * TestExpectations:

2016-02-16  Chris Dumez  <cdumez@apple.com>

        [Web IDL] Operations should be on the instance for global objects or if [Unforgeable]
        https://bugs.webkit.org/show_bug.cgi?id=154120
        <rdar://problem/24613231>

        Reviewed by Gavin Barraclough.

        * inspector/model/remote-object-get-properties-expected.txt:
        Rebaseline test because the order of static properties has changed:
        functions are now before constants instead of after.

2016-02-16  Ryan Haddad  <ryanhaddad@apple.com>

        Marking webarchive/loading/missing-data.html as flaky on ios-simulator-wk2
        https://bugs.webkit.org/show_bug.cgi?id=153380

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/TestExpectations:

2016-02-16  Keith Miller  <keith_miller@apple.com>

        ClonedArguments should not materialize its special properties unless they are being changed or deleted
        https://bugs.webkit.org/show_bug.cgi?id=154128

        Reviewed by Filip Pizlo.

        Have argumnets-strict-mode test the speed of spreading the arguments object.

        * js/regress/script-tests/arguments-strict-mode.js:
        (foo):

2016-02-16  Ryan Haddad  <ryanhaddad@apple.com>

        Marking fast/events/keydown-1.html as flaky on mac-wk1 debug
        https://bugs.webkit.org/show_bug.cgi?id=154297

        Unreviewed test gardening.

        * platform/mac-wk1/TestExpectations:

2016-02-16  Filip Pizlo  <fpizlo@apple.com>

        FTL should support StringFromCharCode
        https://bugs.webkit.org/show_bug.cgi?id=154267

        Reviewed by Mark Lam.

        * js/regress/script-tests/string-from-char-code.js: Added.
        (result):
        * js/regress/script-tests/untyped-string-from-char-code.js: Added.
        (result):
        * js/regress/string-from-char-code-expected.txt: Added.
        * js/regress/string-from-char-code.html: Added.
        * js/regress/untyped-string-from-char-code-expected.txt: Added.
        * js/regress/untyped-string-from-char-code.html: Added.

2016-02-16  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] No hover-horizontal scrolling available
        https://bugs.webkit.org/show_bug.cgi?id=122859

        Reviewed by Michael Catanzaro.

        * platform/gtk/scrollbars/main-frame-scrollbar-horizontal-wheel-scroll-expected.html: Added.
        * platform/gtk/scrollbars/main-frame-scrollbar-horizontal-wheel-scroll.html: Added.

2016-02-16  Antti Koivisto  <antti@apple.com>

        Factor id mutation style invalidation code into a class
        https://bugs.webkit.org/show_bug.cgi?id=154287

        Reviewed by Andreas Kling.

        * fast/css/style-invalidation-id-change-descendants-expected.txt: Added.
        * fast/css/style-invalidation-id-change-descendants.html: Added.

2016-02-16  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline imported/w3c/web-platform-tests/html/dom/interfaces.html for ios-simulator after r196621

        Unreviewed test gardening.

        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt:

2016-02-15  Antti Koivisto  <antti@apple.com>

        Optimize style invalidations for attribute selectors
        https://bugs.webkit.org/show_bug.cgi?id=154242

        Reviewed by Andreas Kling.

        * fast/css/style-invalidation-attribute-change-descendants-expected.txt: Added.
        * fast/css/style-invalidation-attribute-change-descendants.html: Added.

2016-02-16  Chris Dumez  <cdumez@apple.com>

        Do security checks early in JSDOMWindow::put*()
        https://bugs.webkit.org/show_bug.cgi?id=154270

        Reviewed by Gavin Barraclough.

        * http/tests/security/cross-frame-access-put-expected.txt:
        Rebaseline. The extra security warnings are for the following properties:
        closed, crypto, frameElement, pageXOffset and pageYOffset.
        All these properties are read-only and therefore cannot be set (cross-origin
        or not). The previous code was not doing an explicit check and ended up
        trying to set these properties. However, since they are read-only, we would
        silently fail to set them. The new code does the explicit check and therefore
        will warn and NOT attempt to set.

        * http/tests/security/cross-origin-reified-window-location-setting-expected.txt: Added.
        * http/tests/security/cross-origin-reified-window-location-setting.html: Added.
        Add test to check that setting window.location cross-origin still works after the
        window object has been reified.

2016-02-15  Mark Lam  <mark.lam@apple.com>

        [ARMv7] Some JSC test fails due to exhausting the JIT code heap on the no LLINT test configuration.
        https://bugs.webkit.org/show_bug.cgi?id=151611

        Reviewed by Saam Barati.

        These tests are only failing because they are compiling too much with the LLINT
        disabled.  As a result, they are using more JIT code heap space than is allowed
        by the OS.

        This patch excludes these tests from the noLLINT configuration on 32-bit ARM.

        * js/script-tests/dfg-float32array.js:
        * js/script-tests/dfg-float64array.js:
        * js/script-tests/dfg-int16array.js:
        * js/script-tests/dfg-int32array-overflow-values.js:
        * js/script-tests/dfg-int32array.js:
        * js/script-tests/dfg-int8array.js:
        * js/script-tests/dfg-osr-entry-hoisted-clobbered-structure-check.js:
        * js/script-tests/dfg-uint16array.js:
        * js/script-tests/dfg-uint32array-overflow-values.js:
        * js/script-tests/dfg-uint32array.js:
        * js/script-tests/dfg-uint8array.js:
        * js/script-tests/dfg-uint8clampedarray.js:
        * js/script-tests/regress-141098.js:

2016-02-15  Brent Fulgham  <bfulgham@apple.com>

        [Mac] Gather some rudimentary statistics during resource load 
        https://bugs.webkit.org/show_bug.cgi?id=153575
        <rdar://problem/24075254>

        Reviewed by Brady Eidson.

        * http/tests/navigation/resources/redirect-on-reload-updates-history-item-statistics.php: Added.
        * http/tests/navigation/resources/redirect-updates-history-item-done-statistics.html: Added.
        * http/tests/navigation/statistics-expected.txt: Added.
        * http/tests/navigation/statistics.html: Added.

2016-02-15  Chris Dumez  <cdumez@apple.com>

        The following properties should exist on the global object: AudioTrackList, AudioTrack, VideoTrackList, VideoTrack
        https://bugs.webkit.org/show_bug.cgi?id=154250
        <rdar://problem/24660829>

        Reviewed by Eric Carlson.

        Rebaseline now that AudioTrackList, AudioTrack, VideoTrackList and VideoTrack
        are exposed on the global Window object.

        * js/dom/global-constructors-attributes-expected.txt:
        * platform/mac-mavericks/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac/js/dom/global-constructors-attributes-expected.txt:

2016-02-15  Hunseop Jeong  <hs85.jeong@samsung.com>

        [EFL] Rebaseline after r196244.

        Unreviewed test gardening.

        * platform/efl/compositing/geometry/clipping-foreground-expected.txt:
        * platform/efl/compositing/geometry/root-layer-update-expected.txt:
        * platform/efl/compositing/overflow/ancestor-overflow-expected.txt:
        * platform/efl/compositing/overflow/nested-scrolling-expected.txt:
        * platform/efl/compositing/overflow/overflow-scroll-expected.txt:
        * platform/efl/compositing/overflow/parent-overflow-expected.txt:
        * platform/efl/compositing/overflow/scrollbar-painting-expected.txt:
        * platform/efl/compositing/reflections/nested-reflection-on-overflow-expected.txt:
        * platform/efl/compositing/sibling-positioning-expected.txt:
        * platform/efl/css3/unicode-bidi-isolate-basic-expected.txt:
        * platform/efl/fast/block/positioning/auto/vertical-rl/007-expected.txt:
        * platform/efl/fast/block/positioning/vertical-rl/fixed-positioning-expected.txt:
        * platform/efl/fast/borders/border-antialiasing-expected.txt:
        * platform/efl/fast/clip/001-expected.txt:
        * platform/efl/fast/clip/013-expected.txt:
        * platform/efl/fast/clip/014-expected.txt:
        * platform/efl/fast/clip/016-expected.txt:
        * platform/efl/fast/clip/outline-overflowClip-expected.txt:
        * platform/efl/fast/css/clip-zooming-expected.txt:
        * platform/efl/fast/forms/validation-message-appearance-expected.txt:
        * platform/efl/fast/inline/left-right-center-inline-alignment-in-ltr-and-rtl-blocks-expected.txt:
        * platform/efl/fast/line-grid/line-grid-inside-columns-expected.txt:
        * platform/efl/fast/line-grid/line-grid-into-columns-expected.txt:
        * platform/efl/fast/lists/scrolled-marker-paint-expected.txt:
        * platform/efl/fast/multicol/client-rects-expected.txt:
        * platform/efl/fast/multicol/column-break-with-balancing-expected.txt:
        * platform/efl/fast/multicol/column-rules-expected.txt:
        * platform/efl/fast/multicol/column-rules-stacking-expected.txt:
        * platform/efl/fast/multicol/columns-shorthand-parsing-expected.txt:
        * platform/efl/fast/multicol/float-paginate-complex-expected.txt:
        * platform/efl/fast/multicol/float-paginate-empty-lines-expected.txt:
        * platform/efl/fast/multicol/float-paginate-expected.txt:
        * platform/efl/fast/multicol/layers-in-multicol-expected.txt:
        * platform/efl/fast/multicol/layers-split-across-columns-expected.txt:
        * platform/efl/fast/multicol/max-height-columns-block-expected.txt:
        * platform/efl/fast/multicol/nested-columns-expected.txt:
        * platform/efl/fast/multicol/newmulticol/client-rects-expected.txt:
        * platform/efl/fast/multicol/overflow-across-columns-expected.txt:
        * platform/efl/fast/multicol/overflow-across-columns-percent-height-expected.txt:
        * platform/efl/fast/multicol/overflow-unsplittable-expected.txt:
        * platform/efl/fast/multicol/paginate-block-replaced-expected.txt:
        * platform/efl/fast/multicol/pagination/BottomToTop-bt-expected.txt:
        * platform/efl/fast/multicol/pagination/BottomToTop-lr-expected.txt:
        * platform/efl/fast/multicol/pagination/BottomToTop-rl-expected.txt:
        * platform/efl/fast/multicol/pagination/BottomToTop-tb-expected.txt:
        * platform/efl/fast/multicol/pagination/LeftToRight-bt-expected.txt:
        * platform/efl/fast/multicol/pagination/LeftToRight-rl-expected.txt:
        * platform/efl/fast/multicol/pagination/LeftToRight-tb-expected.txt:
        * platform/efl/fast/multicol/pagination/LeftToRight-tb-hittest-expected.txt:
        * platform/efl/fast/multicol/pagination/RightToLeft-bt-expected.txt:
        * platform/efl/fast/multicol/pagination/RightToLeft-lr-expected.txt:
        * platform/efl/fast/multicol/pagination/RightToLeft-rl-dynamic-expected.txt:
        * platform/efl/fast/multicol/pagination/RightToLeft-rl-expected.txt:
        * platform/efl/fast/multicol/pagination/RightToLeft-rl-hittest-expected.txt:
        * platform/efl/fast/multicol/pagination/RightToLeft-tb-expected.txt:
        * platform/efl/fast/multicol/pagination/TopToBottom-bt-expected.txt:
        * platform/efl/fast/multicol/pagination/TopToBottom-lr-expected.txt:
        * platform/efl/fast/multicol/pagination/TopToBottom-rl-expected.txt:
        * platform/efl/fast/multicol/positive-leading-expected.txt:
        * platform/efl/fast/multicol/scrolling-column-rules-expected.txt:
        * platform/efl/fast/multicol/scrolling-overflow-expected.txt:
        * platform/efl/fast/multicol/span/span-as-immediate-child-complex-splitting-expected.txt:
        * platform/efl/fast/multicol/span/span-as-immediate-child-generated-content-expected.txt:
        * platform/efl/fast/multicol/span/span-as-immediate-child-property-removal-expected.txt:
        * platform/efl/fast/multicol/span/span-as-immediate-columns-child-dynamic-expected.txt:
        * platform/efl/fast/multicol/span/span-as-immediate-columns-child-expected.txt:
        * platform/efl/fast/multicol/span/span-as-immediate-columns-child-removal-expected.txt:
        * platform/efl/fast/multicol/span/span-as-nested-columns-child-dynamic-expected.txt:
        * platform/efl/fast/multicol/span/span-as-nested-columns-child-expected.txt:
        * platform/efl/fast/multicol/span/span-margin-collapsing-expected.txt:
        * platform/efl/fast/multicol/table-vertical-align-expected.txt:
        * platform/efl/fast/multicol/tall-image-behavior-expected.txt:
        * platform/efl/fast/multicol/vertical-lr/column-break-with-balancing-expected.txt:
        * platform/efl/fast/multicol/vertical-lr/column-rules-expected.txt:
        * platform/efl/fast/multicol/vertical-lr/float-multicol-expected.txt:
        * platform/efl/fast/multicol/vertical-lr/float-paginate-complex-expected.txt:
        * platform/efl/fast/multicol/vertical-lr/float-paginate-expected.txt:
        * platform/efl/fast/multicol/vertical-lr/nested-columns-expected.txt:
        * platform/efl/fast/multicol/vertical-rl/column-break-with-balancing-expected.txt:
        * platform/efl/fast/multicol/vertical-rl/column-rules-expected.txt:
        * platform/efl/fast/multicol/vertical-rl/float-multicol-expected.txt:
        * platform/efl/fast/multicol/vertical-rl/float-paginate-complex-expected.txt:
        * platform/efl/fast/multicol/vertical-rl/float-paginate-expected.txt:
        * platform/efl/fast/multicol/vertical-rl/nested-columns-expected.txt:
        * platform/efl/fast/overflow/clip-rects-fixed-ancestor-expected.txt:
        * platform/efl/fast/overflow/float-in-relpositioned-expected.txt:
        * platform/efl/fast/overflow/overflow-auto-position-absolute-expected.txt:
        * platform/efl/fast/overflow/overflow-rtl-expected.txt:
        * platform/efl/fast/overflow/paged-x-div-expected.txt:
        * platform/efl/fast/overflow/paged-x-div-with-column-gap-expected.txt:
        * platform/efl/fast/overflow/paged-x-on-root-expected.txt:
        * platform/efl/fast/overflow/paged-x-with-column-gap-expected.txt:
        * platform/efl/fast/overflow/paged-y-div-expected.txt:
        * platform/efl/fast/overflow/scroll-nested-positioned-layer-in-overflow-expected.txt:
        * platform/efl/fast/regions/repaint/region-painting-via-layout-expected.txt:
        * platform/efl/fast/repaint/box-shadow-h-expected.txt:
        * platform/efl/fast/repaint/box-shadow-v-expected.txt:
        * platform/efl/fast/repaint/layer-outline-expected.txt:
        * platform/efl/fast/repaint/layer-outline-horizontal-expected.txt:
        * platform/efl/fast/table/edge-offsets-expected.txt:
        * platform/efl/fast/transforms/overflow-with-transform-expected.txt:
        * platform/efl/fast/transforms/rotated-transform-affects-scrolling-1-expected.txt: Added.
        * platform/efl/fast/transforms/rotated-transform-affects-scrolling-2-expected.txt: Added.
        * platform/efl/printing/single-line-must-not-be-split-into-two-pages-expected.txt:
        * platform/efl/scrollbars/scrollbars-on-positioned-content-expected.txt:
        * platform/efl/svg/custom/getscreenctm-in-scrollable-div-area-nested-expected.txt: Added.
        * platform/efl/svg/custom/image-rescale-clip-expected.txt: Added.

2016-02-15  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline imported/w3c/web-platform-tests/html/dom/interfaces.html for ios-simulator after r196607

        Unreviewed test gardening.

        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt:

2016-02-15  Myles C. Maxfield  <mmaxfield@apple.com>

        [Font Loading] Implement FontFace JavaScript object
        https://bugs.webkit.org/show_bug.cgi?id=153345

        Reviewed by Antti Koivisto.

        * fast/text/font-face-javascript-expected.txt: Added.
        * fast/text/font-face-javascript.html: Added.
        * js/dom/global-constructors-attributes-expected.txt:
        * platform/efl/js/dom/global-constructors-attributes-expected.txt:
        * platform/gtk/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac-mavericks/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac/js/dom/global-constructors-attributes-expected.txt:
        * platform/win/js/dom/global-constructors-attributes-expected.txt:

2016-02-15  Chris Dumez  <cdumez@apple.com>

        XMLHttpRequest / XMLHttpRequestUpload should inherit XMLHttpRequestEventTarget
        https://bugs.webkit.org/show_bug.cgi?id=154230

        Reviewed by Alex Christensen.

        Rebaseline tests now that XMLHttpRequestEventTarget is exposed on the
        global objects.

        * js/dom/global-constructors-attributes-dedicated-worker-expected.txt:
        * js/dom/global-constructors-attributes-expected.txt:
        * platform/efl/js/dom/global-constructors-attributes-dedicated-worker-expected.txt:
        * platform/efl/js/dom/global-constructors-attributes-expected.txt:
        * platform/gtk/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac-mavericks/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac/js/dom/global-constructors-attributes-expected.txt:
        * platform/win/js/dom/global-constructors-attributes-expected.txt:

2016-02-15  Jiewen Tan  <jiewen_tan@apple.com>

        Refine SimulatedMouseEvent to support Event.isTrusted
        https://bugs.webkit.org/show_bug.cgi?id=154133
        <rdar://problem/24616246>

        Reviewed by Darin Adler.

        * imported/blink/fast/events/event-trusted-expected.txt:
        * imported/blink/fast/events/event-trusted.html:

2016-02-15  Ryan Haddad  <ryanhaddad@apple.com>

        Marking animations/animation-delay-changed.html as flaky on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=154253

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/TestExpectations:
        * platform/ios-simulator/TestExpectations:

2016-02-15  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Web Workers have no access to console for debugging
        https://bugs.webkit.org/show_bug.cgi?id=26237

        Reviewed by Timothy Hatcher.

        * inspector/console/messageAdded-from-worker-expected.txt: Added.
        * inspector/console/messageAdded-from-worker.html: Added.
        * inspector/console/resources/worker-console-log.js: Added.

2016-02-15  Timothy Hatcher  <timothy@apple.com>

        Web Inspector: CSS variables are not formatted correctly
        https://bugs.webkit.org/show_bug.cgi?id=154217
        rdar://problem/24644154

        Reviewed by Joseph Pecoraro.

        * inspector/codemirror/prettyprinting-css-rules-expected.txt:
        * inspector/codemirror/prettyprinting-css-rules.html:
        * inspector/codemirror/resources/prettyprinting/css-rule-tests/css-variables-expected.css: Added.
        * inspector/codemirror/resources/prettyprinting/css-rule-tests/css-variables.css: Added.

2016-02-15  Chris Dumez  <cdumez@apple.com>

        Regression(r196563): It is no longer possible to call window.addEventListener without an explicit 'this'
        https://bugs.webkit.org/show_bug.cgi?id=154245

        Reviewed by Ryosuke Niwa.

        Add a layout test to cover the use of the EventListener API without an
        explicit 'this' value.

        * fast/dom/Window/addEventListener-implicit-this-expected.txt: Added.
        * fast/dom/Window/addEventListener-implicit-this.html: Added.

2016-02-15  Daniel Bates  <dabates@apple.com>

        CSP: 'sandbox' should be ignored in report-only mode
        https://bugs.webkit.org/show_bug.cgi?id=153167
        <rdar://problem/22708669>

        Reviewed by Brent Fulgham.

        Remove the entry from the TestExpectations file for the test
        http/tests/security/contentSecurityPolicy/sandbox-report-only.html as it now passes.

        * TestExpectations:

2016-02-15  Daniel Bates  <dabates@apple.com>

        CSP: Allow schemeless source expressions to match an HTTP or HTTPS resource
        https://bugs.webkit.org/show_bug.cgi?id=154177
        <rdar://problem/22708772>

        Reviewed by Brent Fulgham.

        Update test case and expected result to test that a schemeless source expression
        matches an HTTPS subresource (and does not trigger a Content Security Policy violation)
        when the page is served over HTTP.

        * http/tests/security/contentSecurityPolicy/source-list-parsing-10-expected.txt:
        * http/tests/security/contentSecurityPolicy/source-list-parsing-10.html: Change "no" to "yes"
        so that we consider it a success (and continue printing "PASS") when we load and execute the
        script, <https://127.0.0.1:8443/security/contentSecurityPolicy/resources/script.js>.

2016-02-15  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline imported/w3c/web-platform-tests/html/dom/interfaces.html for ios-simulator after r196563

        Unreviewed test gardening.

        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt:

2016-02-15  Hunseop Jeong  <hs85.jeong@samsung.com>

        Unreviewed. EFL gardening after r195740.

        * platform/efl/tables/mozilla/bugs/bug10269-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug10269-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug10296-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug103533-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug106158-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug108340-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug110566-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug11321-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug113235-3-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug11944-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug119786-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug12384-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug1261-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug12910-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug13105-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug13118-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug133756-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug133756-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug13484-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug13526-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug138725-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug14159-3-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug149275-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug17130-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug1828-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug18359-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug18558-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug2050-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug20579-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug21299-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug21918-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug221784-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug221784-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug22246-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug22246-2a-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug2267-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug23072-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug23151-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug23299-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug24503-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug24627-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug2469-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug2479-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug24880-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug25086-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug2516-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug25367-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug2585-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug26178-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug27038-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug27038-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug275625-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug2757-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug278266-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug278385-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug2886-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug28928-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug29157-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug2973-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug3037-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug3037-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug30418-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug30985-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug3191-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug32205-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug32205-5-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug32447-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug3263-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug3309-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug34538-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug35662-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug3718-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug39209-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug40828-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug4284-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug4429-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug44523-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug45055-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug4520-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug46268-3-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug46268-5-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug46268-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug46480-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug46480-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug4739-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug48028-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug48028-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug51037-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug51140-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug55527-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug55545-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug55694-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug56405-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug57300-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug57378-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug57828-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug5798-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug5799-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug5838-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug58402-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug59354-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug60013-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug60749-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug60992-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug63785-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug650-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug67864-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug67915-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug69187-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug709-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug7112-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug7112-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug75250-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug8032-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug82946-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug8361-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug83786-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug8381-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug9072-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug9271-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug93363-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug96343-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug965-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug97138-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug99923-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug99948-expected.txt:
        * platform/efl/tables/mozilla/collapsing_borders/bug127040-expected.txt:
        * platform/efl/tables/mozilla/collapsing_borders/bug41262-4-expected.txt:
        * platform/efl/tables/mozilla/core/captions-expected.txt:
        * platform/efl/tables/mozilla/core/col_widths_auto_auto-expected.txt:
        * platform/efl/tables/mozilla/core/col_widths_auto_autoPer-expected.txt:
        * platform/efl/tables/mozilla/core/col_widths_fix_autoPer-expected.txt:
        * platform/efl/tables/mozilla/core/row_span-expected.txt:
        * platform/efl/tables/mozilla/dom/appendCol2-expected.txt:
        * platform/efl/tables/mozilla/dom/appendRowsExpand1-expected.txt:
        * platform/efl/tables/mozilla/dom/appendTbodyExpand1-expected.txt:
        * platform/efl/tables/mozilla/dom/deleteCellsRebuild1-expected.txt:
        * platform/efl/tables/mozilla/dom/deleteCellsShrink1-expected.txt:
        * platform/efl/tables/mozilla/dom/deleteCellsShrink2-expected.txt:
        * platform/efl/tables/mozilla/dom/deleteCol1-expected.txt:
        * platform/efl/tables/mozilla/dom/deleteCol2-expected.txt:
        * platform/efl/tables/mozilla/dom/deleteCol3-expected.txt:
        * platform/efl/tables/mozilla/dom/deleteColGroup1-expected.txt:
        * platform/efl/tables/mozilla/dom/deleteColGroup2-expected.txt:
        * platform/efl/tables/mozilla/dom/deleteRowsRebuild1-expected.txt:
        * platform/efl/tables/mozilla/dom/deleteRowsShrink1-expected.txt:
        * platform/efl/tables/mozilla/dom/deleteTbodyExpand1-expected.txt:
        * platform/efl/tables/mozilla/dom/deleteTbodyRebuild1-expected.txt:
        * platform/efl/tables/mozilla/dom/insertCellsExpand1-expected.txt:
        * platform/efl/tables/mozilla/dom/insertCellsExpand2-expected.txt:
        * platform/efl/tables/mozilla/dom/insertCellsRebuild1-expected.txt:
        * platform/efl/tables/mozilla/dom/insertCellsRebuild2-expected.txt:
        * platform/efl/tables/mozilla/dom/insertRowsExpand1-expected.txt:
        * platform/efl/tables/mozilla/dom/insertRowsRebuild1-expected.txt:
        * platform/efl/tables/mozilla/dom/tableDom-expected.txt:
        * platform/efl/tables/mozilla/marvin/body_col-expected.txt:
        * platform/efl/tables/mozilla/marvin/body_tbody-expected.txt:
        * platform/efl/tables/mozilla/marvin/body_tfoot-expected.txt:
        * platform/efl/tables/mozilla/marvin/body_thead-expected.txt:
        * platform/efl/tables/mozilla/marvin/col_span-expected.txt:
        * platform/efl/tables/mozilla/marvin/table_frame_border-expected.txt:
        * platform/efl/tables/mozilla/marvin/table_frame_box-expected.txt:
        * platform/efl/tables/mozilla/marvin/table_rules_all-expected.txt:
        * platform/efl/tables/mozilla/marvin/table_rules_none-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_align_center-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_align_left-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_align_right-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_border_0-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_border_1-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_border_2-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_border_3-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_caption_align_bot-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_caption_align_top-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_cellspacing-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_default-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_id-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_row_th_nowrap-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_td_align_center-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_td_align_left-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_td_align_right-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_td_colspan-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_td_height-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_td_nowrap-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_td_rowspan-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_th_align_center-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_th_align_left-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_th_align_right-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_th_colspan-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_th_height-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_th_rowspan-expected.txt:
        * platform/efl/tables/mozilla/marvin/tbody_align_center-expected.txt:
        * platform/efl/tables/mozilla/marvin/tbody_align_char-expected.txt:
        * platform/efl/tables/mozilla/marvin/tbody_align_justify-expected.txt:
        * platform/efl/tables/mozilla/marvin/tbody_align_left-expected.txt:
        * platform/efl/tables/mozilla/marvin/tbody_align_right-expected.txt:
        * platform/efl/tables/mozilla/marvin/tbody_char-expected.txt:
        * platform/efl/tables/mozilla/marvin/tfoot_align_center-expected.txt:
        * platform/efl/tables/mozilla/marvin/tfoot_align_char-expected.txt:
        * platform/efl/tables/mozilla/marvin/tfoot_align_justify-expected.txt:
        * platform/efl/tables/mozilla/marvin/tfoot_align_left-expected.txt:
        * platform/efl/tables/mozilla/marvin/tfoot_align_right-expected.txt:
        * platform/efl/tables/mozilla/marvin/tfoot_char-expected.txt:
        * platform/efl/tables/mozilla/marvin/thead_align_center-expected.txt:
        * platform/efl/tables/mozilla/marvin/thead_align_char-expected.txt:
        * platform/efl/tables/mozilla/marvin/thead_align_justify-expected.txt:
        * platform/efl/tables/mozilla/marvin/thead_align_left-expected.txt:
        * platform/efl/tables/mozilla/marvin/thead_align_right-expected.txt:
        * platform/efl/tables/mozilla/marvin/thead_char-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_caption_align_bottom-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_caption_align_top-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_table-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_table_align_center-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_table_align_left-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_table_align_right-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_table_bgcolor_name-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_table_bgcolor_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_table_border-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_table_border_none-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_table_border_px-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_table_cellpadding-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_table_cellpadding_pct-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_table_cellspacing-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_table_cellspacing_pct-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_table_frame_void-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_table_rules_groups-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_table_rules_none-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_table_style-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tbody_align_center-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tbody_align_char-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tbody_align_left-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tbody_align_right-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tbody_class-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tbody_id-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tbody_style-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_td_bgcolor_name-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_td_bgcolor_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_td_class-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_td_colspan-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_td_height-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_td_id-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_td_nowrap-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_td_rowspan-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_td_style-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tfoot_align_center-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tfoot_align_char-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tfoot_align_left-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tfoot_align_right-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tfoot_class-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tfoot_id-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tfoot_style-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_th_bgcolor_name-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_th_bgcolor_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_th_class-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_th_colspan-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_th_height-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_th_id-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_th_nowrap-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_th_style-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_thead_align_center-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_thead_align_char-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_thead_align_left-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_thead_align_right-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_thead_class-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_thead_id-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_thead_style-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tr_bgcolor_name-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tr_bgcolor_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tr_class-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tr_id-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tr_style-expected.txt:
        * platform/efl/tables/mozilla/other/body_col-expected.txt:
        * platform/efl/tables/mozilla/other/cellspacing-expected.txt:
        * platform/efl/tables/mozilla/other/move_row-expected.txt:
        * platform/efl/tables/mozilla/other/padding-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug10140-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug101759-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug10216-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug104898-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug1055-2-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug106336-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug11945-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug131020-3-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug14159-2-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug178855-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug18770-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug24880-1-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug25707-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug3166-11-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug3166-12-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug3166-13-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug3166-14-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug3166-16-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug3166-17-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug3166-18-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug32205-1-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug32205-4-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug4294-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug46268-4-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug51000-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug58402-2-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug65372-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug6933-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug7113-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug73629-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug92647-1-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug92868_1-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/collapsing_borders/bug41262-5-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/collapsing_borders/bug41262-6-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/core/backgrounds-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/core/captions3-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/core/conflicts-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/dom/appendCells1-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/dom/appendCellsRebuild1-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/dom/appendCol1-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/dom/insertTbodyExpand1-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/dom/insertTbodyRebuild1-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_frame_above-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_frame_below-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_frame_hsides-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_frame_lhs-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_frame_rhs-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_frame_void-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_frame_vsides-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_row-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_tbody-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_rules_cols-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_rules_rows-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/tables_caption_align_left-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/tables_caption_align_right-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/x_caption_align_left-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/x_caption_align_right-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/x_colgroup_width_px-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/x_table_frame_above-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/x_table_frame_below-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/x_table_frame_border-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/x_table_frame_box-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/x_table_frame_hsides-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/x_table_frame_lhs-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/x_table_frame_rhs-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/x_table_frame_vsides-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/x_table_rules_all-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/x_table_rules_cols-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/x_table_rules_rows-expected.txt:

2016-02-14  Antti Koivisto  <antti@apple.com>

        Add test for class change style invalidation optimization
        https://bugs.webkit.org/show_bug.cgi?id=154226

        Reviewed by Myles Maxfield.

        Test for https://trac.webkit.org/r196383

        * fast/css/style-invalidation-class-change-descendants-expected.txt: Added.
        * fast/css/style-invalidation-class-change-descendants.html: Added.

2016-02-15  Hunseop Jeong  <hs85.jeong@samsung.com>

        Unreviewed. EFL gardening. Mark more video tests to failure.

        * platform/efl/TestExpectations: Added more crash tests and moved the tests to upper position.

2016-02-14  Simon Fraser  <simon.fraser@apple.com>

        [CSS Filters] When applying an SVG filter on a composited image using CSS the image is rendered without the filter
        https://bugs.webkit.org/show_bug.cgi?id=154108

        Reviewed by Sam Weinig.

        * compositing/filters/simple-image-with-svg-filter-expected.html: Added.
        * compositing/filters/simple-image-with-svg-filter.html: Added.

2016-02-14  Chris Dumez  <cdumez@apple.com>

        Window and WorkerGlobalScope should inherit EventTarget
        https://bugs.webkit.org/show_bug.cgi?id=154170
        <rdar://problem/24642377>

        Reviewed by Darin Adler.

        * fast/frames/detached-frame-eventListener-expected.txt: Added.
        * fast/frames/detached-frame-eventListener.html: Added.
        Add test case to cover the use of the EventListener API on a detached
        frame.

        * fast/loader/window-clearing-expected.txt:
        Rebaseline now that window has one more object in its prototype chain.

        * http/tests/security/cross-frame-access-call-expected.txt:
        * http/tests/security/cross-frame-access-call.html:
        Add test coverage for cross-origin access to window.dispatchEvent() which
        should not be allowed, in addition to window.addEventListener() and
        window.removeEventListener() which were already tested.

2016-02-12  Nan Wang  <n_wang@apple.com>

        AX: Implement paragraph related text marker functions using TextIterator
        https://bugs.webkit.org/show_bug.cgi?id=154098
        <rdar://problem/24269675>

        Reviewed by Chris Fleizach.

        * accessibility/mac/text-marker-paragraph-nav-expected.txt: Added.
        * accessibility/mac/text-marker-paragraph-nav.html: Added.
        * accessibility/text-marker/text-marker-previous-next-expected.txt:
        * accessibility/text-marker/text-marker-previous-next.html:

2016-02-12  Saam barati  <sbarati@apple.com>

        [ES6] we have an incorrect syntax error when a callee of a function expression has the same name as a top-level lexical declaration
        https://bugs.webkit.org/show_bug.cgi?id=154143

        Reviewed by Benjamin Poulain.

        * js/basic-strict-mode-expected.txt:
        * js/let-syntax-expected.txt:
        * js/script-tests/let-syntax.js:

2016-02-12  Jiewen Tan  <jiewen_tan@apple.com>

        Unreviewed, build fix after r196520

        * inspector/model/remote-object-get-properties-expected.txt:
        * platform/mac/inspector/model/remote-object-expected.txt:

2016-02-12  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline imported/w3c/web-platform-tests/html/dom/interfaces.html for ios-simulator after r196520

        Unreviewed test gardening.

        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt:

2016-02-12  Daniel Bates  <dabates@apple.com>

        CSP: 'blob:' URLs should not match 'self' in CSP source expression lists.
        https://bugs.webkit.org/show_bug.cgi?id=153158
        <rdar://problem/24383264>

        Reviewed by Brent Fulgham.

        Add test http/tests/security/contentSecurityPolicy/blob-url-matches-source-blob.html to ensure that a
        blob URL matches source "blob:".

        Replaced text-only test http/tests/security/contentSecurityPolicy/blob-urls-match-self.html with an
        analogous reference test http/tests/security/contentSecurityPolicy/blob-url-does-not-match-source-self.html
        so as ensure that we do not regress the behavior that source 'self' should not match a blob URL
        without considering the Content Security Policy violation message as part of the expected result.
        The Content Security Policy violation message will differ between test runs because it references
        the blob URL that triggered the violation, which is cryptographically random.

        * TestExpectations: Remove entry for test http/tests/security/contentSecurityPolicy/blob-urls-match-self.html as the analogous test
        blob-url-does-not-match-source-self.htm now passes.
        * http/tests/security/contentSecurityPolicy/blob-url-does-not-match-source-self-expected.html: Added.
        * http/tests/security/contentSecurityPolicy/blob-url-does-not-match-source-self.html: Added.
        * http/tests/security/contentSecurityPolicy/blob-url-matches-source-blob-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/blob-url-matches-source-blob.html: Added.
        * http/tests/security/contentSecurityPolicy/blob-urls-match-self-expected.txt: Removed.
        * http/tests/security/contentSecurityPolicy/blob-urls-match-self.html: Removed. See the analogous test blob-url-does-not-match-source-self.html.

2016-02-12  Daniel Bates  <dabates@apple.com>

        CSP: Implement child-src directive
        https://bugs.webkit.org/show_bug.cgi?id=153562
        <rdar://problem/24610087>

        Reviewed by Brent Fulgham.

        Add new tests, un-skip now passing tests and update incorrect expected result for test http/tests/security/contentSecurityPolicy/1.1/child-src/worker-blocked.html. 

        * TestExpectations: Remove entry for test http/tests/security/contentSecurityPolicy/worker-script-src.html as it now passes.
        Mark all tests in http/tests/security/contentSecurityPolicy/1.1/child-src as PASS so that we run them except for tests
        frame-fires-load-event-when-blocked.html and frame-fires-load-event-when-redirect-blocked.html (formerly named frame-blocked.html
        and frame-redirect-blocked.html, respectively) as they depend on the fix for <https://bugs.webkit.org/show_bug.cgi?id=153150>.
        Skip all other CSP 1.1 tests until we fix <https://bugs.webkit.org/show_bug.cgi?id=85558>. Group some CSP 1.1 entries together.
        * fast/workers/worker-inherits-csp-blocks-eval-expected.txt: Update expected result based on change to worker-inherits-csp-blocks-eval.html.
        * fast/workers/worker-inherits-csp-blocks-eval.html: Remove source 'self' from script-src directive. This was needed as
        a workaround for <https://bugs.webkit.org/show_bug.cgi?id=153158> when the script URL for a worker was checked against the
        script-src directive. Now that the script URL is checked against the child-src directive we do not need this workaround.
        * fast/workers/worker-inherits-csp-blocks-xhr.html: Ditto.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/frame-about-blank-allowed.html: Use js-test-{pre, post}.js as opposed to
        js-test.js to avoid duplicate "TEST COMPLETE" output.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/frame-allowed.html: Ditto.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/frame-blocked-expected.txt: Update expected result based on changes to frame-blocked.html.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/frame-blocked.html: Update test to work without the fix for <https://bugs.webkit.org/show_bug.cgi?id=153150>.

        * http/tests/security/contentSecurityPolicy/1.1/child-src/frame-fires-load-event-when-blocked-expected.txt: Copied from LayoutTests/http/tests/security/contentSecurityPolicy/1.1/child-src/frame-blocked-expected.txt.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/frame-fires-load-event-when-blocked.html: Copied from LayoutTests/http/tests/security/contentSecurityPolicy/1.1/child-src/frame-blocked.html.
        Keep a copy of the original test for when we fix <https://bugs.webkit.org/show_bug.cgi?id=153150>.

        * http/tests/security/contentSecurityPolicy/1.1/child-src/frame-fires-load-event-when-redirect-blocked-expected.txt: Copied from LayoutTests/http/tests/security/contentSecurityPolicy/1.1/child-src/frame-redirect-blocked-expected.txt.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/frame-fires-load-event-when-redirect-blocked.html: Copied from LayoutTests/http/tests/security/contentSecurityPolicy/1.1/child-src/frame-redirect-blocked.html.
        Keep a copy of the original test for when we fix <https://bugs.webkit.org/show_bug.cgi?id=153150>.

        * http/tests/security/contentSecurityPolicy/1.1/child-src/frame-redirect-blocked-expected.txt: Update expected result based on changes to frame-redirect-blocked.html.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/frame-redirect-blocked.html: Update test to work without the fix for <https://bugs.webkit.org/show_bug.cgi?id=153150>.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/frame-src-takes-precedence-over-child-src-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/frame-src-takes-precedence-over-child-src.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/worker-allowed.html: Use js-test-{pre, post}.js as opposed to
        js-test.js to avoid duplicate "TEST COMPLETE" output.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/worker-blocked-expected.txt: Update incorrect expected result to
        reflect WebKit error message. The current result reflects the error message used by Blink.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/worker-blocked.html: Use js-test-{pre, post}.js as opposed to
        js-test.js to avoid duplicate "TEST COMPLETE" output.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/worker-redirect-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/worker-redirect-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/worker-shared-allowed-expected.txt: Removed; WebKit does not support shared Web Workers.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/worker-shared-allowed.html: Removed; WebKit does not support shared Web Workers.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/worker-shared-blocked-expected.txt: Removed; WebKit does not support shared Web Workers.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/worker-shared-blocked.html: Removed; WebKit does not support shared Web Workers.
        * http/tests/security/contentSecurityPolicy/resources/child-src-test.js: Remove logic for testing shared Web Workers as WebKit does not support such workers.
        (window.onload): Deleted.
        (injectSharedWorker): Deleted.
        * http/tests/security/contentSecurityPolicy/worker-blob-inherits-csp-blocks-eval-expected.txt: Update expected result based on change to worker-blob-inherits-csp-blocks-eval.html.
        * http/tests/security/contentSecurityPolicy/worker-blob-inherits-csp-blocks-eval.html: Remove source 'self' from script-src directive.
        This was needed as a workaround for <https://bugs.webkit.org/show_bug.cgi?id=153158> when the script URL for a worker was checked
        against the script-src directive. Now that the script URL is checked against the child-src directive we do not need this workaround.
        * http/tests/security/contentSecurityPolicy/worker-blob-inherits-csp-importScripts-block-aborts-all-subsequent-imports-expected.txt: Update
        expected result based on change to worker-blob-inherits-csp-importScripts-block-aborts-all-subsequent-imports.html.
        * http/tests/security/contentSecurityPolicy/worker-blob-inherits-csp-importScripts-block-aborts-all-subsequent-imports.html:
        Remove source 'self' from script-src directive. This was needed as a workaround for <https://bugs.webkit.org/show_bug.cgi?id=153158> when
        the script URL for a worker was checked against the script-src directive. Now that the script URL is checked against the child-src directive
        we do not need this workaround.
        * http/tests/security/contentSecurityPolicy/worker-blob-inherits-csp-importScripts-redirect-cross-origin-blocked.html: Ditto.
        * http/tests/security/isolatedWorld/bypass-main-world-csp-worker.html: Add child-src 'none' and remove FIXME comment.
        * http/tests/security/isolatedWorld/bypass-main-world-csp-worker-redirect-expected.txt: Added.
        * http/tests/security/isolatedWorld/bypass-main-world-csp-worker-redirect.html: Added.
        * platform/ios-simulator/TestExpectations: Remove skip entry for tests in http/tests/security/contentSecurityPolicy/1.1 from this file.
        Instead we will skip these tests from LayoutTests/TestExpectations since they fail for all ports.
        * platform/mac/TestExpectations: Ditto.
        * platform/win/TestExpectations: Ditto.
        * platform/wk2/TestExpectations: Ditto.

2016-02-11  Ryan Haddad  <ryanhaddad@apple.com>

        Re-enable skipped animations tests on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=152131

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/TestExpectations:
        * platform/ios-simulator/TestExpectations:

2016-02-12  Jiewen Tan  <jiewen_tan@apple.com>

        WebKit should expose the DOM 4 Event.isTrusted property
        https://bugs.webkit.org/show_bug.cgi?id=76121
        <rdar://problem/22558494>

        Reviewed by Darin Adler.

        * fast/dom/unforgeable-attributes-expected.txt:
        * fast/xmlhttprequest/xmlhttprequest-get-expected.txt:
        * http/tests/workers/worker-importScriptsOnError-expected.txt:
        * imported/blink/fast/events/event-trusted-expected.txt: Added.
        * imported/blink/fast/events/event-trusted.html: Added.
        * platform/ios-simulator/TestExpectations:

2016-02-12  Brady Eidson  <beidson@apple.com>

        Modern IDB: Simplify the relationship between IDBObjectStore and IDBIndex.
        https://bugs.webkit.org/show_bug.cgi?id=154187

        Reviewed by Alex Christensen.

        * storage/indexeddb/modern/deleteindex-3-expected.txt: Added.
        * storage/indexeddb/modern/deleteindex-3-private-expected.txt: Added.
        * storage/indexeddb/modern/deleteindex-3-private.html: Added.
        * storage/indexeddb/modern/deleteindex-3.html: Added.
        * storage/indexeddb/modern/resources/deleteindex-3.js: Added.

2016-02-12  Yusuke Suzuki  <utatane.tea@gmail.com>

        [ES6] Implement @@search
        https://bugs.webkit.org/show_bug.cgi?id=143889

        Reviewed by Darin Adler.

        * js/Object-getOwnPropertyNames-expected.txt:
        * js/dom/string-prototype-properties-expected.txt:
        * js/regress/script-tests/v8-regexp-search.js: Added.
        (runRegExpBenchmark.runBlock0):
        (runRegExpBenchmark.runBlock1):
        (runRegExpBenchmark):
        (runRegExpBenchmark.runBlock3):
        (runRegExpBenchmark.runBlock4):
        * js/regress/v8-regexp-search-expected.txt: Added.
        * js/regress/v8-regexp-search.html: Added.
        * js/script-tests/Object-getOwnPropertyNames.js:
        * sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.12_String.prototype.search/S15.5.4.12_A1_T3-expected.txt:

2016-02-12  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline imported/w3c/web-platform-tests/html/dom/interfaces.html for ios-simulator after r196466

        Unreviewed test gardening.

        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt:

2016-02-11  Chris Dumez  <cdumez@apple.com>

        [Web IDL] interfaces should inherit EventTarget instead of duplicating the EventTarget API
        https://bugs.webkit.org/show_bug.cgi?id=154121
        <rdar://problem/24613234>

        Reviewed by Gavin Barraclough.

        Rebaseline a couple of layout tests now that interfaces inherit EventTarget
        instead of duplicating the EventTarget API in their IDL.

        * fast/dom/Window/window-properties-performance-expected.txt:
        * fast/dom/prototype-chain-expected.txt:

2016-02-11  Zalan Bujtas  <zalan@apple.com>

        Subpixel rendering: Make focusring painting subpixel aware.
        https://bugs.webkit.org/show_bug.cgi?id=154111

        Reviewed by David Hyatt.

        Do not integral snap focusring rects while collecting them (use device pixel snapping instead
        right before passing them to GraphicsContext::drawFocusRing).

        * platform/mac/accessibility/image-link-expected.txt:
        * platform/mac/accessibility/mac/aria-columnrowheaders-expected.txt: Copied from LayoutTests/platform/mac/accessibility/table-cells-expected.txt.
        * platform/mac/accessibility/mac/document-links-expected.txt: Added.
        * platform/mac/accessibility/table-attributes-expected.txt:
        * platform/mac/accessibility/table-cells-expected.txt:
        * platform/mac/accessibility/table-sections-expected.txt:
        * platform/mac/accessibility/table-with-rules-expected.txt:

2016-02-11  Sukolsak Sakshuwong  <sukolsak@gmail.com>

        [INTL] Implement Intl.NumberFormat.prototype.resolvedOptions ()
        https://bugs.webkit.org/show_bug.cgi?id=147602

        Reviewed by Darin Adler.

        * js/intl-numberformat-expected.txt:
        * js/script-tests/intl-numberformat.js:
        (testNumberFormat):

2016-02-11  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline imported/w3c/web-platform-tests/html/dom/interfaces.html for ios-simulator after r196423

        Unreviewed test gardening.

        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt:

2016-02-11  Chris Dumez  <cdumez@apple.com>

        Move 'length' property to the prototype
        https://bugs.webkit.org/show_bug.cgi?id=154051
        <rdar://problem/24577385>

        Reviewed by Darin Adler.

        Rebaseline a couple of existing layout tests now that 'length' is
        on the prototype.

        * fast/dom/htmlcollection-getownpropertynames-expected.txt:
        * storage/domstorage/localstorage/delete-defineproperty-removal-expected.txt:

2016-02-11  Frederic Wang  <fred.wang@free.fr>

        Use Testharness.js for the MathML script tests
        https://bugs.webkit.org/show_bug.cgi?id=154065

        Reviewed by Darin Adler.

        * mathml/opentype/large-operators-munderover-expected.txt:
        * mathml/opentype/large-operators-munderover.html:
        * mathml/presentation/inferred-mrow-baseline-expected.txt:
        * mathml/presentation/inferred-mrow-baseline.html:
        * mathml/presentation/inferred-mrow-stretchy-expected.txt:
        * mathml/presentation/inferred-mrow-stretchy.html:
        * mathml/presentation/stretchy-depth-height-expected.txt:
        * mathml/presentation/stretchy-depth-height-symmetric-expected.txt:
        * mathml/presentation/stretchy-depth-height-symmetric.html:
        * mathml/presentation/stretchy-depth-height.html:

2016-02-10  Ryan Haddad  <ryanhaddad@apple.com>

        Removing deleted tests from ios-simulator TestExpectations

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-02-10  Ryan Haddad  <ryanhaddad@apple.com>

        Adding an ios-simulator expectation for fast/dom/event-handler-attributes.html
        https://bugs.webkit.org/show_bug.cgi?id=153763

        Unreviewed test gardening.

        * platform/ios-simulator/fast/dom/event-handler-attributes-expected.txt: Added.

2016-02-10  Eric Carlson  <eric.carlson@apple.com>

        Update "manual" caption track logic
        https://bugs.webkit.org/show_bug.cgi?id=154084
        <rdar://problem/24530516>

        Reviewed by Dean Jackson.

        * media/track/track-manual-mode-expected.txt:
        * media/track/track-manual-mode.html:

2016-02-10  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline imported/w3c/web-platform-tests/html/dom/interfaces.html for ios-simulator after 196392

        Unreviewed test gardening.

        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt:

2016-02-10  Chris Dumez  <cdumez@apple.com>

        [Web IDL] interface objects should be Function objects
        https://bugs.webkit.org/show_bug.cgi?id=154038
        <rdar://problem/24569358>

        Reviewed by Geoffrey Garen.

        Rebaseline / update existing layout tests now that interface objects
        are now Function objects. Also add a layout test to cover various
        aspects of interface objects.

        * css3/blending/background-blend-mode-property-parsing-expected.txt:
        * css3/blending/blend-mode-property-parsing-expected.txt:
        * css3/blending/script-tests/background-blend-mode-property-parsing.js:
        (shouldBeType):
        * css3/blending/script-tests/blend-mode-property-parsing.js:
        (shouldBeType):
        * css3/filters/backdrop/backdropfilter-property-parsing-expected.txt:
        * css3/filters/backdrop/script-tests/backdropfilter-property-parsing.js:
        (shouldBeType):
        * css3/filters/filter-property-parsing-expected.txt:
        * css3/filters/script-tests/filter-property-parsing.js:
        (shouldBeType):
        * fast/css/image-set-parsing-expected.txt:
        * fast/css/script-tests/image-set-parsing.js:
        (shouldBeType):
        * fast/dom/DOMException/XPathException-expected.txt:
        * fast/dom/DOMException/prototype-object-expected.txt:
        * fast/dom/DOMException/prototype-object.html:
        * fast/dom/DOMException/resources/XPathException.js:
        * fast/dom/MutationObserver/mutation-record-constructor-expected.txt:
        * fast/dom/MutationObserver/mutation-record-constructor.html:
        * fast/dom/Window/element-constructors-on-window-expected.txt:
        * fast/dom/call-a-constructor-as-a-function-expected.txt:
        * fast/dom/constructor-proto-expected.txt:
        * fast/dom/constructor-proto.html:
        * fast/dom/wrapper-classes-expected.txt:
        * fast/dom/wrapper-classes.html:
        * fast/mediastream/MediaStreamConstructor-expected.txt:
        * fast/mediastream/MediaStreamConstructor.html:
        * fast/workers/constructor-proto-expected.txt:
        * fast/workers/worker-location-expected.txt:
        * http/tests/xmlhttprequest/XMLHttpRequestException-expected.txt:
        * http/tests/xmlhttprequest/XMLHttpRequestException.html:
        * js/dom/global-constructors-attributes-dedicated-worker-expected.txt:
        * js/dom/script-tests/global-constructors-attributes-idb.js:
        (constructorPropertiesOnGlobalObject):
        * js/dom/script-tests/global-constructors-attributes.js:
        (constructorPropertiesOnGlobalObject):
        * js/interface-objects-expected.txt: Added.
        * js/interface-objects.html: Added.
        * media/encrypted-media/encrypted-media-v2-syntax-expected.txt:
        * media/encrypted-media/encrypted-media-v2-syntax.html:
        * media/track/track-vttcue-expected.txt:
        * platform/mac/fast/dom/Window/window-lookup-precedence-expected.txt:
        * platform/mac/js/dom/global-constructors-attributes-expected.txt:
        * svg/custom/SVGException-expected.txt:
        * svg/custom/global-constructors-expected.txt:
        * svg/custom/script-tests/SVGException.js:
        * svg/custom/script-tests/global-constructors.js:
        (shouldBeDefined):
        * transforms/2d/transform-value-types-expected.txt:
        * transforms/2d/transform-value-types.html:

2016-02-10  Ryan Haddad  <ryanhaddad@apple.com>

        Marking fast/css-generated-content/details-summary-before-after.html as failing on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=153029

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-02-10  Ryan Haddad  <ryanhaddad@apple.com>

        Reaseline imported/w3c/web-platform-tests/html/dom/interfaces.html for ios-simulator after r196374

        Unreviewed test gardening.

        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt:

2016-02-10  Chris Dumez  <cdumez@apple.com>

        Attributes on the Window instance should be configurable unless [Unforgeable]
        https://bugs.webkit.org/show_bug.cgi?id=153920
        <rdar://problem/24563211>

        Reviewed by Darin Adler.

        * fast/dom/Window/window-properties-configurable-expected.txt: Added.
        * fast/dom/Window/window-properties-configurable.html: Added.
        Add a test to check that Window properties are reported as configurable
        unless the [Unforgeable] ones and that deleting them actually works.

        * fast/dom/global-constructors.html:
        Update test so it no longer expects window.Node to be shadowable. As per
        the specification, the "Node" property is on the window instance, not its
        prototype. Therefore, it should cannot be shadowed and setting it to
        something actually overwites the previous value, given that the property
        is writable as per:
        - http://heycam.github.io/webidl/#es-interfaces
        I have verified that the new behavior is consistent with Firefox.

        * http/tests/security/cross-origin-reified-window-property-access-expected.txt: Added.
        * http/tests/security/cross-origin-reified-window-property-access.html: Added.
        * http/tests/security/resources/reify-window.html: Added.
        Add a test case to cover cross-origin access of Window properties after
        reification.

        * js/getOwnPropertyDescriptor-unforgeable-attributes-expected.txt:
        * js/getOwnPropertyDescriptor-unforgeable-attributes.html:
        Drop window.self from the list of unforgeable attributes. This attribute
        is not unforgeable in our implementation or in the specification:
        - https://html.spec.whatwg.org/multipage/browsers.html#the-window-object

        * js/getOwnPropertyDescriptor-window-attributes-expected.txt:
        * js/getOwnPropertyDescriptor-window-attributes.html:
        - Add coverage for window.self which is a regular Window property.
        - Add coverage for window.Node which is a constructor property
        - Add coverage for window.constructor. It should really be on the prototype
          as per the specification but this at least checks that the property is
          configurable, as per the specification.
        - Rebaseline the test as more checks are passing now that Window properties
          are marked as configurable.

2016-02-10  Ryan Haddad  <ryanhaddad@apple.com>

        Skop fast/regions/text-break-properties.html on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=153762

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-02-09  Nan Wang  <n_wang@apple.com>

        AX: Implement word related text marker functions using TextIterator
        https://bugs.webkit.org/show_bug.cgi?id=153939
        <rdar://problem/24269605>

        Reviewed by Chris Fleizach.

        * accessibility/mac/text-marker-word-nav-expected.txt: Added.
        * accessibility/mac/text-marker-word-nav.html: Added.
        * accessibility/text-marker/text-marker-previous-next-expected.txt:
        * accessibility/text-marker/text-marker-previous-next.html:

2016-02-09  Ryan Haddad  <ryanhaddad@apple.com>

        Mark perf/adding-radio-buttons.html as flaky on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=154055

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-02-09  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline tests for ios-simulator after r196222
        https://bugs.webkit.org/show_bug.cgi?id=154053

        Reviewed by Zalan Bujtas.

        * platform/ios-simulator-wk2/compositing/geometry/composited-in-columns-expected.txt:
        * platform/ios-simulator-wk2/compositing/layer-creation/overlap-animation-container-expected.txt: Added.
        * platform/ios-simulator-wk2/compositing/visibility/visibility-image-layers-dynamic-expected.txt:
        * platform/ios-simulator-wk2/fast/inline/continuation-outlines-with-layers-expected.txt: Added.
        * platform/ios-simulator-wk2/fast/layers/scroll-rect-to-visible-expected.txt:

2016-02-09  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline compositing/overflow/scrollbar-painting.html for ios-simulator after r196244

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/compositing/overflow/scrollbar-painting-expected.txt:

2016-02-09  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline imported/w3c/web-platform-tests/html/dom/interfaces.html for ios-simulator after r196303

        Unreviewed test gardening.

        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt:

2016-02-09  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline more tests for ios-simulator after r196244

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/compositing/overflow/overflow-scroll-expected.txt:
        * platform/ios-simulator-wk2/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.txt:
        * platform/ios-simulator-wk2/css2.1/20110323/abspos-replaced-width-margin-000-expected.txt:
        * platform/ios-simulator-wk2/fast/block/float/overhanging-tall-block-expected.txt:
        * platform/ios-simulator-wk2/fast/clip/014-expected.txt:
        * platform/ios-simulator-wk2/fast/multicol/overflow-unsplittable-expected.txt:
        * platform/ios-simulator-wk2/fast/multicol/pagination/BottomToTop-bt-expected.txt:
        * platform/ios-simulator-wk2/fast/multicol/pagination/BottomToTop-lr-expected.txt:
        * platform/ios-simulator-wk2/fast/multicol/pagination/BottomToTop-rl-expected.txt:
        * platform/ios-simulator-wk2/fast/multicol/pagination/BottomToTop-tb-expected.txt:
        * platform/ios-simulator-wk2/fast/multicol/pagination/RightToLeft-bt-expected.txt:
        * platform/ios-simulator-wk2/fast/multicol/pagination/RightToLeft-lr-expected.txt:
        * platform/ios-simulator-wk2/fast/multicol/pagination/RightToLeft-rl-dynamic-expected.txt:
        * platform/ios-simulator-wk2/fast/multicol/pagination/RightToLeft-rl-expected.txt:
        * platform/ios-simulator-wk2/fast/multicol/pagination/RightToLeft-tb-expected.txt:
        * platform/ios-simulator-wk2/fast/multicol/vertical-rl/column-break-with-balancing-expected.txt:
        * platform/ios-simulator-wk2/fast/multicol/vertical-rl/column-rules-expected.txt:
        * platform/ios-simulator-wk2/fast/multicol/vertical-rl/float-paginate-complex-expected.txt:
        * platform/ios-simulator-wk2/fast/overflow/float-in-relpositioned-expected.txt:
        * platform/ios-simulator-wk2/fast/overflow/overflow-auto-position-absolute-expected.txt:
        * platform/ios-simulator-wk2/fast/overflow/paged-x-div-expected.txt:
        * platform/ios-simulator-wk2/fast/overflow/paged-x-div-with-column-gap-expected.txt:
        * platform/ios-simulator-wk2/fast/overflow/scroll-nested-positioned-layer-in-overflow-expected.txt:

2016-02-09  Zalan Bujtas  <zalan@apple.com>

        Outline corners do not align properly for multiline inlines.
        https://bugs.webkit.org/show_bug.cgi?id=154025

        Reviewed by David Hyatt.

        Adjust border position when outline-offset > 0. This patch also
        removes integral pixelsnapping (drawLineForBoxSide takes care of
        device pixelsnapping). 

        * fast/inline/outline-corners-with-offset-expected.html: Added.
        * fast/inline/outline-corners-with-offset.html: Added.

2016-02-09  Zalan Bujtas  <zalan@apple.com>

        [Win] Rebaseline after r196244.

        Unreviewed test gardening.

        * platform/win/css3/unicode-bidi-isolate-basic-expected.txt:
        * platform/win/fast/block/float/overhanging-tall-block-expected.txt:
        * platform/win/fast/block/positioning/auto/vertical-rl/007-expected.txt:
        * platform/win/fast/borders/border-antialiasing-expected.txt:
        * platform/win/fast/clip/001-expected.txt:
        * platform/win/fast/clip/013-expected.txt:
        * platform/win/fast/clip/014-expected.txt:
        * platform/win/fast/clip/outline-overflowClip-expected.txt:
        * platform/win/fast/css/clip-zooming-expected.txt:
        * platform/win/fast/frames/flattening/iframe-flattening-offscreen-expected.txt: Added.
        * platform/win/fast/inline/left-right-center-inline-alignment-in-ltr-and-rtl-blocks-expected.txt:
        * platform/win/fast/line-grid/line-grid-inside-columns-expected.txt:
        * platform/win/fast/line-grid/line-grid-into-columns-expected.txt:
        * platform/win/fast/lists/scrolled-marker-paint-expected.txt:
        * platform/win/fast/multicol/client-rects-expected.txt:
        * platform/win/fast/multicol/column-break-with-balancing-expected.txt:
        * platform/win/fast/multicol/column-rules-expected.txt:
        * platform/win/fast/multicol/column-rules-stacking-expected.txt:
        * platform/win/fast/multicol/columns-shorthand-parsing-expected.txt:
        * platform/win/fast/multicol/float-paginate-complex-expected.txt:
        * platform/win/fast/multicol/float-paginate-empty-lines-expected.txt:
        * platform/win/fast/multicol/float-paginate-expected.txt:
        * platform/win/fast/multicol/layers-in-multicol-expected.txt:
        * platform/win/fast/multicol/layers-split-across-columns-expected.txt:
        * platform/win/fast/multicol/max-height-columns-block-expected.txt:
        * platform/win/fast/multicol/nested-columns-expected.txt:
        * platform/win/fast/multicol/newmulticol/client-rects-expected.txt:
        * platform/win/fast/multicol/overflow-across-columns-expected.txt:
        * platform/win/fast/multicol/overflow-across-columns-percent-height-expected.txt:
        * platform/win/fast/multicol/overflow-unsplittable-expected.txt:
        * platform/win/fast/multicol/paginate-block-replaced-expected.txt:
        * platform/win/fast/multicol/pagination/BottomToTop-bt-expected.txt:
        * platform/win/fast/multicol/pagination/BottomToTop-lr-expected.txt:
        * platform/win/fast/multicol/pagination/BottomToTop-rl-expected.txt:
        * platform/win/fast/multicol/pagination/BottomToTop-tb-expected.txt:
        * platform/win/fast/multicol/pagination/LeftToRight-bt-expected.txt:
        * platform/win/fast/multicol/pagination/LeftToRight-rl-expected.txt:
        * platform/win/fast/multicol/pagination/LeftToRight-tb-expected.txt:
        * platform/win/fast/multicol/pagination/LeftToRight-tb-hittest-expected.txt:
        * platform/win/fast/multicol/pagination/RightToLeft-bt-expected.txt:
        * platform/win/fast/multicol/pagination/RightToLeft-lr-expected.txt:
        * platform/win/fast/multicol/pagination/RightToLeft-rl-dynamic-expected.txt:
        * platform/win/fast/multicol/pagination/RightToLeft-rl-expected.txt:
        * platform/win/fast/multicol/pagination/RightToLeft-rl-hittest-expected.txt:
        * platform/win/fast/multicol/pagination/RightToLeft-tb-expected.txt:
        * platform/win/fast/multicol/pagination/TopToBottom-bt-expected.txt:
        * platform/win/fast/multicol/pagination/TopToBottom-lr-expected.txt:
        * platform/win/fast/multicol/pagination/TopToBottom-rl-expected.txt:
        * platform/win/fast/multicol/positive-leading-expected.txt:
        * platform/win/fast/multicol/scrolling-column-rules-expected.txt:
        * platform/win/fast/multicol/scrolling-overflow-expected.txt:
        * platform/win/fast/multicol/span/anonymous-style-inheritance-expected.txt:
        * platform/win/fast/multicol/span/span-as-immediate-child-complex-splitting-expected.txt:
        * platform/win/fast/multicol/span/span-as-immediate-child-generated-content-expected.txt:
        * platform/win/fast/multicol/span/span-as-immediate-child-property-removal-expected.txt:
        * platform/win/fast/multicol/span/span-as-immediate-columns-child-dynamic-expected.txt:
        * platform/win/fast/multicol/span/span-as-immediate-columns-child-expected.txt:
        * platform/win/fast/multicol/span/span-as-immediate-columns-child-removal-expected.txt:
        * platform/win/fast/multicol/span/span-as-nested-columns-child-dynamic-expected.txt:
        * platform/win/fast/multicol/span/span-as-nested-columns-child-expected.txt:
        * platform/win/fast/multicol/span/span-margin-collapsing-expected.txt:
        * platform/win/fast/multicol/table-vertical-align-expected.txt:
        * platform/win/fast/multicol/tall-image-behavior-expected.txt:
        * platform/win/fast/multicol/vertical-lr/column-break-with-balancing-expected.txt:
        * platform/win/fast/multicol/vertical-lr/column-rules-expected.txt:
        * platform/win/fast/multicol/vertical-lr/float-multicol-expected.txt:
        * platform/win/fast/multicol/vertical-lr/float-paginate-complex-expected.txt:
        * platform/win/fast/multicol/vertical-lr/float-paginate-expected.txt:
        * platform/win/fast/multicol/vertical-lr/nested-columns-expected.txt:
        * platform/win/fast/multicol/vertical-rl/column-break-with-balancing-expected.txt:
        * platform/win/fast/multicol/vertical-rl/column-rules-expected.txt:
        * platform/win/fast/multicol/vertical-rl/float-multicol-expected.txt:
        * platform/win/fast/multicol/vertical-rl/float-paginate-complex-expected.txt:
        * platform/win/fast/multicol/vertical-rl/float-paginate-expected.txt:
        * platform/win/fast/multicol/vertical-rl/nested-columns-expected.txt:
        * platform/win/fast/overflow/clip-rects-fixed-ancestor-expected.txt:
        * platform/win/fast/overflow/float-in-relpositioned-expected.txt:
        * platform/win/fast/overflow/overflow-auto-position-absolute-expected.txt:
        * platform/win/fast/overflow/overflow-rtl-expected.txt:
        * platform/win/fast/overflow/paged-x-div-expected.txt:
        * platform/win/fast/overflow/paged-x-div-with-column-gap-expected.txt:
        * platform/win/fast/overflow/paged-x-on-root-expected.txt:
        * platform/win/fast/overflow/paged-x-with-column-gap-expected.txt:
        * platform/win/fast/overflow/paged-y-div-expected.txt:
        * platform/win/fast/overflow/scroll-nested-positioned-layer-in-overflow-expected.txt:
        * platform/win/fast/repaint/box-shadow-h-expected.txt:
        * platform/win/fast/repaint/box-shadow-v-expected.txt:
        * platform/win/fast/repaint/layer-outline-expected.txt:
        * platform/win/fast/repaint/layer-outline-horizontal-expected.txt:
        * platform/win/fast/table/edge-offsets-expected.txt:
        * platform/win/fast/transforms/overflow-with-transform-expected.txt:
        * platform/win/printing/single-line-must-not-be-split-into-two-pages-expected.txt:
        * platform/win/scrollbars/scrollbars-on-positioned-content-expected.txt:
        * platform/win/svg/custom/getscreenctm-in-scrollable-div-area-nested-expected.txt:
        * platform/win/svg/custom/image-rescale-clip-expected.txt:

2016-02-09  Zalan Bujtas  <zalan@apple.com>

        [iOS] Rebaseline after r196244.

        Unreviewed test gardening.

        * platform/ios-simulator/compositing/geometry/clipping-foreground-expected.txt:
        * platform/ios-simulator/compositing/geometry/root-layer-update-expected.txt:
        * platform/ios-simulator/compositing/overflow/overflow-scroll-expected.txt:
        * platform/ios-simulator/compositing/overflow/parent-overflow-expected.txt:
        * platform/ios-simulator/compositing/overflow/scrollbar-painting-expected.txt:
        * platform/ios-simulator/compositing/sibling-positioning-expected.txt:
        * platform/ios-simulator/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.txt: Added.
        * platform/ios-simulator/css2.1/20110323/abspos-replaced-width-margin-000-expected.txt: Added.
        * platform/ios-simulator/css3/blending/blend-mode-overflow-expected.txt:
        * platform/ios-simulator/css3/unicode-bidi-isolate-basic-expected.txt:
        * platform/ios-simulator/fast/block/float/overhanging-tall-block-expected.txt:
        * platform/ios-simulator/fast/borders/border-antialiasing-expected.txt:
        * platform/ios-simulator/fast/clip/001-expected.txt:
        * platform/ios-simulator/fast/clip/013-expected.txt:
        * platform/ios-simulator/fast/clip/014-expected.txt:
        * platform/ios-simulator/fast/clip/016-expected.txt:
        * platform/ios-simulator/fast/clip/outline-overflowClip-expected.txt:
        * platform/ios-simulator/fast/css/clip-zooming-expected.txt:
        * platform/ios-simulator/fast/frames/flattening/iframe-flattening-offscreen-expected.txt:
        * platform/ios-simulator/fast/inline/left-right-center-inline-alignment-in-ltr-and-rtl-blocks-expected.txt:
        * platform/ios-simulator/fast/line-grid/line-grid-inside-columns-expected.txt:
        * platform/ios-simulator/fast/line-grid/line-grid-into-columns-expected.txt:
        * platform/ios-simulator/fast/lists/scrolled-marker-paint-expected.txt:
        * platform/ios-simulator/fast/multicol/client-rects-expected.txt:
        * platform/ios-simulator/fast/multicol/column-break-with-balancing-expected.txt:
        * platform/ios-simulator/fast/multicol/column-rules-expected.txt:
        * platform/ios-simulator/fast/multicol/column-rules-stacking-expected.txt:
        * platform/ios-simulator/fast/multicol/columns-shorthand-parsing-expected.txt:
        * platform/ios-simulator/fast/multicol/float-paginate-complex-expected.txt:
        * platform/ios-simulator/fast/multicol/float-paginate-empty-lines-expected.txt:
        * platform/ios-simulator/fast/multicol/float-paginate-expected.txt:
        * platform/ios-simulator/fast/multicol/layers-in-multicol-expected.txt:
        * platform/ios-simulator/fast/multicol/layers-split-across-columns-expected.txt:
        * platform/ios-simulator/fast/multicol/max-height-columns-block-expected.txt:
        * platform/ios-simulator/fast/multicol/nested-columns-expected.txt:
        * platform/ios-simulator/fast/multicol/newmulticol/client-rects-expected.txt:
        * platform/ios-simulator/fast/multicol/overflow-across-columns-expected.txt:
        * platform/ios-simulator/fast/multicol/overflow-across-columns-percent-height-expected.txt:
        * platform/ios-simulator/fast/multicol/overflow-unsplittable-expected.txt:
        * platform/ios-simulator/fast/multicol/paginate-block-replaced-expected.txt:
        * platform/ios-simulator/fast/multicol/pagination/BottomToTop-bt-expected.txt: Copied from LayoutTests/platform/ios-simulator/fast/multicol/pagination/TopToBottom-bt-expected.txt.
        * platform/ios-simulator/fast/multicol/pagination/BottomToTop-lr-expected.txt: Copied from LayoutTests/platform/ios-simulator/fast/multicol/pagination/TopToBottom-lr-expected.txt.
        * platform/ios-simulator/fast/multicol/pagination/BottomToTop-rl-expected.txt: Copied from LayoutTests/platform/ios-simulator/fast/multicol/pagination/TopToBottom-rl-expected.txt.
        * platform/ios-simulator/fast/multicol/pagination/BottomToTop-tb-expected.txt: Copied from LayoutTests/platform/ios-simulator/fast/multicol/pagination/TopToBottom-bt-expected.txt.
        * platform/ios-simulator/fast/multicol/pagination/LeftToRight-bt-expected.txt:
        * platform/ios-simulator/fast/multicol/pagination/LeftToRight-rl-expected.txt:
        * platform/ios-simulator/fast/multicol/pagination/LeftToRight-tb-expected.txt:
        * platform/ios-simulator/fast/multicol/pagination/RightToLeft-bt-expected.txt: Copied from LayoutTests/platform/ios-simulator/fast/multicol/pagination/LeftToRight-tb-expected.txt.
        * platform/ios-simulator/fast/multicol/pagination/RightToLeft-lr-expected.txt: Copied from LayoutTests/platform/ios-simulator/fast/multicol/pagination/LeftToRight-rl-expected.txt.
        * platform/ios-simulator/fast/multicol/pagination/RightToLeft-rl-dynamic-expected.txt: Copied from LayoutTests/platform/ios-simulator/fast/multicol/pagination/LeftToRight-rl-expected.txt.
        * platform/ios-simulator/fast/multicol/pagination/RightToLeft-rl-expected.txt: Copied from LayoutTests/platform/ios-simulator/fast/multicol/pagination/LeftToRight-rl-expected.txt.
        * platform/ios-simulator/fast/multicol/pagination/RightToLeft-tb-expected.txt: Copied from LayoutTests/platform/ios-simulator/fast/multicol/pagination/LeftToRight-tb-expected.txt.
        * platform/ios-simulator/fast/multicol/pagination/TopToBottom-bt-expected.txt:
        * platform/ios-simulator/fast/multicol/pagination/TopToBottom-lr-expected.txt:
        * platform/ios-simulator/fast/multicol/pagination/TopToBottom-rl-expected.txt:
        * platform/ios-simulator/fast/multicol/positive-leading-expected.txt:
        * platform/ios-simulator/fast/multicol/scrolling-column-rules-expected.txt:
        * platform/ios-simulator/fast/multicol/scrolling-overflow-expected.txt:
        * platform/ios-simulator/fast/multicol/span/anonymous-style-inheritance-expected.txt:
        * platform/ios-simulator/fast/multicol/span/span-as-immediate-child-complex-splitting-expected.txt:
        * platform/ios-simulator/fast/multicol/span/span-as-immediate-child-generated-content-expected.txt:
        * platform/ios-simulator/fast/multicol/span/span-as-immediate-child-property-removal-expected.txt:
        * platform/ios-simulator/fast/multicol/span/span-as-immediate-columns-child-dynamic-expected.txt:
        * platform/ios-simulator/fast/multicol/span/span-as-immediate-columns-child-expected.txt:
        * platform/ios-simulator/fast/multicol/span/span-as-immediate-columns-child-removal-expected.txt:
        * platform/ios-simulator/fast/multicol/span/span-as-nested-columns-child-dynamic-expected.txt:
        * platform/ios-simulator/fast/multicol/span/span-as-nested-columns-child-expected.txt:
        * platform/ios-simulator/fast/multicol/span/span-margin-collapsing-expected.txt:
        * platform/ios-simulator/fast/multicol/table-vertical-align-expected.txt:
        * platform/ios-simulator/fast/multicol/tall-image-behavior-expected.txt:
        * platform/ios-simulator/fast/multicol/vertical-lr/column-break-with-balancing-expected.txt:
        * platform/ios-simulator/fast/multicol/vertical-lr/column-rules-expected.txt:
        * platform/ios-simulator/fast/multicol/vertical-lr/float-multicol-expected.txt:
        * platform/ios-simulator/fast/multicol/vertical-lr/float-paginate-complex-expected.txt:
        * platform/ios-simulator/fast/multicol/vertical-lr/float-paginate-expected.txt:
        * platform/ios-simulator/fast/multicol/vertical-lr/nested-columns-expected.txt:
        * platform/ios-simulator/fast/multicol/vertical-rl/column-break-with-balancing-expected.txt: Copied from LayoutTests/platform/ios-simulator/fast/multicol/vertical-lr/column-break-with-balancing-expected.txt.
        * platform/ios-simulator/fast/multicol/vertical-rl/column-rules-expected.txt: Copied from LayoutTests/platform/ios-simulator/fast/multicol/vertical-lr/column-rules-expected.txt.
        * platform/ios-simulator/fast/multicol/vertical-rl/float-multicol-expected.txt:
        * platform/ios-simulator/fast/multicol/vertical-rl/float-paginate-complex-expected.txt: Copied from LayoutTests/platform/ios-simulator/fast/multicol/vertical-lr/float-paginate-complex-expected.txt.
        * platform/ios-simulator/fast/multicol/vertical-rl/float-paginate-expected.txt:
        * platform/ios-simulator/fast/multicol/vertical-rl/nested-columns-expected.txt:
        * platform/ios-simulator/fast/overflow/float-in-relpositioned-expected.txt:
        * platform/ios-simulator/fast/overflow/overflow-auto-position-absolute-expected.txt:
        * platform/ios-simulator/fast/overflow/overflow-rtl-expected.txt:
        * platform/ios-simulator/fast/overflow/paged-x-div-expected.txt:
        * platform/ios-simulator/fast/overflow/paged-x-div-with-column-gap-expected.txt:
        * platform/ios-simulator/fast/overflow/paged-x-on-root-expected.txt:
        * platform/ios-simulator/fast/overflow/paged-x-with-column-gap-expected.txt:
        * platform/ios-simulator/fast/overflow/paged-y-div-expected.txt:
        * platform/ios-simulator/fast/overflow/scroll-nested-positioned-layer-in-overflow-expected.txt:
        * platform/ios-simulator/fast/regions/repaint/region-painting-via-layout-expected.txt:
        * platform/ios-simulator/fast/table/edge-offsets-expected.txt:
        * platform/ios-simulator/fast/transforms/overflow-with-transform-expected.txt:
        * platform/ios-simulator/svg/custom/image-rescale-clip-expected.txt:

2016-02-08  Chris Dumez  <cdumez@apple.com>

        Attribute getters should not require an explicit 'this' value for Window properties
        https://bugs.webkit.org/show_bug.cgi?id=153968

        Reviewed by Darin Adler.

        Rebaseline existing tests now that more checks are passing.

        * fast/dom/Window/getOwnPropertyDescriptor-other-window-expected.txt:
        * fast/dom/Window/getOwnPropertyDescriptor-other-window.html:
        * js/getOwnPropertyDescriptor-window-attributes-expected.txt:

2016-02-08  Nan Wang  <n_wang@apple.com>

        AX: crash at WebCore::Range::selectNodeContents(WebCore::Node*, int&)
        https://bugs.webkit.org/show_bug.cgi?id=154018

        Reviewed by Chris Fleizach.

        * accessibility/text-marker/text-marker-range-stale-node-crash-expected.txt: Added.
        * accessibility/text-marker/text-marker-range-stale-node-crash.html: Added.

2016-02-08  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Zooming in on the timeline graph does not increase its time resolution from minutes
        https://bugs.webkit.org/show_bug.cgi?id=154013
        <rdar://problem/23844527>

        Reviewed by Brian Burg.

        * inspector/unit-tests/number-utilities-expected.txt: Added.
        * inspector/unit-tests/number-utilities.html: Added.
        Basic tests for our Number utilities methods.

2016-02-08  Daniel Bates  <dabates@apple.com>

        CSP connect-src directive should block redirects
        https://bugs.webkit.org/show_bug.cgi?id=69359
        <rdar://problem/24383025>

        Reviewed by Brent Fulgham.

        Add more tests, update erroneous expected results, and remove some entries from TestExpectations for tests
        that now pass.

        * TestExpectations: Remove entries for tests that now pass. The failure of test http/tests/security/contentSecurityPolicy/worker-importscripts-blocked.html
        was erroneously attributed to <https://bugs.webkit.org/show_bug.cgi?id=153562>.
        * http/tests/security/contentSecurityPolicy/resources/determine-content-security-policy-header.php: Added.
        * http/tests/security/contentSecurityPolicy/resources/script-set-value.js: Use global variable self instead of window so as to
        make this script work both from a Document and a Web Worker. In a document, self refers to the Window object and in a worker
        it refers to the WorkerGlobalScope object.
        * http/tests/security/contentSecurityPolicy/resources/worker-importScript-redirect-cross-origin-allowed.php: Added.
        * http/tests/security/contentSecurityPolicy/resources/worker-importScript-redirect-cross-origin-blocked.php: Added.
        * http/tests/security/contentSecurityPolicy/resources/worker-xhr-allowed.php: Added.
        * http/tests/security/contentSecurityPolicy/resources/worker-xhr-redirect-cross-origin-allowed.php: Added.
        * http/tests/security/contentSecurityPolicy/resources/worker-xhr-redirect-cross-origin-blocked.php: Added.
        * http/tests/security/contentSecurityPolicy/worker-blob-inherits-csp-expected.txt: Remove Blink-specific messages so that the test passes.
        * http/tests/security/contentSecurityPolicy/worker-blob-inherits-csp-importScripts-block-aborts-all-subsequent-imports-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/worker-blob-inherits-csp-importScripts-block-aborts-all-subsequent-imports.html: Added.
        * http/tests/security/contentSecurityPolicy/worker-blob-inherits-csp-importScripts-redirect-cross-origin-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/worker-blob-inherits-csp-importScripts-redirect-cross-origin-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/worker-csp-blocks-xhr-redirect-cross-origin-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/worker-csp-blocks-xhr-redirect-cross-origin.html: Added.
        * http/tests/security/contentSecurityPolicy/worker-csp-importScripts-redirect-cross-origin-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/worker-csp-importScripts-redirect-cross-origin-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/worker-csp-importScripts-redirect-cross-origin-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/worker-csp-importScripts-redirect-cross-origin-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/worker-importscripts-blocked-expected.txt: Substitute Blink-specific error text with the analogous WebKit error text.
        * http/tests/security/contentSecurityPolicy/worker-importscripts-blocked.html: Ditto.
        * http/tests/security/contentSecurityPolicy/worker-without-csp-importScripts-redirect-cross-origin-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/worker-without-csp-importScripts-redirect-cross-origin-allowed.html: Added.
        * http/tests/security/isolatedWorld/bypass-main-world-csp-for-xhr-redirect-expected.txt: Added.
        * http/tests/security/isolatedWorld/bypass-main-world-csp-for-xhr-redirect.html: Added.
        * http/tests/security/isolatedWorld/bypass-main-world-csp-worker-blob-importScript-redirect-cross-origin-expected.txt: Added.
        * http/tests/security/isolatedWorld/bypass-main-world-csp-worker-blob-importScript-redirect-cross-origin.html: Added.
        * http/tests/security/isolatedWorld/bypass-main-world-csp-worker-blob-importScripts-redirect-cross-origin-expected.txt: Added.
        * http/tests/security/isolatedWorld/bypass-main-world-csp-worker-importScript-redirect-cross-origin-expected.txt: Added.
        * http/tests/security/isolatedWorld/bypass-main-world-csp-worker-importScripts-redirect-cross-origin-expected.txt: Added.
        * http/tests/security/isolatedWorld/bypass-main-world-csp-worker-importScripts-redirect-cross-origin.html: Added.
        * http/tests/security/isolatedWorld/bypass-worker-csp-for-xhr-expected.txt: Added.
        * http/tests/security/isolatedWorld/bypass-worker-csp-for-xhr-redirect-cross-origin-expected.txt: Added.
        * http/tests/security/isolatedWorld/bypass-worker-csp-for-xhr-redirect-cross-origin.html: Added.
        * http/tests/security/isolatedWorld/bypass-worker-csp-for-xhr.html: Added.

2016-02-08  Yusuke Suzuki  <utatane.tea@gmail.com>

        {Map,Set}.prototype.forEach should be visible as own properties
        https://bugs.webkit.org/show_bug.cgi?id=153974

        Reviewed by Darin Adler.

        * js/Object-getOwnPropertyNames-expected.txt:
        * js/script-tests/Object-getOwnPropertyNames.js:

2016-02-08  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: copy({x:1}) should copy "{x:1}", not "[object Object]"
        https://bugs.webkit.org/show_bug.cgi?id=148605

        Reviewed by Brian Burg.

        * inspector/console/command-line-api-copy-expected.txt: Added.
        * inspector/console/command-line-api-copy.html: Added.
        * http/tests/inspector/console/cross-domain-inspected-node-access-expected.txt:

2016-02-08  Ryan Haddad  <ryanhaddad@apple.com>

        Mark fast/text/crash-complex-text-surrogate.html as flaky on mac-wk2
        https://bugs.webkit.org/show_bug.cgi?id=154005

        Unreviewed test gardening.

        * platform/mac-wk2/TestExpectations:

2016-02-08  Said Abou-Hallawa  <sabouhallawa@apple.com>

        REGRESSION(r181345): SVG polyline and polygon leak page
        https://bugs.webkit.org/show_bug.cgi?id=152759

        Reviewed by Darin Adler.

        * TestExpectations: Remove flaky tests from test expectation.
        
        * svg/animations/smil-leak-list-property-instances-expected.txt: Added.
        * svg/animations/smil-leak-list-property-instances.svg: Added.
        Ensure if SVGPolylineElement.points is requested from JS, the document will
        not leak.

2016-02-08  Brady Eidson  <beidson@apple.com>

        IndexedDB: No test covers cursor.delete() setting the source of the request to the cursor.
        https://bugs.webkit.org/show_bug.cgi?id=153992

        Reviewed by Jer Noble.

        * storage/indexeddb/cursor-delete-expected.txt:
        * storage/indexeddb/cursor-delete-private-expected.txt:
        * storage/indexeddb/resources/cursor-delete.js:

2016-02-08  Skachkov Oleksandr  <gskachkov@gmail.com>

        [ES6] Arrow function syntax. Using 'super' in arrow function that declared out of the class should lead to Syntax error
        https://bugs.webkit.org/show_bug.cgi?id=150893

        Reviewed by Saam Barati.
       
        Adding tests for using of the 'super' inside of the arrow function
 
        * js/arrowfunction-superproperty-expected.txt:
        * js/arrowfunction-syntax-errors-expected.txt:
        * js/script-tests/arrowfunction-superproperty.js:
        * js/script-tests/arrowfunction-syntax-errors.js:

2016-02-08  Adrien Plazas  <aplazas@igalia.com>

        Timeouts in tests because of non implemented UIScriptController::singleTapAtPoint()
        https://bugs.webkit.org/show_bug.cgi?id=153833

        Unreviewed.

        * platform/gtk/TestExpectations:

2016-02-07  Zalan Bujtas  <zalan@apple.com>

        Outline does not clip when ancestor has overflow: hidden and requires layer.
        https://bugs.webkit.org/show_bug.cgi?id=153901

        Now that outline is part of visual overflow, we no longer need the special outline cliprect.
        PaintPhaseChildOutlines drawing will switch to foreground cliprect. It ensures proper overflow clipping
        at parent level. PaintPhaseSelfOutline drawing will start using the visual overflow inflated background cliprect.
        With this change, outline will be using the same cliprects as the other visual overflow properties (box-shadow etc). 

        Reviewed by David Hyatt.

        * compositing/geometry/limit-layer-bounds-overflow-repaint-expected.txt:
        * compositing/masks/mask-of-clipped-layer-expected.txt:
        * css2.1/20110323/abspos-non-replaced-width-margin-000-expected.txt:
        * css2.1/20110323/abspos-replaced-width-margin-000-expected.txt:
        * css3/blending/blend-mode-isolation-turn-off-self-painting-layer2-expected.txt:
        * css3/blending/blend-mode-isolation-turn-on-self-painting-layer-expected.txt:
        * fast/block/positioning/negative-rel-position-expected.txt:
        * fast/dynamic/staticY-expected.txt:
        * fast/inline/absolute-positioned-block-in-centred-block-expected.txt:
        * fast/multicol/flipped-blocks-border-after-expected.txt:
        * fast/multicol/pagination-h-horizontal-bt-expected.txt:
        * fast/multicol/pagination-h-horizontal-tb-expected.txt:
        * fast/multicol/pagination-h-vertical-rl-expected.txt:
        * fast/multicol/pagination-v-horizontal-bt-expected.txt:
        * fast/multicol/pagination-v-vertical-lr-expected.txt:
        * fast/multicol/pagination-v-vertical-rl-expected.txt:
        * fast/multicol/pagination/LeftToRight-tb-hittest-expected.txt:
        * fast/multicol/pagination/RightToLeft-rl-hittest-expected.txt:
        * fast/multicol/progression-reverse-expected.txt:
        * fast/multicol/vertical-rl/rules-with-border-before-expected.txt:
        * fast/overflow/overflow-update-transform-expected.txt:
        * fast/overflow/position-relative-expected.txt:
        * fast/repaint/focus-ring-expected.txt:
        * fast/repaint/focus-ring-repaint.html:
        * fast/repaint/outline-with-overflow-hidden-ancestor-expected.html: Added.
        * fast/repaint/outline-with-overflow-hidden-ancestor.html: Added.
        * fast/table/overflow-table-collapsed-borders-cell-painting-expected.txt:
        * fast/table/overflow-table-collapsed-borders-cell-painting-table-self-painting-layer-expected.txt:
        * fast/table/overflow-table-collapsed-borders-section-layer-painting-expected.txt:
        * fast/table/overflow-table-collapsed-borders-section-layer-table-self-painting-layer-expected.txt:
        * fast/table/overflow-table-collapsed-borders-section-self-painting-layer-painting-expected.txt:
        * fast/table/overflow-table-collapsed-borders-section-self-painting-layer-table-self-painting-layer-expected.txt:
        * platform/mac/compositing/geometry/clipping-foreground-expected.txt:
        * platform/mac/compositing/geometry/root-layer-update-expected.txt:
        * platform/mac/compositing/overflow/ancestor-overflow-expected.txt:
        * platform/mac/compositing/overflow/nested-scrolling-expected.txt:
        * platform/mac/compositing/overflow/overflow-scroll-expected.txt:
        * platform/mac/compositing/overflow/parent-overflow-expected.txt:
        * platform/mac/compositing/overflow/scrollbar-painting-expected.txt:
        * platform/mac/compositing/reflections/nested-reflection-on-overflow-expected.txt:
        * platform/mac/compositing/sibling-positioning-expected.txt:
        * platform/mac/css3/blending/blend-mode-overflow-expected.txt:
        * platform/mac/css3/unicode-bidi-isolate-basic-expected.txt:
        * platform/mac/fast/block/float/overhanging-tall-block-expected.txt:
        * platform/mac/fast/block/positioning/auto/vertical-rl/007-expected.txt:
        * platform/mac/fast/block/positioning/vertical-rl/fixed-positioning-expected.txt:
        * platform/mac/fast/borders/border-antialiasing-expected.txt:
        * platform/mac/fast/clip/001-expected.txt:
        * platform/mac/fast/clip/013-expected.txt:
        * platform/mac/fast/clip/014-expected.txt:
        * platform/mac/fast/clip/016-expected.txt:
        * platform/mac/fast/clip/outline-overflowClip-expected.txt:
        * platform/mac/fast/css/clip-zooming-expected.txt:
        * platform/mac/fast/forms/validation-message-appearance-expected.txt:
        * platform/mac/fast/inline/left-right-center-inline-alignment-in-ltr-and-rtl-blocks-expected.txt:
        * platform/mac/fast/line-grid/line-grid-inside-columns-expected.txt:
        * platform/mac/fast/line-grid/line-grid-into-columns-expected.txt:
        * platform/mac/fast/lists/scrolled-marker-paint-expected.txt:
        * platform/mac/fast/multicol/client-rects-expected.txt:
        * platform/mac/fast/multicol/column-break-with-balancing-expected.txt:
        * platform/mac/fast/multicol/column-rules-expected.txt:
        * platform/mac/fast/multicol/column-rules-stacking-expected.txt:
        * platform/mac/fast/multicol/columns-shorthand-parsing-expected.txt:
        * platform/mac/fast/multicol/float-paginate-complex-expected.txt:
        * platform/mac/fast/multicol/float-paginate-empty-lines-expected.txt:
        * platform/mac/fast/multicol/float-paginate-expected.txt:
        * platform/mac/fast/multicol/layers-in-multicol-expected.txt:
        * platform/mac/fast/multicol/layers-split-across-columns-expected.txt:
        * platform/mac/fast/multicol/max-height-columns-block-expected.txt:
        * platform/mac/fast/multicol/nested-columns-expected.txt:
        * platform/mac/fast/multicol/newmulticol/client-rects-expected.txt:
        * platform/mac/fast/multicol/overflow-across-columns-expected.txt:
        * platform/mac/fast/multicol/overflow-across-columns-percent-height-expected.txt:
        * platform/mac/fast/multicol/overflow-unsplittable-expected.txt:
        * platform/mac/fast/multicol/paginate-block-replaced-expected.txt:
        * platform/mac/fast/multicol/pagination/BottomToTop-bt-expected.txt:
        * platform/mac/fast/multicol/pagination/BottomToTop-lr-expected.txt:
        * platform/mac/fast/multicol/pagination/BottomToTop-rl-expected.txt:
        * platform/mac/fast/multicol/pagination/BottomToTop-tb-expected.txt:
        * platform/mac/fast/multicol/pagination/LeftToRight-bt-expected.txt:
        * platform/mac/fast/multicol/pagination/LeftToRight-rl-expected.txt:
        * platform/mac/fast/multicol/pagination/LeftToRight-tb-expected.txt:
        * platform/mac/fast/multicol/pagination/RightToLeft-bt-expected.txt:
        * platform/mac/fast/multicol/pagination/RightToLeft-lr-expected.txt:
        * platform/mac/fast/multicol/pagination/RightToLeft-rl-dynamic-expected.txt:
        * platform/mac/fast/multicol/pagination/RightToLeft-rl-expected.txt:
        * platform/mac/fast/multicol/pagination/RightToLeft-tb-expected.txt:
        * platform/mac/fast/multicol/pagination/TopToBottom-bt-expected.txt:
        * platform/mac/fast/multicol/pagination/TopToBottom-lr-expected.txt:
        * platform/mac/fast/multicol/pagination/TopToBottom-rl-expected.txt:
        * platform/mac/fast/multicol/positive-leading-expected.txt:
        * platform/mac/fast/multicol/scrolling-column-rules-expected.txt:
        * platform/mac/fast/multicol/scrolling-overflow-expected.txt:
        * platform/mac/fast/multicol/span/anonymous-style-inheritance-expected.txt:
        * platform/mac/fast/multicol/span/span-as-immediate-child-complex-splitting-expected.txt:
        * platform/mac/fast/multicol/span/span-as-immediate-child-generated-content-expected.txt:
        * platform/mac/fast/multicol/span/span-as-immediate-child-property-removal-expected.txt:
        * platform/mac/fast/multicol/span/span-as-immediate-columns-child-dynamic-expected.txt:
        * platform/mac/fast/multicol/span/span-as-immediate-columns-child-expected.txt:
        * platform/mac/fast/multicol/span/span-as-immediate-columns-child-removal-expected.txt:
        * platform/mac/fast/multicol/span/span-as-nested-columns-child-dynamic-expected.txt:
        * platform/mac/fast/multicol/span/span-as-nested-columns-child-expected.txt:
        * platform/mac/fast/multicol/span/span-margin-collapsing-expected.txt:
        * platform/mac/fast/multicol/table-vertical-align-expected.txt:
        * platform/mac/fast/multicol/tall-image-behavior-expected.txt:
        * platform/mac/fast/multicol/vertical-lr/column-break-with-balancing-expected.txt:
        * platform/mac/fast/multicol/vertical-lr/column-rules-expected.txt:
        * platform/mac/fast/multicol/vertical-lr/float-multicol-expected.txt:
        * platform/mac/fast/multicol/vertical-lr/float-paginate-complex-expected.txt:
        * platform/mac/fast/multicol/vertical-lr/float-paginate-expected.txt:
        * platform/mac/fast/multicol/vertical-lr/nested-columns-expected.txt:
        * platform/mac/fast/multicol/vertical-rl/column-break-with-balancing-expected.txt:
        * platform/mac/fast/multicol/vertical-rl/column-rules-expected.txt:
        * platform/mac/fast/multicol/vertical-rl/float-multicol-expected.txt:
        * platform/mac/fast/multicol/vertical-rl/float-paginate-complex-expected.txt:
        * platform/mac/fast/multicol/vertical-rl/float-paginate-expected.txt:
        * platform/mac/fast/multicol/vertical-rl/nested-columns-expected.txt:
        * platform/mac/fast/overflow/clip-rects-fixed-ancestor-expected.txt:
        * platform/mac/fast/overflow/float-in-relpositioned-expected.txt:
        * platform/mac/fast/overflow/overflow-auto-position-absolute-expected.txt:
        * platform/mac/fast/overflow/overflow-rtl-expected.txt:
        * platform/mac/fast/overflow/paged-x-div-expected.txt:
        * platform/mac/fast/overflow/paged-x-div-with-column-gap-expected.txt:
        * platform/mac/fast/overflow/paged-x-on-root-expected.txt:
        * platform/mac/fast/overflow/paged-x-with-column-gap-expected.txt:
        * platform/mac/fast/overflow/paged-y-div-expected.txt:
        * platform/mac/fast/overflow/scroll-nested-positioned-layer-in-overflow-expected.txt:
        * platform/mac/fast/regions/repaint/region-painting-via-layout-expected.txt:
        * platform/mac/fast/repaint/box-shadow-h-expected.txt:
        * platform/mac/fast/repaint/box-shadow-v-expected.txt:
        * platform/mac/fast/repaint/layer-outline-expected.txt:
        * platform/mac/fast/repaint/layer-outline-horizontal-expected.txt:
        * platform/mac/fast/table/edge-offsets-expected.txt:
        * platform/mac/fast/transforms/overflow-with-transform-expected.txt:
        * platform/mac/fast/transforms/rotated-transform-affects-scrolling-1-expected.txt:
        * platform/mac/fast/transforms/rotated-transform-affects-scrolling-2-expected.txt:
        * platform/mac/fast/writing-mode/Kusa-Makura-background-canvas-expected.txt:
        * platform/mac/printing/single-line-must-not-be-split-into-two-pages-expected.txt:
        * platform/mac/scrollbars/scrollbars-on-positioned-content-expected.txt:
        * platform/mac/svg/custom/getscreenctm-in-scrollable-div-area-nested-expected.txt:
        * platform/mac/svg/custom/image-rescale-clip-expected.txt:
        * svg/overflow/overflow-on-foreignObject-expected.txt:

2016-02-07  Saam barati  <sbarati@apple.com>

        [ES6] bound functions .name property should be "bound " + the target function's name
        https://bugs.webkit.org/show_bug.cgi?id=153796

        Reviewed by Darin Adler.

        * js/bound-function-name-expected.txt: Added.
        * js/bound-function-name.html: Added.
        * js/script-tests/bound-function-name.js: Added.
        (assert):
        (assert.foo):
        (bar):

2016-02-07  Daniel Bates  <dabates@apple.com>

        CSP: Allow Web Workers initiated from an isolated world to bypass the main world Content Security Policy
        https://bugs.webkit.org/show_bug.cgi?id=153622
        <rdar://problem/24400023>

        Reviewed by Gavin Barraclough and Andy Estes.

        Add tests to ensure that a Web Worker initiated from an isolated world can bypass the main world
        Content Security Policy.

        * http/tests/security/isolatedWorld/bypass-main-world-csp-worker-blob-eval-expected.txt: Added.
        * http/tests/security/isolatedWorld/bypass-main-world-csp-worker-blob-eval.html: Added.
        * http/tests/security/isolatedWorld/bypass-main-world-csp-worker-blob-xhr-expected.txt: Added.
        * http/tests/security/isolatedWorld/bypass-main-world-csp-worker-blob-xhr.html: Added.
        * http/tests/security/isolatedWorld/bypass-main-world-csp-worker-expected.txt: Added.
        * http/tests/security/isolatedWorld/bypass-main-world-csp-worker.html: Added.

2016-02-07  Carlos Garcia Campos  <cgarcia@igalia.com>

        REGRESSION(r195661): [GTK] Scrollbar tests crashing after overlay scrollbar groundwork
        https://bugs.webkit.org/show_bug.cgi?id=153695

        Reviewed by Michael Catanzaro.

        * platform/gtk/TestExpectations:

2016-02-06  Chris Dumez  <cdumez@apple.com>

        Unreviewed, update several layout tests for WK1 after r196227.

        * http/tests/security/cross-frame-access-enumeration-expected.txt:
        * http/tests/security/cross-frame-access-enumeration.html:
        * http/tests/security/cross-frame-access-get-expected.txt:
        * http/tests/security/cross-frame-access-get.html:
        * http/tests/security/cross-frame-access-history-get-expected.txt:
        * http/tests/security/cross-frame-access-history-get-override-expected.txt:
        * http/tests/security/cross-frame-access-history-get-override.html:
        * http/tests/security/cross-frame-access-history-get.html:

2016-02-06  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] Rebaseline some tests and update expectations after r196222

        Unreviewed test gardening.

        * platform/gtk/TestExpectations:
        * platform/gtk/fast/clip/outline-overflowClip-expected.txt:
        * platform/gtk/fast/repaint/layer-outline-expected.txt:
        * platform/gtk/fast/repaint/layer-outline-horizontal-expected.txt:

2016-02-06  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] imported/blink/compositing/squashing/abspos-under-abspos-overflow-scroll.html is flaky

        Unreviewed test gardening.

        * platform/gtk/TestExpectations:

2016-02-06  Chris Dumez  <cdumez@apple.com>

        Prevent cross-origin access to window.history
        https://bugs.webkit.org/show_bug.cgi?id=153931

        Reviewed by Darin Adler.

        Update / rebaseline several layout tests now that cross-origin access to
        window.history is prevented.

        * fast/frames/sandboxed-iframe-history-denied-expected.txt:
        * http/tests/history/cross-origin-replace-history-object-child-expected.txt:
        * http/tests/security/cross-frame-access-call-expected.txt:
        * http/tests/security/cross-frame-access-call.html:
        * http/tests/security/cross-frame-access-delete-expected.txt:
        * http/tests/security/cross-frame-access-delete.html:
        * http/tests/security/cross-frame-access-history-prototype-expected.txt:
        * http/tests/security/cross-frame-access-history-put.html: Removed.
        * http/tests/security/cross-frame-access-object-getPrototypeOf-expected.txt:
        * http/tests/security/cross-frame-access-object-getPrototypeOf.html:
        * http/tests/security/cross-frame-access-object-setPrototypeOf-expected.txt:
        * http/tests/security/cross-frame-access-object-setPrototypeOf.html:
        * http/tests/security/resources/cross-frame-iframe-for-history-put-test.html: Removed.

2016-02-06  Zalan Bujtas  <zalan@apple.com>

        Outline should contribute to visual overflow.
        https://bugs.webkit.org/show_bug.cgi?id=153299

        This patch eliminates the special outline handling (RenderView::setMaximalOutlineSize).
        Now that outline is part of visual overflow, we don't have to inflate the layers to accomodate
        outline borders.
        This patch fixes several focusring related repaint issues. However when both the outline: auto
        and the descendant renderer are composited, we still don't paint properly in certain cases. -not a regression.
        (Also when parent renderer has overflow: hidden repaint does not take outline into account. -regression.)
        It changes column behavior (see TestExpectations) since outline behaves now like any other visual overflow properties.

        Reviewed by David Hyatt.

        * fast/repaint/focus-ring-repaint-expected.txt: Added.
        * fast/repaint/focus-ring-repaint.html: Added.
        * fast/repaint/focus-ring-repaint-expected-with-negative-offset.txt: Added.
        * fast/repaint/focus-ring-repaint-with-negative-offset.html: Added.
        * TestExpectations:
        * platform/mac/TestExpectations:
        * platform/mac/compositing/geometry/ancestor-overflow-change-expected.txt:
        * platform/mac/compositing/geometry/composited-in-columns-expected.txt:
        * platform/mac/compositing/layer-creation/overlap-animation-container-expected.txt:
        * platform/mac/compositing/layer-creation/stacking-context-overlap-nested-expected.txt:
        * platform/mac/compositing/visibility/visibility-image-layers-dynamic-expected.txt:
        * platform/mac/fast/clip/outline-overflowClip-expected.txt:
        * platform/mac/fast/inline/continuation-outlines-with-layers-expected.txt:
        * platform/mac/fast/repaint/4776765-expected.txt: Added.
        * platform/mac/fast/repaint/focus-ring-expected.txt: Added.
        * platform/mac/fast/repaint/layer-outline-expected.txt:
        * platform/mac/fast/repaint/layer-outline-horizontal-expected.txt:
        * platform/mac/svg/custom/focus-ring-expected.txt:

2016-02-06  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] Various tests are flaky

        More unreviewed test gardening.

        * platform/gtk/TestExpectations:

2016-02-06  Chris Dumez  <cdumez@apple.com>

        Object.getOwnPropertyDescriptor() does not work on sub-frame's window
        https://bugs.webkit.org/show_bug.cgi?id=153925

        Reviewed by Darin Adler.

        * fast/dom/Window/getOwnPropertyDescriptor-other-window-expected.txt: Added.
        * fast/dom/Window/getOwnPropertyDescriptor-other-window.html: Added.
        Add test case to test calling Object.getOwnPropertyDescriptor() on a
        sub-frame's window.

        * http/tests/security/cross-origin-window-property-access-expected.txt:
        * http/tests/security/cross-origin-window-property-access.html:
        - Update test use use an iframe instead of opening a Window for convenience.
        - Use an actual cross-origin URL. The previous URL was same-origin and therefore
          the test would have failed if window.location was a proper getter/setter
          instead of a 'value' descriptor.
        - Add more tests to cover other Window properties (such as 'name') which are
          actual getter / setters to make sure using the current window's getter on
          a cross origin window does not bypass the security origin checks.

        * http/tests/security/cross-frame-access-getOwnPropertyDescriptor-expected.txt:
        * http/tests/security/cross-frame-access-getOwnPropertyDescriptor.html:
        - Drop checks for properties for which cross-origin access via
        getOwnPropertyDescriptor() now works. They used to not work because of the bug
        this patch fixes, and not due to security checks.
        - Most of these properties are part of the properties that the specification
        states can be accessed cross-origin:
          https://html.spec.whatwg.org/multipage/browsers.html#security-window
        - ALL of these properties could already be accessed cross origin via regular
        property getters (e.g. crossOriginWindow.blur) in Safari 9 so there should not
        be any reason for getOwnPropertyDescriptor() not to work.
        - I have also verified that Firefox allows cross-origin access for all these
          properties (via regular getters or getOwnPropertyDescriptor), except for
          the 'history' property. We may want to align our behavior here and prevent
          cross-origin access to 'window.history' but this is not a regression in this
          patch. You could already access crossOriginWindow.history in Safari 9.

2016-02-06  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] Various tests are flaky

        Unreviewed test gardening.

        * platform/gtk/TestExpectations:

2016-02-06  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] Gardening for unexpected passes

        Unreviewed test gardening.

        * platform/gtk/TestExpectations:

2016-02-05  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] Unreviewed test expectations gardening.

        * platform/gtk/TestExpectations:

2016-02-05  Ryan Haddad  <ryanhaddad@apple.com>

        Mark css3/filters/multiple-filters-invalidation.html  as flaky on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=153933

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-02-05  Ryan Haddad  <ryanhaddad@apple.com>

        Marking pageoverlay/overlay-small-frame-paints.html as flaky on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=153898

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-02-05  Ryan Haddad  <ryanhaddad@apple.com>

        Marking css3-text-decoration/text-underline-position/underline-visual-overflow-with-subpixel-position.html as failing on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=153315

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-02-05  Chris Dumez  <cdumez@apple.com>

        Instance property getters / setters cannot be called on another instance of the same type
        https://bugs.webkit.org/show_bug.cgi?id=153895

        Reviewed by Gavin Barraclough.

        * js/dom/script-tests/shadow-navigator-geolocation-in-strict-mode-does-not-throw.js:
        * js/dom/shadow-navigator-geolocation-in-strict-mode-does-not-throw-expected.txt:
        Extend this layout test coverage to cover the getter case in addition to the
        setter case. This test covers the compatibility mode where we don't throw.
        I made sure to maintain this behavior when refactoring the bindings to avoid
        breakage.

        * js/instance-property-getter-other-instance-expected.txt:
        Rebaseline now that this test passes.

        * js/instance-property-setter-other-instance-expected.txt: Added.
        * js/instance-property-setter-other-instance.html: Added.
        Add test to cover the setter case.


2016-02-05  Ryan Haddad  <ryanhaddad@apple.com>

        Mark http/tests/security/cross-frame-access-custom.html as flaky on ios-simulator-wk2
        https://bugs.webkit.org/show_bug.cgi?id=153050

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/TestExpectations:

2016-02-05  Ryan Haddad  <ryanhaddad@apple.com>

        Skipping js/basic-set.html on Mac since it is already runs as a part of run-jsc-stress-tests
        https://bugs.webkit.org/show_bug.cgi?id=153879

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-02-05  Ryan Haddad  <ryanhaddad@apple.com>

        Marking imported/w3c/web-platform-tests/html/semantics/document-metadata/styling/LinkStyle.html as flaky on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=153929

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-02-05  Saam barati  <sbarati@apple.com>

        Web Inspector: Include SamplingProfiler's expression-level data for stack frames in the protocol
        https://bugs.webkit.org/show_bug.cgi?id=153455
        <rdar://problem/24335884>

        Reviewed by Joseph Pecoraro.

        * inspector/sampling-profiler/expression-location-info-expected.txt: Added.
        * inspector/sampling-profiler/expression-location-info.html: Added.

2016-02-05  Nan Wang  <n_wang@apple.com>

        AX: WebKit hanging when VoiceOver attempts to focus in on page
        https://bugs.webkit.org/show_bug.cgi?id=153899
        <rdar://problem/24506603>

        Reviewed by Chris Fleizach.

        * accessibility/text-marker/character-offset-visible-position-conversion-hang-expected.txt: Added.
        * accessibility/text-marker/character-offset-visible-position-conversion-hang.html: Added.

2016-02-04  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: InspectorTimelineAgent doesn't need to recompile functions because it now uses the sampling profiler
        https://bugs.webkit.org/show_bug.cgi?id=153500
        <rdar://problem/24352458>

        Reviewed by Timothy Hatcher.

        * fast/profiler/*.html
        Be more explicit about enabling legacy profiling.

        * inspector/sampling-profiler/eval-source-url.html
        Remove an inner loop that was causing tail call optimizations
        to eliminate the sourceURL we were expecting.

2016-02-04  Hunseop Jeong  <hs85.jeong@samsung.com>

        Unreviewed. EFL gardening. Mark some video tests to failure.

        * platform/efl/TestExpectations:

2016-02-04  Ryan Haddad  <ryanhaddad@apple.com>

        Remove ios-simulator-wk2 specific expectation for imported/w3c/web-platform-tests/html/dom/interfaces.html
        https://bugs.webkit.org/show_bug.cgi?id=153844

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt: Removed.

2016-02-04  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline imported/w3c/web-platform-tests/html/dom/interfaces.html for ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=153844

        Reviewed by Chris Dumez.

        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt:

2016-02-04  Eric Carlson  <eric.carlson@apple.com>

        media/video-size.html is flaky
        https://bugs.webkit.org/show_bug.cgi?id=124932
        <rdar://problem/23336430>

        Reviewed by Jer Noble.

        * media/video-size.html: Add logic to retry each stage silently twice before logging
          failure because we can't predict how long it will take to load the poster frame.

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

        Object.getOwnPropertyDescriptor() returns incomplete descriptor for instance properties
        https://bugs.webkit.org/show_bug.cgi?id=153817

        Reviewed by Geoffrey Garen.

        Add layout test coverage for calling Object.getOwnPropertyDescriptor()
        on instance properties (e.g. Unforgeable properties and Window properties).

        * http/tests/security/cross-origin-window-property-access-expected.txt:
        * http/tests/security/cross-origin-window-property-access.html:
        - Fix bug causing the onload function to not find the crossOriginWindow variable.
        - Update the case for accessing crossOriginWindow.location property as this is
          actually expected to work as per the specification:
          https://html.spec.whatwg.org/multipage/browsers.html#security-window

        * js/dom/dom-as-prototype-assignment-exception-expected.txt:
        * js/dom/getOwnPropertyDescriptor-expected.txt:
        * js/dom/script-tests/dom-as-prototype-assignment-exception.js:
        * js/getOwnPropertyDescriptor-unforgeable-attributes-expected.txt: Added.
        * js/getOwnPropertyDescriptor-unforgeable-attributes.html: Added.
        * js/getOwnPropertyDescriptor-window-attributes-expected.txt: Added.
        * js/getOwnPropertyDescriptor-window-attributes.html: Added.
        * js/instance-property-getter-other-instance-expected.txt: Added.
        * js/instance-property-getter-other-instance.html: Added.
        * js/resources/getOwnPropertyDescriptor.js:

2016-02-04  Ryan Haddad  <ryanhaddad@apple.com>

        Marking imported/w3c/web-platform-tests/html/semantics/document-metadata/styling/LinkStyle.html as flaky on Mac
        https://bugs.webkit.org/show_bug.cgi?id=153871

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-02-04  Ryan Haddad  <ryanhaddad@apple.com>

        Marking webgl/1.0.3/conformance/extensions/oes-texture-half-float-linear.html as flaky on mac
        https://bugs.webkit.org/show_bug.cgi?id=153883

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-02-04  Brady Eidson  <beidson@apple.com>

        Modern IDB: LayoutTest imported/w3c/indexeddb/keyorder-private.html is flaky.
        https://bugs.webkit.org/show_bug.cgi?id=153438.

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations: Re-enable the flaky test.
        * resources/js-test.js:
        * storage/indexeddb/modern/idbkey-array-equality-expected.txt: Added.
        * storage/indexeddb/modern/idbkey-array-equality-private-expected.txt: Added.
        * storage/indexeddb/modern/idbkey-array-equality-private.html: Added.
        * storage/indexeddb/modern/idbkey-array-equality.html: Added.
        * storage/indexeddb/modern/resources/idbkey-array-equality.js: Added.

2016-02-04  Ryan Haddad  <ryanhaddad@apple.com>

        Skip two flaky indexeddb tests on Yosemite Release WK2

        Unreviewed test gardening.

        * platform/mac-wk2/TestExpectations:

2016-02-04  Eric Carlson  <eric.carlson@apple.com>

        Don't discard in-band cues with negative start times
        https://bugs.webkit.org/show_bug.cgi?id=153867
        <rdar://problem/19588632>

        Reviewed by Jer Noble.

        * http/tests/media/track-in-band-hls-metadata-expected.txt:
        * http/tests/media/track-in-band-hls-metadata.html: Test more attributes for correctness,
          fail test immediately if cue.value is undefined so the test doesn't generate an exception
          and exit without any results.
        * platform/mac/TestExpectations: Unskip test.

2016-02-04  Hyemi Shin  <hyemi.sin@samsung.com>

        Specify an exception for createChannelMerger, createChannelSplitter and createPeriodicWave
        https://bugs.webkit.org/show_bug.cgi?id=150925

        Reviewed by Darin Adler.

        createChannelMerger and createChannelSplitter should throw INDEX_SIZE_ERR
        for invalid numberOfInputs value.
        createPeriodicWave should throw INDEX_SIZE_ERR for invalid lengths of parameters.

        * webaudio/audiochannelmerger-basic-expected.txt: numberOfInputs could be 32.
        * webaudio/audiochannelmerger-basic.html: Ditto.
        * webaudio/audiochannelsplitter-expected.txt: Ditto.
        * webaudio/audiochannelsplitter.html: Ditto.
        * webaudio/periodicwave-lengths-expected.txt: Added.
        * webaudio/periodicwave-lengths.html: Added.

2016-02-04  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/select-ask-for-reset.html for ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=153850

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:
        * platform/ios-simulator/imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/select-ask-for-reset-expected.txt: Added.

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

        Merge DOMTokenList and DOMSettableTokenList
        https://bugs.webkit.org/show_bug.cgi?id=153677
        <rdar://problem/24419675>

        Reviewed by Sam Weinig.

        Update / rebaseline several tests now that relList attributes
        use [PutForward=value].

        * fast/dom/HTMLElement/class-list-expected.txt:
        * fast/dom/HTMLElement/class-list-quirks-expected.txt:
        * fast/dom/HTMLElement/script-tests/class-list.js:
        * fast/dom/rel-list-expected.txt:
        * fast/dom/rel-list.html:

2016-02-04  Hunseop Jeong  <hs85.jeong@samsung.com>

        Unreviewed. EFL gardening after r195740.

        * platform/efl/accessibility/table-attributes-expected.txt:
        * platform/efl/accessibility/table-cell-spans-expected.txt:
        * platform/efl/accessibility/table-cells-expected.txt:
        * platform/efl/accessibility/table-sections-expected.txt:
        * platform/efl/accessibility/table-with-rules-expected.txt:
        * platform/efl/css2.1/20110323/table-height-algorithm-023-expected.txt:
        * platform/efl/css2.1/20110323/table-height-algorithm-024-expected.txt:
        * platform/efl/css3/selectors3/xml/css3-modsel-43b-expected.txt:
        * platform/efl/editing/deleting/5099303-expected.txt:
        * platform/efl/editing/deleting/5144139-2-expected.txt:
        * platform/efl/editing/deleting/5483370-expected.txt:
        * platform/efl/editing/deleting/delete-to-select-table-expected.txt:
        * platform/efl/editing/deleting/table-cells-expected.txt:
        * platform/efl/fast/text/atsui-multiple-renderers-expected.txt:

2016-02-03  Carlos Garcia Campos  <cgarcia@igalia.com>

        Do not show context menu when right clicking on a scrollbar
        https://bugs.webkit.org/show_bug.cgi?id=153493

        Reviewed by Michael Catanzaro.

        Add a test to check that context menu event is not sent when right
        clicking on a scrollbar.

        * fast/events/contextmenu-on-scrollbars-expected.txt: Added.
        * fast/events/contextmenu-on-scrollbars.html: Added.

2016-02-03  Beth Dakin  <bdakin@apple.com>

        Accepted candidates should not be autocorrected
        https://bugs.webkit.org/show_bug.cgi?id=153813
        -and corresponding-
        rdar://problem/24066924

        Reviewed by Darin Adler.

        * editing/mac/spelling/accept-misspelled-candidate-expected.txt: Added.
        * editing/mac/spelling/accept-misspelled-candidate.html: Added.

2016-02-03  Ryan Haddad  <ryanhaddad@apple.com>

        Marking http/tests/history/back-to-post.php as flaky on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=153314

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-02-03  Ryan Haddad  <ryanhaddad@apple.com>

        Skip imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/select-ask-for-reset.html on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=153850

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-02-03  Ryan Haddad  <ryanhaddad@apple.com>

        Marking displaylists tests as flaky on ios-simulator. Previous attempt was unsuccessful.
        https://bugs.webkit.org/show_bug.cgi?id=153656

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-02-03  Ryan Haddad  <ryanhaddad@apple.com>

        Marking transitions/clip-path-transitions.html and transitions/clip-path-path-transitions.html as flaky on Mac
        https://bugs.webkit.org/show_bug.cgi?id=153809

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-02-03  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: JS PrettyPrinting unary - and + issues
        https://bugs.webkit.org/show_bug.cgi?id=134007
        <rdar://problem/17351953>

        Reviewed by Timothy Hatcher.

        * inspector/codemirror/prettyprinting-javascript-expected.txt:
        * inspector/codemirror/prettyprinting-javascript.html:
        * inspector/codemirror/resources/prettyprinting/javascript-tests/unary-binary-operators-expected.js: Added.
        * inspector/codemirror/resources/prettyprinting/javascript-tests/unary-binary-operators.js: Added.
        New tests for unary and some binary operators in JavaScript pretty printing.

2016-02-03  Brent Fulgham  <bfulgham@apple.com>

        REGRESSION: LayoutTest http/tests/plugins/visible_plugins.html failing on Yosemite WK1
        https://bugs.webkit.org/show_bug.cgi?id=153752

        Reviewed by Alexey Proskuryakov.

        Revise test to skip the plugins we expect to be displayed, and only display plugins
        that are surprising.

        * http/tests/plugins/visible_plugins.html:
        * http/tests/plugins/visible_plugins-expected.txt:
        * platform/mac-wk2/http/tests/plugins/visible_plugins-expected.txt: Removed.

2016-02-03  Ryan Haddad  <ryanhaddad@apple.com>

        Skip http/tests/contentdispositionattachmentsandbox/form-submission-disabled.html on ios-simulator until it can be rewritten.
        https://bugs.webkit.org/show_bug.cgi?id=152993

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-02-03  Dave Hyatt  <hyatt@apple.com>

        Implement hanging-punctuation property parsing.
        https://bugs.webkit.org/show_bug.cgi?id=18109.

        Reviewed by Zalan Bujtas.

        * fast/css/parsing-hanging-punctuation-expected.txt: Added.
        * fast/css/parsing-hanging-punctuation.html: Added.
        * fast/css/resources/parsing-hanging-punctuation.js: Added.
        (test):

2016-02-03  Ryan Haddad  <ryanhaddad@apple.com>

        Skip fast/forms/input-user-input-sanitization.html on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=152306

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-02-03  Hunseop Jeong  <hs85.jeong@samsung.com>

        Unreviewed. EFL gardening: rebaseline tests after r195740.

        * platform/efl/css1/box_properties/border_width_inline-expected.txt:
        * platform/efl/css1/formatting_model/floating_elements-expected.txt:
        * platform/efl/css2.1/t080301-c411-vt-mrgn-00-b-expected.txt:
        * platform/efl/css2.1/t0805-c5511-brdr-tw-00-b-expected.txt:
        * platform/efl/css2.1/t0805-c5513-brdr-bw-00-b-expected.txt:
        * platform/efl/css2.1/t0805-c5518-brdr-t-01-e-expected.txt:
        * platform/efl/css2.1/t0805-c5519-brdr-r-01-e-expected.txt:
        * platform/efl/css2.1/t0805-c5520-brdr-b-01-e-expected.txt:
        * platform/efl/css2.1/t0805-c5521-brdr-l-01-e-expected.txt:
        * platform/efl/css2.1/t0805-c5522-brdr-02-e-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-00-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-01-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-02-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-03-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-05-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-07-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-09-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-10-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-11-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-12-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-15-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-19-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-20-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-21-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-22-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-23-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-26-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-27-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-28-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-29-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-32-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-33-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-35-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-36-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-37-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-38-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-39-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-40-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-41-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-42-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-43-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-45-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-46-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-47-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-48-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-49-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-50-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-51-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-53-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-55-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-56-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-57-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-58-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-60-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-61-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-62-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-63-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-66-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-67-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-68-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-69-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-72-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-73-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-75-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-76-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-77-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-78-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-79-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-80-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-81-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-82-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-83-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-86-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-87-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-88-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-89-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-90-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-91-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-92-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-93-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-95-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-96-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-97-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-98-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-99-d-expected.txt:
        * platform/efl/css3/css3-modsel-33-expected.txt:
        * platform/efl/css3/flexbox/flexbox-baseline-expected.txt:
        * platform/efl/css3/selectors3/html/css3-modsel-161-expected.txt:
        * platform/efl/css3/selectors3/html/css3-modsel-18b-expected.txt:
        * platform/efl/css3/selectors3/html/css3-modsel-28-expected.txt:
        * platform/efl/css3/selectors3/html/css3-modsel-28b-expected.txt:
        * platform/efl/css3/selectors3/html/css3-modsel-32-expected.txt:
        * platform/efl/css3/selectors3/html/css3-modsel-43-expected.txt:
        * platform/efl/css3/selectors3/html/css3-modsel-43b-expected.txt:
        * platform/efl/css3/selectors3/html/css3-modsel-44-expected.txt:
        * platform/efl/css3/selectors3/html/css3-modsel-44b-expected.txt:
        * platform/efl/css3/selectors3/html/css3-modsel-74-expected.txt:
        * platform/efl/css3/selectors3/html/css3-modsel-74b-expected.txt:
        * platform/efl/css3/selectors3/html/css3-modsel-78-expected.txt:
        * platform/efl/css3/selectors3/html/css3-modsel-78b-expected.txt:
        * platform/efl/css3/selectors3/xhtml/css3-modsel-161-expected.txt:
        * platform/efl/css3/selectors3/xhtml/css3-modsel-18b-expected.txt:
        * platform/efl/css3/selectors3/xhtml/css3-modsel-28-expected.txt:
        * platform/efl/css3/selectors3/xhtml/css3-modsel-28b-expected.txt:
        * platform/efl/css3/selectors3/xhtml/css3-modsel-32-expected.txt:
        * platform/efl/css3/selectors3/xhtml/css3-modsel-43-expected.txt:
        * platform/efl/css3/selectors3/xhtml/css3-modsel-43b-expected.txt:
        * platform/efl/css3/selectors3/xhtml/css3-modsel-44-expected.txt:
        * platform/efl/css3/selectors3/xhtml/css3-modsel-44b-expected.txt:
        * platform/efl/css3/selectors3/xhtml/css3-modsel-74-expected.txt:
        * platform/efl/css3/selectors3/xhtml/css3-modsel-74b-expected.txt:
        * platform/efl/css3/selectors3/xhtml/css3-modsel-78-expected.txt:
        * platform/efl/css3/selectors3/xhtml/css3-modsel-78b-expected.txt:
        * platform/efl/css3/selectors3/xml/css3-modsel-161-expected.txt:
        * platform/efl/css3/selectors3/xml/css3-modsel-18b-expected.txt:
        * platform/efl/css3/selectors3/xml/css3-modsel-28-expected.txt:
        * platform/efl/css3/selectors3/xml/css3-modsel-28b-expected.txt:
        * platform/efl/css3/selectors3/xml/css3-modsel-32-expected.txt:
        * platform/efl/css3/selectors3/xml/css3-modsel-43-expected.txt:
        * platform/efl/css3/selectors3/xml/css3-modsel-44-expected.txt:
        * platform/efl/css3/selectors3/xml/css3-modsel-44b-expected.txt:
        * platform/efl/css3/selectors3/xml/css3-modsel-74-expected.txt:
        * platform/efl/css3/selectors3/xml/css3-modsel-74b-expected.txt:
        * platform/efl/css3/selectors3/xml/css3-modsel-78-expected.txt:
        * platform/efl/css3/selectors3/xml/css3-modsel-78b-expected.txt:
        * platform/efl/editing/inserting/5058163-1-expected.txt:
        * platform/efl/editing/inserting/insert-paragraph-01-expected.txt:
        * platform/efl/editing/inserting/insert-paragraph-02-expected.txt:
        * platform/efl/editing/inserting/paragraph-separator-in-table-2-expected.txt:
        * platform/efl/editing/selection/4818145-expected.txt:
        * platform/efl/editing/selection/4889598-expected.txt:
        * platform/efl/editing/selection/4895428-2-expected.txt:
        * platform/efl/editing/selection/5076323-1-expected.txt:
        * platform/efl/editing/selection/5076323-2-expected.txt:
        * platform/efl/editing/selection/5076323-3-expected.txt:
        * platform/efl/editing/selection/7152-1-expected.txt:
        * platform/efl/editing/selection/7152-2-expected.txt:
        * platform/efl/editing/selection/display-table-text-expected.txt:
        * platform/efl/editing/selection/iframe-expected.txt:
        * platform/efl/editing/selection/inline-table-expected.txt:
        * platform/efl/editing/selection/mixed-editability-3-expected.txt:
        * platform/efl/editing/selection/mixed-editability-4-expected.txt:
        * platform/efl/editing/selection/mixed-editability-5-expected.txt:
        * platform/efl/editing/selection/mixed-editability-8-expected.txt:
        * platform/efl/editing/selection/mixed-editability-9-expected.txt:
        * platform/efl/editing/selection/table-caret-1-expected.txt:
        * platform/efl/editing/selection/table-caret-2-expected.txt:
        * platform/efl/editing/selection/table-caret-3-expected.txt:
        * platform/efl/editing/style/5017613-1-expected.txt:
        * platform/efl/editing/style/5017613-2-expected.txt:
        * platform/efl/editing/style/apple-style-editable-mix-expected.txt:
        * platform/efl/editing/style/table-selection-expected.txt:
        * platform/efl/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.txt:
        * platform/efl/fast/block/float/011-expected.txt:
        * platform/efl/fast/block/margin-collapse/001-expected.txt:
        * platform/efl/fast/block/margin-collapse/005-expected.txt:
        * platform/efl/fast/block/margin-collapse/104-expected.txt:
        * platform/efl/fast/block/margin-collapse/block-inside-inline/001-expected.txt:
        * platform/efl/fast/block/margin-collapse/block-inside-inline/005-expected.txt:
        * platform/efl/fast/block/positioning/053-expected.txt:
        * platform/efl/fast/borders/bidi-009a-expected.txt:
        * platform/efl/fast/box-shadow/basic-shadows-expected.txt:
        * platform/efl/fast/css-generated-content/015-expected.txt:
        * platform/efl/fast/css-generated-content/inline-display-types-expected.txt:
        * platform/efl/fast/css-generated-content/table-before-after-child-add-expected.txt:
        * platform/efl/fast/css-generated-content/table-cell-before-content-expected.txt:
        * platform/efl/fast/css-generated-content/table-row-before-after-child-add-expected.txt:
        * platform/efl/fast/css-generated-content/table-row-before-after-expected.txt:
        * platform/efl/fast/css-generated-content/table-table-before-after-child-add-expected.txt:
        * platform/efl/fast/css/first-letter-float-expected.txt:
        * platform/efl/fast/dynamic/007-expected.txt:
        * platform/efl/fast/dynamic/014-expected.txt:
        * platform/efl/fast/dynamic/015-expected.txt:
        * platform/efl/fast/dynamic/create-renderer-for-whitespace-only-text-expected.txt:
        * platform/efl/fast/forms/button-white-space-expected.txt:
        * platform/efl/fast/forms/file/file-input-direction-expected.txt:
        * platform/efl/fast/forms/form-added-to-table-expected.txt:
        * platform/efl/fast/forms/input-double-click-selection-gap-bug-expected.txt:
        * platform/efl/fast/forms/input-value-expected.txt:
        * platform/efl/fast/invalid/table-inside-stray-table-content-expected.txt:
        * platform/efl/fast/invalid/td-inside-object-expected.txt:
        * platform/efl/fast/lists/ordered-list-with-no-ol-tag-expected.txt:
        * platform/efl/fast/overflow/overflow-auto-table-expected.txt:
        * platform/efl/fast/replaced/width100percent-button-expected.txt:
        * platform/efl/fast/ruby/ruby-inline-table-expected.txt:
        * platform/efl/fast/selectors/018-expected.txt:
        * platform/efl/fast/selectors/018b-expected.txt:
        * platform/efl/fast/selectors/032-expected.txt:
        * platform/efl/fast/selectors/043-expected.txt:
        * platform/efl/fast/selectors/043b-expected.txt:
        * platform/efl/fast/selectors/044-expected.txt:
        * platform/efl/fast/selectors/044b-expected.txt:
        * platform/efl/fast/selectors/078b-expected.txt:
        * platform/efl/fast/table/001-expected.txt:
        * platform/efl/fast/table/004-expected.txt:
        * platform/efl/fast/table/006-expected.txt:
        * platform/efl/fast/table/010-expected.txt:
        * platform/efl/fast/table/011-expected.txt:
        * platform/efl/fast/table/015-expected.txt:
        * platform/efl/fast/table/016-expected.txt:
        * platform/efl/fast/table/022-expected.txt:
        * platform/efl/fast/table/026-expected.txt:
        * platform/efl/fast/table/033-expected.txt:
        * platform/efl/fast/table/035-expected.txt:
        * platform/efl/fast/table/035-vertical-expected.txt:
        * platform/efl/fast/table/037-expected.txt:
        * platform/efl/fast/table/041-expected.txt:
        * platform/efl/fast/table/auto-with-percent-height-expected.txt:
        * platform/efl/fast/table/auto-with-percent-height-vertical-expected.txt:
        * platform/efl/fast/table/border-collapsing/002-vertical-expected.txt:
        * platform/efl/fast/table/cell-coalescing-expected.txt:
        * platform/efl/fast/table/cellindex-expected.txt:
        * platform/efl/fast/table/colgroup-preceded-by-caption-expected.txt:
        * platform/efl/fast/table/colgroup-spanning-groups-rules-expected.txt:
        * platform/efl/fast/table/dynamic-descendant-percentage-height-expected.txt:
        * platform/efl/fast/table/floating-th-expected.txt:
        * platform/efl/fast/table/generated-caption-expected.txt:
        * platform/efl/fast/table/insert-before-anonymous-ancestors-expected.txt:
        * platform/efl/fast/table/insert-cell-before-form-expected.txt:
        * platform/efl/fast/table/insert-row-before-form-expected.txt:
        * platform/efl/fast/table/multiple-captions-display-expected.txt:
        * platform/efl/fast/table/nested-percent-height-table-expected.txt:
        * platform/efl/fast/table/quote-text-around-iframe-expected.txt:
        * platform/efl/fast/table/rowindex-expected.txt:
        * platform/efl/fast/table/rtl-cell-display-none-assert-expected.txt:
        * platform/efl/fast/table/rules-attr-dynchange1-expected.txt:
        * platform/efl/fast/table/rules-attr-dynchange2-expected.txt:
        * platform/efl/fast/table/table-after-child-in-table-expected.txt:
        * platform/efl/fast/table/table-and-parts-outline-expected.txt:
        * platform/efl/fast/table/table-before-child-in-table-expected.txt:
        * platform/efl/fast/table/table-cell-after-child-in-block-expected.txt:
        * platform/efl/fast/table/table-cell-after-child-in-table-expected.txt:
        * platform/efl/fast/table/table-cell-before-child-in-block-expected.txt:
        * platform/efl/fast/table/table-continuation-outline-paint-crash-expected.txt:
        * platform/efl/fast/table/table-hspace-align-center-expected.txt:
        * platform/efl/fast/table/table-row-after-child-in-block-expected.txt:
        * platform/efl/fast/table/table-row-after-child-in-table-expected.txt:
        * platform/efl/fast/table/table-row-before-child-in-block-expected.txt:
        * platform/efl/fast/table/table-row-before-child-in-table-expected.txt:
        * platform/efl/fast/table/tableInsideCaption-expected.txt:
        * platform/efl/fast/table/text-field-baseline-expected.txt:
        * platform/efl/fast/table/unbreakable-images-quirk-expected.txt:
        * platform/efl/fast/table/vertical-align-baseline-expected.txt:
        * platform/efl/fast/text/basic/001-expected.txt:
        * platform/efl/fast/text/basic/006-expected.txt:
        * platform/efl/fast/text/basic/007-expected.txt:
        * platform/efl/fast/text/capitalize-boundaries-expected.txt:
        * platform/efl/fast/text/hyphenate-locale-expected.txt:
        * platform/efl/fast/text/international/bidi-layout-across-linebreak-expected.txt:
        * platform/efl/fast/text/whitespace/024-expected.txt:
        * platform/efl/fast/text/whitespace/027-expected.txt:
        * platform/efl/fast/text/word-break-expected.txt:
        * platform/efl/fast/transforms/transform-table-row-expected.txt:

2016-02-03  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Layout Test http/tests/appcache/different-https-origin-resource-main.html is failing
        https://bugs.webkit.org/show_bug.cgi?id=145253

        Reviewed by Michael Catanzaro.

        Update test expectation.

        * platform/gtk/TestExpectations:

2016-02-03  Carlos Garcia Campos  <cgarcia@igalia.com>

        REGRESSION(r191948): [GStreamer] 4 new timeouts on layout tests.
        https://bugs.webkit.org/show_bug.cgi?id=152797

        Reviewed by Darin Adler.

        Update test expectations.

        * platform/gtk/TestExpectations:

2016-02-02  Fujii Hironori  <Hironori.Fujii@jp.sony.com>

        ASSERTION FAILED: roundedIntPoint(rendererMappedResult) == roundedIntPoint(result)
        https://bugs.webkit.org/show_bug.cgi?id=153576

        Reviewed by Darin Adler.

        * fast/block/geometry-map-assertion-with-rounding-negative-half-expected.txt: Added.
        * fast/block/geometry-map-assertion-with-rounding-negative-half.html: Added.

2016-02-02  Darin Adler  <darin@apple.com>

        Follow up for:
        Cut down on calls to String::lower; mostly replace with convertToASCIILowercase
        https://bugs.webkit.org/show_bug.cgi?id=153732

        * fast/viewport/viewport-warnings-7-expected.txt: Updated expected results now that
        viewport parsing doesn't lowercase the string to parse it.

2016-02-02  Hunseop Jeong  <hs85.jeong@samsung.com>

        Unreviewed. EFL gardening: rebaseline tests after r195740.

        * platform/efl/fast/replaced/005-expected.txt:
        * platform/efl/fast/replaced/percent-height-in-anonymous-block-in-table-expected.txt:
        * platform/efl/fast/replaced/selection-rect-in-table-cell-expected.txt:
        * platform/efl/fast/replaced/table-percent-height-positioned-expected.txt:
        * platform/efl/fast/replaced/width100percent-checkbox-expected.txt:
        * platform/efl/fast/replaced/width100percent-image-expected.txt:
        * platform/efl/fast/replaced/width100percent-menulist-expected.txt:
        * platform/efl/fast/replaced/width100percent-radio-expected.txt:
        * platform/efl/fast/replaced/width100percent-searchfield-expected.txt:
        * platform/efl/fast/replaced/width100percent-textarea-expected.txt:
        * platform/efl/fast/replaced/width100percent-textfield-expected.txt:
        * platform/efl/fast/selectors/077-expected.txt:
        * platform/efl/fast/selectors/077b-expected.txt:
        * platform/efl/fast/table/002-expected.txt:
        * platform/efl/fast/table/003-expected.txt:
        * platform/efl/fast/table/005-expected.txt:
        * platform/efl/fast/table/007-expected.txt:
        * platform/efl/fast/table/008-expected.txt:
        * platform/efl/fast/table/009-expected.txt:
        * platform/efl/fast/table/012-expected.txt:
        * platform/efl/fast/table/013-expected.txt:
        * platform/efl/fast/table/021-expected.txt:
        * platform/efl/fast/table/023-expected.txt:
        * platform/efl/fast/table/024-expected.txt:
        * platform/efl/fast/table/025-expected.txt:
        * platform/efl/fast/table/028-expected.txt:
        * platform/efl/fast/table/028-vertical-expected.txt:
        * platform/efl/fast/table/029-expected.txt:
        * platform/efl/fast/table/031-expected.txt:
        * platform/efl/fast/table/032-expected.txt:
        * platform/efl/fast/table/034-expected.txt:
        * platform/efl/fast/table/038-expected.txt:
        * platform/efl/fast/table/038-vertical-expected.txt:
        * platform/efl/fast/table/039-expected.txt:
        * platform/efl/fast/table/040-expected.txt:
        * platform/efl/fast/table/040-vertical-expected.txt:
        * platform/efl/fast/table/100-percent-cell-width-expected.txt:
        * platform/efl/fast/table/add-before-anonymous-child-expected.txt:
        * platform/efl/fast/table/border-collapsing/001-expected.txt:
        * platform/efl/fast/table/border-collapsing/001-vertical-expected.txt:
        * platform/efl/fast/table/border-collapsing/002-expected.txt:
        * platform/efl/fast/table/border-collapsing/003-expected.txt:
        * platform/efl/fast/table/border-collapsing/003-vertical-expected.txt:
        * platform/efl/fast/table/border-collapsing/004-expected.txt:
        * platform/efl/fast/table/border-collapsing/004-vertical-expected.txt:
        * platform/efl/fast/table/border-collapsing/border-collapsing-head-foot-expected.txt:
        * platform/efl/fast/table/border-collapsing/border-collapsing-head-foot-vertical-expected.txt:
        * platform/efl/fast/table/border-collapsing/bug14274-expected.txt:
        * platform/efl/fast/table/border-collapsing/cached-69296-expected.txt:
        * platform/efl/fast/table/border-collapsing/cached-cell-append-expected.txt:
        * platform/efl/fast/table/border-collapsing/cached-cell-remove-expected.txt:
        * platform/efl/fast/table/border-collapsing/cached-change-cell-border-color-expected.txt:
        * platform/efl/fast/table/border-collapsing/cached-change-cell-border-width-expected.txt:
        * platform/efl/fast/table/border-collapsing/cached-change-cell-sl-border-color-expected.txt:
        * platform/efl/fast/table/border-collapsing/cached-change-col-border-color-expected.txt:
        * platform/efl/fast/table/border-collapsing/cached-change-col-border-width-expected.txt:
        * platform/efl/fast/table/border-collapsing/cached-change-colgroup-border-color-expected.txt:
        * platform/efl/fast/table/border-collapsing/cached-change-colgroup-border-width-expected.txt:
        * platform/efl/fast/table/border-collapsing/cached-change-row-border-color-expected.txt:
        * platform/efl/fast/table/border-collapsing/cached-change-row-border-width-expected.txt:
        * platform/efl/fast/table/border-collapsing/cached-change-table-border-color-expected.txt:
        * platform/efl/fast/table/border-collapsing/cached-change-table-border-width-expected.txt:
        * platform/efl/fast/table/border-collapsing/cached-change-tbody-border-color-expected.txt:
        * platform/efl/fast/table/border-collapsing/collapsed-borders-adjoining-sections-vertical-rl-expected.txt:
        * platform/efl/fast/table/border-collapsing/collapsed-borders-painted-once-on-inner-cells-expected.txt:
        * platform/efl/fast/table/border-collapsing/equal-precedence-resolution-expected.txt:
        * platform/efl/fast/table/border-collapsing/equal-precedence-resolution-vertical-expected.txt:
        * platform/efl/fast/table/border-collapsing/rtl-border-collapsing-expected.txt:
        * platform/efl/fast/table/border-collapsing/rtl-border-collapsing-vertical-expected.txt:
        * platform/efl/fast/table/caption-relayout-expected.txt:
        * platform/efl/fast/table/cell-absolute-child-expected.txt:
        * platform/efl/fast/table/cell-width-auto-expected.txt:
        * platform/efl/fast/table/colspan-with-all-percent-cells-expected.txt:
        * platform/efl/fast/table/colspanMinWidth-expected.txt:
        * platform/efl/fast/table/colspanMinWidth-vertical-expected.txt:
        * platform/efl/fast/table/dynamic-cellpadding-expected.txt:
        * platform/efl/fast/table/edge-offsets-expected.txt:
        * platform/efl/fast/table/empty-cells-expected.txt:
        * platform/efl/fast/table/frame-and-rules-expected.txt:
        * platform/efl/fast/table/giantRowspan-expected.txt:
        * platform/efl/fast/table/growCellForImageQuirk-expected.txt:
        * platform/efl/fast/table/growCellForImageQuirk-vertical-expected.txt:
        * platform/efl/fast/table/height-percent-test-expected.txt:
        * platform/efl/fast/table/height-percent-test-vertical-expected.txt:
        * platform/efl/fast/table/invisible-cell-background-expected.txt:
        * platform/efl/fast/table/large-width-expected.txt:
        * platform/efl/fast/table/max-width-integer-overflow-expected.txt:
        * platform/efl/fast/table/mozilla-bug10296-vertical-align-1-expected.txt:
        * platform/efl/fast/table/mozilla-bug10296-vertical-align-2-expected.txt:
        * platform/efl/fast/table/nobr-expected.txt:
        * platform/efl/fast/table/overflowHidden-expected.txt:
        * platform/efl/fast/table/percent-heights-expected.txt:
        * platform/efl/fast/table/percent-widths-stretch-expected.txt:
        * platform/efl/fast/table/percent-widths-stretch-vertical-expected.txt:
        * platform/efl/fast/table/prepend-in-anonymous-table-expected.txt:
        * platform/efl/fast/table/relative-position-containment-expected.txt:
        * platform/efl/fast/table/relative-position-offsets-expected.txt:
        * platform/efl/fast/table/relative-position-stacking-expected.txt:
        * platform/efl/fast/table/replaced-percent-height-expected.txt:
        * platform/efl/fast/table/row-height-recalc-expected.txt:
        * platform/efl/fast/table/rowspan-paint-order-expected.txt:
        * platform/efl/fast/table/rowspan-paint-order-vertical-expected.txt:
        * platform/efl/fast/table/simple_paint-expected.txt:
        * platform/efl/fast/table/spanOverlapRepaint-expected.txt:
        * platform/efl/fast/table/stale-grid-crash-expected.txt:
        * platform/efl/fast/table/table-anonymous-cell-bug-expected.txt:
        * platform/efl/fast/table/table-anonymous-row-bug-expected.txt:
        * platform/efl/fast/table/table-anonymous-section-bug-expected.txt:
        * platform/efl/fast/table/table-before-child-style-update-expected.txt:
        * platform/efl/fast/table/table-cell-before-after-content-around-table-block-expected.txt:
        * platform/efl/fast/table/table-cell-before-after-content-around-table-expected.txt:
        * platform/efl/fast/table/table-cell-before-after-content-around-table-row-expected.txt:
        * platform/efl/fast/table/table-cell-before-child-in-table-expected.txt:
        * platform/efl/fast/table/table-cell-split-expected.txt:
        * platform/efl/fast/table/table-display-types-expected.txt:
        * platform/efl/fast/table/table-display-types-strict-expected.txt:
        * platform/efl/fast/table/table-display-types-vertical-expected.txt:
        * platform/efl/fast/table/table-insert-before-non-anonymous-block-expected.txt:
        * platform/efl/fast/table/table-row-before-after-content-around-block-expected.txt:
        * platform/efl/fast/table/table-row-before-after-content-around-table-cell-expected.txt:
        * platform/efl/fast/table/table-row-before-after-content-around-table-expected.txt:
        * platform/efl/fast/table/table-row-before-child-style-update-expected.txt:
        * platform/efl/fast/table/table-row-outline-paint-expected.txt:
        * platform/efl/fast/table/table-row-split2-expected.txt:
        * platform/efl/fast/table/table-row-style-not-updated-expected.txt:
        * platform/efl/fast/table/table-row-style-not-updated-with-after-content-expected.txt:
        * platform/efl/fast/table/table-row-style-not-updated-with-before-content-expected.txt:
        * platform/efl/fast/table/table-section-split2-expected.txt:
        * platform/efl/fast/table/table-split-expected.txt:
        * platform/efl/fast/table/table-split2-expected.txt:
        * platform/efl/fast/table/table-style-not-updated-expected.txt:
        * platform/efl/fast/table/wide-colspan-expected.txt:
        * platform/efl/fast/table/wide-column-expected.txt:
        * platform/efl/fast/text/atsui-negative-spacing-features-expected.txt:
        * platform/efl/fast/text/atsui-spacing-features-expected.txt:
        * platform/efl/fast/text/basic/generic-family-reset-expected.txt:
        * platform/efl/fast/text/international/003-expected.txt:
        * platform/efl/fast/text/international/bidi-LDB-2-CSS-expected.txt:
        * platform/efl/fast/text/international/bidi-LDB-2-HTML-expected.txt:
        * platform/efl/fast/text/international/bidi-LDB-2-formatting-characters-expected.txt:
        * platform/efl/fast/text/international/bidi-override-expected.txt:
        * platform/efl/fast/text/wbr-expected.txt:
        * platform/efl/fast/text/whitespace/002-expected.txt:
        * platform/efl/fast/text/whitespace/003-expected.txt:
        * platform/efl/fast/text/whitespace/004-expected.txt:
        * platform/efl/fast/text/whitespace/005-expected.txt:
        * platform/efl/fast/text/whitespace/010-expected.txt:
        * platform/efl/fast/text/whitespace/011-expected.txt:
        * platform/efl/fast/text/whitespace/013-expected.txt:
        * platform/efl/fast/text/whitespace/014-expected.txt:
        * platform/efl/fast/text/whitespace/015-expected.txt:
        * platform/efl/fast/text/whitespace/016-expected.txt:
        * platform/efl/fast/text/whitespace/025-expected.txt:
        * platform/efl/fast/text/whitespace/026-expected.txt:
        * platform/efl/fast/writing-mode/table-percent-width-quirk-expected.txt:
        * platform/efl/fast/writing-mode/vertical-align-table-baseline-expected.txt:
        * platform/efl/http/tests/misc/acid2-expected.txt:
        * platform/efl/ietestcenter/css3/bordersbackgrounds/background_properties_greater_than_images-expected.txt:
        * platform/efl/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-006-expected.txt:
        * platform/efl/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-007-expected.txt:
        * platform/efl/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-008-expected.txt:
        * platform/efl/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-009-expected.txt:
        * platform/efl/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-011-expected.txt:
        * platform/efl/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-012-expected.txt:
        * platform/efl/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-013-expected.txt:
        * platform/efl/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-014-expected.txt:
        * platform/efl/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-015-expected.txt:
        * platform/efl/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-016-expected.txt:
        * platform/efl/ietestcenter/css3/bordersbackgrounds/border-radius-different-width-001-expected.txt:
        * platform/efl/ietestcenter/css3/bordersbackgrounds/border-radius-shorthand-001-expected.txt:
        * platform/efl/ietestcenter/css3/bordersbackgrounds/border-radius-sum-of-radii-001-expected.txt:
        * platform/efl/ietestcenter/css3/bordersbackgrounds/border-radius-sum-of-radii-002-expected.txt:
        * platform/efl/ietestcenter/css3/bordersbackgrounds/border-top-left-radius-values-004-expected.txt:
        * platform/efl/ietestcenter/css3/bordersbackgrounds/border-top-right-radius-values-004-expected.txt:
        * platform/efl/ietestcenter/css3/bordersbackgrounds/none-as-image-layer-expected.txt:
        * platform/efl/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.txt:
        * platform/efl/svg/zoom/page/zoom-svg-through-object-with-absolute-size-expected.txt:
        * platform/efl/tables/layering/paint-test-layering-1-expected.txt:
        * platform/efl/tables/layering/paint-test-layering-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug10009-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug10036-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug101201-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug101674-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug10296-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug1055-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug10565-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug10633-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug1067-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug1067-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug106795-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug106816-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug113235-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug113424-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug1163-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug1188-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug12008-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug120107-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug120364-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug1224-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug12268-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug12709-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug1271-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug12908-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug12908-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug1296-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug1302-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug13169-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug1318-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug137388-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug137388-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug137388-3-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug139524-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug139524-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug139524-3-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug139524-4-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug1430-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug14323-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug14929-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug15247-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug154780-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug15544-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug159108-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug15933-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug16012-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug16252-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug17138-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug175455-4-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug17548-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug17587-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug1800-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug1802-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug1802s-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug1809-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug18440-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug18664-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug18955-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug19061-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug19061-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug19356-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug20804-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug2123-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug215629-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug219693-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug219693-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug22019-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug220536-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug222336-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug22246-3-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug22246-3a-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug22513-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug2296-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug23235-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug24200-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug2479-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug2479-3-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug25004-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug25074-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug25663-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug26553-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug2684-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug269566-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug277062-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug2773-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug27993-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug2886-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug28933-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug29058-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug29314-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug29429-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug2954-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug2981-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug2981-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug2997-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug30273-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug30559-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug3103-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug32205-3-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug3260-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug33137-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug33855-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug3454-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug38916-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug3977-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug4093-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug42187-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug4385-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug4427-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug44505-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug4501-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug4527-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug45350-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug45486-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug4576-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug46268-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug46268-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug46368-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug46623-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug46623-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug47432-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug4803-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug4849-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug4849-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug51727-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug5188-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug52505-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug52506-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug53690-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug53690-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug53891-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug5538-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug55789-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug56201-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug57828-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug5797-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug5835-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug60804-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug60807-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug6184-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug6304-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug6404-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug647-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug6674-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug68998-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug69382-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug69382-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug72359-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug7342-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug7714-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug78162-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug82946-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug86708-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug8950-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug9123-1-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug9123-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug92143-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug92647-2-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug963-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug96334-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug97383-expected.txt:
        * platform/efl/tables/mozilla/bugs/bug9879-1-expected.txt:
        * platform/efl/tables/mozilla/collapsing_borders/bug41262-3-expected.txt:
        * platform/efl/tables/mozilla/core/bloomberg-expected.txt:
        * platform/efl/tables/mozilla/core/borders-expected.txt:
        * platform/efl/tables/mozilla/core/cell_heights-expected.txt:
        * platform/efl/tables/mozilla/core/col_span-expected.txt:
        * platform/efl/tables/mozilla/core/col_widths_auto_autoFix-expected.txt:
        * platform/efl/tables/mozilla/core/col_widths_auto_autoFixPer-expected.txt:
        * platform/efl/tables/mozilla/core/col_widths_auto_fix-expected.txt:
        * platform/efl/tables/mozilla/core/col_widths_auto_fixPer-expected.txt:
        * platform/efl/tables/mozilla/core/col_widths_auto_per-expected.txt:
        * platform/efl/tables/mozilla/core/col_widths_fix_autoFix-expected.txt:
        * platform/efl/tables/mozilla/core/col_widths_fix_fix-expected.txt:
        * platform/efl/tables/mozilla/core/col_widths_fix_fixPer-expected.txt:
        * platform/efl/tables/mozilla/core/col_widths_fix_per-expected.txt:
        * platform/efl/tables/mozilla/core/margins-expected.txt:
        * platform/efl/tables/mozilla/core/misc-expected.txt:
        * platform/efl/tables/mozilla/core/nested1-expected.txt:
        * platform/efl/tables/mozilla/core/one_row-expected.txt:
        * platform/efl/tables/mozilla/core/table_frame-expected.txt:
        * platform/efl/tables/mozilla/core/table_heights-expected.txt:
        * platform/efl/tables/mozilla/core/table_rules-expected.txt:
        * platform/efl/tables/mozilla/core/table_widths-expected.txt:
        * platform/efl/tables/mozilla/dom/insertColGroups1-expected.txt:
        * platform/efl/tables/mozilla/dom/insertColGroups2-expected.txt:
        * platform/efl/tables/mozilla/dom/insertCols1-expected.txt:
        * platform/efl/tables/mozilla/dom/insertCols2-expected.txt:
        * platform/efl/tables/mozilla/dom/insertCols3-expected.txt:
        * platform/efl/tables/mozilla/dom/insertCols4-expected.txt:
        * platform/efl/tables/mozilla/dom/insertCols5-expected.txt:
        * platform/efl/tables/mozilla/marvin/backgr_layers-opacity-expected.txt:
        * platform/efl/tables/mozilla/marvin/backgr_position-table-expected.txt:
        * platform/efl/tables/mozilla/marvin/backgr_simple-table-cell-expected.txt:
        * platform/efl/tables/mozilla/marvin/backgr_simple-table-column-expected.txt:
        * platform/efl/tables/mozilla/marvin/backgr_simple-table-column-group-expected.txt:
        * platform/efl/tables/mozilla/marvin/backgr_simple-table-expected.txt:
        * platform/efl/tables/mozilla/marvin/backgr_simple-table-row-expected.txt:
        * platform/efl/tables/mozilla/marvin/backgr_simple-table-row-group-expected.png:
        * platform/efl/tables/mozilla/marvin/backgr_simple-table-row-group-expected.txt:
        * platform/efl/tables/mozilla/marvin/colgroup_align_center-expected.txt:
        * platform/efl/tables/mozilla/marvin/colgroup_align_justify-expected.txt:
        * platform/efl/tables/mozilla/marvin/colgroup_align_left-expected.txt:
        * platform/efl/tables/mozilla/marvin/colgroup_align_right-expected.txt:
        * platform/efl/tables/mozilla/marvin/colgroup_span-expected.txt:
        * platform/efl/tables/mozilla/marvin/colgroup_valign_baseline-expected.txt:
        * platform/efl/tables/mozilla/marvin/colgroup_valign_bottom-expected.txt:
        * platform/efl/tables/mozilla/marvin/colgroup_valign_middle-expected.txt:
        * platform/efl/tables/mozilla/marvin/colgroup_valign_top-expected.txt:
        * platform/efl/tables/mozilla/marvin/colgroup_width_pct-expected.txt:
        * platform/efl/tables/mozilla/marvin/colgroup_width_px-expected.txt:
        * platform/efl/tables/mozilla/marvin/table_overflow_hidden_td-expected.txt:
        * platform/efl/tables/mozilla/marvin/table_overflow_td_dynamic_deactivate-expected.txt:
        * platform/efl/tables/mozilla/marvin/table_row_align_center-expected.txt:
        * platform/efl/tables/mozilla/marvin/table_row_align_left-expected.txt:
        * platform/efl/tables/mozilla/marvin/table_row_align_right-expected.txt:
        * platform/efl/tables/mozilla/marvin/table_rules_groups-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_aqua-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_aqua_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_black-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_black_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_blue-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_blue_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_fuchsia-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_fuchsia_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_gray-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_gray_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_green-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_green_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_lime-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_lime_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_maroon-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_maroon_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_navy-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_navy_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_olive-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_olive_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_purple-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_purple_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_red-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_red_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_silver-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_silver_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_teal-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_teal_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_white-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_white_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_yellow-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_bgcolor_yellow_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_cellpadding-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_cellpadding_pct-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_td_width-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_th_width-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_width_percent-expected.txt:
        * platform/efl/tables/mozilla/marvin/tables_width_px-expected.txt:
        * platform/efl/tables/mozilla/marvin/tbody_valign_baseline-expected.txt:
        * platform/efl/tables/mozilla/marvin/tbody_valign_bottom-expected.txt:
        * platform/efl/tables/mozilla/marvin/tbody_valign_middle-expected.txt:
        * platform/efl/tables/mozilla/marvin/tbody_valign_top-expected.txt:
        * platform/efl/tables/mozilla/marvin/td_valign_baseline-expected.txt:
        * platform/efl/tables/mozilla/marvin/td_valign_bottom-expected.txt:
        * platform/efl/tables/mozilla/marvin/td_valign_middle-expected.txt:
        * platform/efl/tables/mozilla/marvin/td_valign_top-expected.txt:
        * platform/efl/tables/mozilla/marvin/tfoot_valign_baseline-expected.txt:
        * platform/efl/tables/mozilla/marvin/tfoot_valign_bottom-expected.txt:
        * platform/efl/tables/mozilla/marvin/tfoot_valign_middle-expected.txt:
        * platform/efl/tables/mozilla/marvin/tfoot_valign_top-expected.txt:
        * platform/efl/tables/mozilla/marvin/th_valign_baseline-expected.txt:
        * platform/efl/tables/mozilla/marvin/th_valign_bottom-expected.txt:
        * platform/efl/tables/mozilla/marvin/th_valign_middle-expected.txt:
        * platform/efl/tables/mozilla/marvin/th_valign_top-expected.txt:
        * platform/efl/tables/mozilla/marvin/thead_valign_baseline-expected.txt:
        * platform/efl/tables/mozilla/marvin/thead_valign_bottom-expected.txt:
        * platform/efl/tables/mozilla/marvin/thead_valign_middle-expected.txt:
        * platform/efl/tables/mozilla/marvin/thead_valign_top-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_bgcolor_aqua_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_bgcolor_black-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_bgcolor_black_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_bgcolor_blue-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_bgcolor_blue_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_bgcolor_fuchsia-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_bgcolor_fuchsia_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_bgcolor_gray-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_bgcolor_gray_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_bgcolor_green-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_bgcolor_green_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_bgcolor_lime-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_bgcolor_lime_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_bgcolor_maroon-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_bgcolor_maroon_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_bgcolor_navy-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_bgcolor_navy_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_bgcolor_olive-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_bgcolor_olive_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_bgcolor_purple-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_bgcolor_purple_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_bgcolor_red-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_bgcolor_red_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_bgcolor_silver-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_bgcolor_silver_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_bgcolor_teal-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_bgcolor_teal_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_bgcolor_white-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_bgcolor_white_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_bgcolor_yellow-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_bgcolor_yellow_rgb-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_valign_baseline-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_valign_bottom-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_valign_middle-expected.txt:
        * platform/efl/tables/mozilla/marvin/tr_valign_top-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_col_align_char-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_col_span-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_col_valign_baseline-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_col_valign_bottom-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_col_valign_middle-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_col_valign_top-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_col_width_px-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_col_width_rel-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_colgroup_align_char-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_colgroup_span-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_colgroup_valign_baseline-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_colgroup_valign_bottom-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_colgroup_valign_middle-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_colgroup_valign_top-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_colgroup_width_rel-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tbody_valign_baseline-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tbody_valign_bottom-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tbody_valign_middle-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tbody_valign_top-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_td_align_center-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_td_align_char-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_td_align_justify-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_td_align_left-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_td_align_right-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_td_valign_baseline-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_td_valign_bottom-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_td_valign_middle-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_td_valign_top-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_td_width-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tfoot_valign_baseline-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tfoot_valign_bottom-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tfoot_valign_middle-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tfoot_valign_top-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_th_align_center-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_th_align_char-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_th_align_justify-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_th_align_left-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_th_align_right-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_th_rowspan-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_th_valign_baseline-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_th_valign_bottom-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_th_valign_middle-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_th_valign_top-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_th_width-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_thead_valign_baseline-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_thead_valign_bottom-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_thead_valign_middle-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_thead_valign_top-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tr_align_char-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tr_valign_baseline-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tr_valign_bottom-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tr_valign_middle-expected.txt:
        * platform/efl/tables/mozilla/marvin/x_tr_valign_top-expected.txt:
        * platform/efl/tables/mozilla/other/cell_widths-expected.txt:
        * platform/efl/tables/mozilla/other/ms-expected.txt:
        * platform/efl/tables/mozilla/other/nested2-expected.txt:
        * platform/efl/tables/mozilla/other/nestedTables-expected.txt:
        * platform/efl/tables/mozilla/other/slashlogo-expected.txt:
        * platform/efl/tables/mozilla/other/test3-expected.txt:
        * platform/efl/tables/mozilla/other/test6-expected.txt:
        * platform/efl/tables/mozilla/other/wa_table_thtd_rowspan-expected.txt:
        * platform/efl/tables/mozilla/other/wa_table_tr_align-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/97619-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug1010-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug1128-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug1164-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug128876-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug14007-1-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug14007-2-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug1647-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug1725-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug17826-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug21518-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug22122-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug23847-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug2479-5-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug27993-2-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug29058-2-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug3105-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug56024-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug59252-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug7121-2-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug72393-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug7243-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug80762-2-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug8499-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug85016-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug89315-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug91057-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/bugs/bug9879-1-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/collapsing_borders/bug41262-1-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/core/captions1-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/core/captions2-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/core/col_span2-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/core/cols1-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/core/columns-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/core/standards1-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/dom/appendColGroup1-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/backgr_border-table-cell-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/backgr_border-table-column-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/backgr_border-table-column-group-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/backgr_border-table-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/backgr_border-table-quirks-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/backgr_border-table-row-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/backgr_border-table-row-group-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/backgr_fixed-bg-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/backgr_layers-hide-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/backgr_layers-show-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/backgr_position-table-cell-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/backgr_position-table-column-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/backgr_position-table-column-group-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/backgr_position-table-row-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/backgr_position-table-row-group-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_overflow_caption-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_overflow_caption_bottom-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_overflow_caption_hidden-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_overflow_caption_hidden_table-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_overflow_caption_left-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_overflow_caption_right-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_overflow_caption_top-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_table-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_overflow_hidden_table-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_overflow_hidden_tbody-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_overflow_hidden_tr-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell_sibling-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row_sibling-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table_caption-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody_sibling-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_overflow_td_align_right-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_overflow_td_dynamic_deactivate-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_overflow_td_valign_bottom-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_overflow_td_valign_middle-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/table_overflow_td_valign_top-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/marvin/tables_cellspacing_pct-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/other/empty_cells-expected.txt:
        * platform/efl/tables/mozilla_expected_failures/other/test4-expected.txt:

2016-02-02  Caitlin Potter  <caitp@igalia.com>

        [JSC] Implement Object.getOwnPropertyDescriptors() proposal
        https://bugs.webkit.org/show_bug.cgi?id=153799

        Reviewed by Darin Adler.

        * js/Object-getOwnPropertyNames-expected.txt:
        * js/script-tests/Object-getOwnPropertyNames.js:

2016-02-02  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/cursor-primary-key-order.html fails with SQLite backend.
        https://bugs.webkit.org/show_bug.cgi?id=153800

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2016-02-02  Tim Horton  <timothy_horton@apple.com>

        <attachment> should attempt to guess the icon from the file extension if all else fails
        https://bugs.webkit.org/show_bug.cgi?id=153804
        <rdar://problem/24448146>

        Reviewed by Anders Carlsson.

        * fast/attachment/attachment-icon-from-file-extension-expected.html: Added.
        * fast/attachment/attachment-icon-from-file-extension.html: Added.

2016-02-02  Saam barati  <sbarati@apple.com>

        [ES6] bound functions .name property should be "bound " + the target function's name
        https://bugs.webkit.org/show_bug.cgi?id=153796

        Reviewed by Mark Lam.

        * inspector/runtime/getProperties-expected.txt:
        * platform/mac/http/tests/media/media-source/SourceBuffer-abort-readyState-expected.txt:
        * platform/mac/http/tests/media/media-source/SourceBuffer-abort-removed-expected.txt:
        * platform/mac/http/tests/media/media-source/SourceBuffer-abort-updating-expected.txt:
        * platform/mac/http/tests/media/media-source/mediasource-sourcebuffer-mode-expected.txt:

2016-02-02  Ryan Haddad  <ryanhaddad@apple.com>

        Marking perf/show-hide-table-rows.html as flaky on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=153803

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-02-02  Tim Horton  <timothy_horton@apple.com>

        <attachment> icon should be a folder for the custom MIME type multipart/x-folder
        https://bugs.webkit.org/show_bug.cgi?id=153795
        <rdar://problem/24416632>

        Reviewed by Anders Carlsson.

        * fast/attachment/attachment-folder-icon-expected.html: Added.
        * fast/attachment/attachment-folder-icon.html: Added.
        Make sure that the rendering of an attachment with multipart/x-folder
        matches that of a file reference pointing at a folder.

2016-02-02  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>

        [GTK] Layout Test fast/images/animated-gif-no-layout.html is failing
        https://bugs.webkit.org/show_bug.cgi?id=153798

        Unreviewed gardening.

        * platform/gtk/TestExpectations: mark a couple tests as failing. The
        green frame of the gif is being rendered in a slightly lighter green.

2016-02-02  Zalan Bujtas  <zalan@apple.com>

        [Win] gardening after r195740.

        Unreviewed.

        * platform/win/editing/selection/5057506-2-expected.txt:
        * platform/win/fast/block/margin-collapse/021-expected.txt:
        * platform/win/fast/table/border-collapsing/cached-change-row-border-color-expected.txt:
        * platform/win/tables/mozilla/marvin/x_tbody_style-expected.txt:

2016-02-02  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/cursor-continue-validity.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=153791

        Reviewed by Alex Christensen.

        In addition to unskipping the test, I augmented it to print out more of what was going on.
        
        The additional printed info is what helped me track down the bug, and will make it more
        likely to catch any future regressions.
        
        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/cursor-continue-validity-expected.txt:
        * storage/indexeddb/cursor-continue-validity-private-expected.txt:
        * storage/indexeddb/resources/cursor-continue-validity.js:

2016-02-01  Dave Hyatt  <hyatt@apple.com>

        Add a line grid pagination SPI to WebKit.
        https://bugs.webkit.org/show_bug.cgi?id=153757
        <rdar://problem/23041598>

        Reviewed by Anders Carlsson.

        * platform/mac/fast/multicol/pagination/BottomToTop-bt-expected.png:
        * platform/mac/fast/multicol/pagination/BottomToTop-lr-expected.png:
        * platform/mac/fast/multicol/pagination/BottomToTop-rl-expected.png:
        * platform/mac/fast/multicol/pagination/BottomToTop-tb-expected.png:
        * platform/mac/fast/multicol/pagination/BottomToTopGrid-bt-expected.png: Added.
        * platform/mac/fast/multicol/pagination/BottomToTopGrid-bt-expected.txt: Added.
        * platform/mac/fast/multicol/pagination/BottomToTopGrid-lr-expected.png: Added.
        * platform/mac/fast/multicol/pagination/BottomToTopGrid-lr-expected.txt: Added.
        * platform/mac/fast/multicol/pagination/BottomToTopGrid-rl-expected.png: Added.
        * platform/mac/fast/multicol/pagination/BottomToTopGrid-rl-expected.txt: Added.
        * platform/mac/fast/multicol/pagination/BottomToTopGrid-tb-expected.png: Added.
        * platform/mac/fast/multicol/pagination/BottomToTopGrid-tb-expected.txt: Added.
        * platform/mac/fast/multicol/pagination/LeftToRight-bt-expected.png:
        * platform/mac/fast/multicol/pagination/LeftToRight-lr-expected.png:
        * platform/mac/fast/multicol/pagination/LeftToRight-rl-expected.png:
        * platform/mac/fast/multicol/pagination/LeftToRight-tb-expected.png:
        * platform/mac/fast/multicol/pagination/LeftToRightGrid-bt-expected.png: Added.
        * platform/mac/fast/multicol/pagination/LeftToRightGrid-bt-expected.txt: Added.
        * platform/mac/fast/multicol/pagination/LeftToRightGrid-lr-expected.png: Added.
        * platform/mac/fast/multicol/pagination/LeftToRightGrid-lr-expected.txt: Added.
        * platform/mac/fast/multicol/pagination/LeftToRightGrid-rl-expected.png: Added.
        * platform/mac/fast/multicol/pagination/LeftToRightGrid-rl-expected.txt: Added.
        * platform/mac/fast/multicol/pagination/LeftToRightGrid-tb-expected.png: Added.
        * platform/mac/fast/multicol/pagination/LeftToRightGrid-tb-expected.txt: Added.
        * platform/mac/fast/multicol/pagination/RightToLeft-bt-expected.png:
        * platform/mac/fast/multicol/pagination/RightToLeft-lr-expected.png:
        * platform/mac/fast/multicol/pagination/RightToLeft-max-width-expected.png:
        * platform/mac/fast/multicol/pagination/RightToLeft-rl-dynamic-expected.png:
        * platform/mac/fast/multicol/pagination/RightToLeft-rl-expected.png:
        * platform/mac/fast/multicol/pagination/RightToLeft-tb-expected.png:
        * platform/mac/fast/multicol/pagination/RightToLeftGrid-bt-expected.png: Added.
        * platform/mac/fast/multicol/pagination/RightToLeftGrid-bt-expected.txt: Added.
        * platform/mac/fast/multicol/pagination/RightToLeftGrid-lr-expected.png: Added.
        * platform/mac/fast/multicol/pagination/RightToLeftGrid-lr-expected.txt: Added.
        * platform/mac/fast/multicol/pagination/RightToLeftGrid-rl-expected.png: Added.
        * platform/mac/fast/multicol/pagination/RightToLeftGrid-rl-expected.txt: Added.
        * platform/mac/fast/multicol/pagination/RightToLeftGrid-tb-expected.png: Added.
        * platform/mac/fast/multicol/pagination/RightToLeftGrid-tb-expected.txt: Added.
        * platform/mac/fast/multicol/pagination/TopToBottom-bt-expected.png:
        * platform/mac/fast/multicol/pagination/TopToBottom-lr-expected.png:
        * platform/mac/fast/multicol/pagination/TopToBottom-rl-expected.png:
        * platform/mac/fast/multicol/pagination/TopToBottom-tb-expected.png:
        * platform/mac/fast/multicol/pagination/TopToBottomGrid-bt-expected.png: Added.
        * platform/mac/fast/multicol/pagination/TopToBottomGrid-bt-expected.txt: Added.
        * platform/mac/fast/multicol/pagination/TopToBottomGrid-lr-expected.png: Added.
        * platform/mac/fast/multicol/pagination/TopToBottomGrid-lr-expected.txt: Added.
        * platform/mac/fast/multicol/pagination/TopToBottomGrid-rl-expected.png: Added.
        * platform/mac/fast/multicol/pagination/TopToBottomGrid-rl-expected.txt: Added.
        * platform/mac/fast/multicol/pagination/TopToBottomGrid-tb-expected.png: Added.
        * platform/mac/fast/multicol/pagination/TopToBottomGrid-tb-expected.txt: Added.
        * platform/mac/fast/multicol/pagination/nested-transforms-expected.png:

2016-02-02  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/dont-wedge.html sometimes ASSERTs.
        https://bugs.webkit.org/show_bug.cgi?id=153790

        Reviewed by Tim Horton.

        * platform/mac-wk1/TestExpectations:

2016-02-02  Zalan Bujtas  <zalan@apple.com>

        [Win] gardening after r195740.

        Unreviewed.

        * platform/win/tables/mozilla/marvin/x_tbody_align_left-expected.txt:
        * platform/win/tables/mozilla/marvin/x_tbody_align_right-expected.txt:
        * platform/win/tables/mozilla/marvin/x_tbody_class-expected.txt:
        * platform/win/tables/mozilla/marvin/x_tbody_id-expected.txt:
        * platform/win/tables/mozilla/marvin/x_tbody_valign_baseline-expected.txt:
        * platform/win/tables/mozilla/marvin/x_tbody_valign_bottom-expected.txt:
        * platform/win/tables/mozilla/marvin/x_tbody_valign_middle-expected.txt:
        * platform/win/tables/mozilla/marvin/x_tbody_valign_top-expected.txt:
        * platform/win/tables/mozilla/marvin/x_td_align_center-expected.txt:
        * platform/win/tables/mozilla/marvin/x_td_align_char-expected.txt:
        * platform/win/tables/mozilla/marvin/x_td_align_justify-expected.txt:
        * platform/win/tables/mozilla/marvin/x_td_align_left-expected.txt:
        * platform/win/tables/mozilla/marvin/x_td_align_right-expected.txt:
        * platform/win/tables/mozilla/marvin/x_td_bgcolor_name-expected.txt:
        * platform/win/tables/mozilla/marvin/x_td_bgcolor_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/x_td_class-expected.txt:
        * platform/win/tables/mozilla/marvin/x_td_colspan-expected.txt:
        * platform/win/tables/mozilla/marvin/x_td_height-expected.txt:
        * platform/win/tables/mozilla/marvin/x_td_id-expected.txt:
        * platform/win/tables/mozilla/marvin/x_td_nowrap-expected.txt:
        * platform/win/tables/mozilla/marvin/x_td_rowspan-expected.txt:
        * platform/win/tables/mozilla/marvin/x_td_style-expected.txt:
        * platform/win/tables/mozilla/marvin/x_td_valign_baseline-expected.txt:
        * platform/win/tables/mozilla/marvin/x_td_valign_bottom-expected.txt:
        * platform/win/tables/mozilla/marvin/x_td_valign_middle-expected.txt:
        * platform/win/tables/mozilla/marvin/x_td_valign_top-expected.txt:
        * platform/win/tables/mozilla/marvin/x_td_width-expected.txt:
        * platform/win/tables/mozilla/marvin/x_tfoot_align_center-expected.txt:
        * platform/win/tables/mozilla/marvin/x_tfoot_align_char-expected.txt:
        * platform/win/tables/mozilla/marvin/x_tfoot_align_left-expected.txt:
        * platform/win/tables/mozilla/marvin/x_tfoot_align_right-expected.txt:
        * platform/win/tables/mozilla/marvin/x_tfoot_class-expected.txt:
        * platform/win/tables/mozilla/marvin/x_tfoot_id-expected.txt:
        * platform/win/tables/mozilla/marvin/x_tfoot_style-expected.txt:
        * platform/win/tables/mozilla/marvin/x_tfoot_valign_baseline-expected.txt:
        * platform/win/tables/mozilla/marvin/x_tfoot_valign_bottom-expected.txt:
        * platform/win/tables/mozilla/marvin/x_tfoot_valign_middle-expected.txt:
        * platform/win/tables/mozilla/marvin/x_tfoot_valign_top-expected.txt:
        * platform/win/tables/mozilla/marvin/x_th_align_center-expected.txt:
        * platform/win/tables/mozilla/marvin/x_th_align_char-expected.txt:
        * platform/win/tables/mozilla/marvin/x_th_align_justify-expected.txt:
        * platform/win/tables/mozilla/marvin/x_th_align_left-expected.txt:
        * platform/win/tables/mozilla/marvin/x_th_align_right-expected.txt:
        * platform/win/tables/mozilla/marvin/x_th_bgcolor_name-expected.txt:
        * platform/win/tables/mozilla/marvin/x_th_bgcolor_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/x_th_class-expected.txt:
        * platform/win/tables/mozilla/marvin/x_th_colspan-expected.txt:
        * platform/win/tables/mozilla/marvin/x_th_height-expected.txt:
        * platform/win/tables/mozilla/marvin/x_th_id-expected.txt:
        * platform/win/tables/mozilla/marvin/x_th_nowrap-expected.txt:
        * platform/win/tables/mozilla/marvin/x_th_rowspan-expected.txt:
        * platform/win/tables/mozilla/marvin/x_th_style-expected.txt:
        * platform/win/tables/mozilla/marvin/x_th_valign_baseline-expected.txt:
        * platform/win/tables/mozilla/marvin/x_th_valign_bottom-expected.txt:
        * platform/win/tables/mozilla/marvin/x_th_valign_middle-expected.txt:
        * platform/win/tables/mozilla/marvin/x_th_valign_top-expected.txt:
        * platform/win/tables/mozilla/marvin/x_th_width-expected.txt:
        * platform/win/tables/mozilla/marvin/x_thead_align_center-expected.txt:
        * platform/win/tables/mozilla/marvin/x_thead_align_char-expected.txt:
        * platform/win/tables/mozilla/marvin/x_thead_align_left-expected.txt:
        * platform/win/tables/mozilla/marvin/x_thead_align_right-expected.txt:
        * platform/win/tables/mozilla/marvin/x_thead_class-expected.txt:
        * platform/win/tables/mozilla/marvin/x_thead_id-expected.txt:
        * platform/win/tables/mozilla/marvin/x_thead_style-expected.txt:
        * platform/win/tables/mozilla/marvin/x_thead_valign_baseline-expected.txt:
        * platform/win/tables/mozilla/marvin/x_thead_valign_bottom-expected.txt:
        * platform/win/tables/mozilla/marvin/x_thead_valign_middle-expected.txt:
        * platform/win/tables/mozilla/marvin/x_thead_valign_top-expected.txt:
        * platform/win/tables/mozilla/marvin/x_tr_align_char-expected.txt:
        * platform/win/tables/mozilla/marvin/x_tr_bgcolor_name-expected.txt:
        * platform/win/tables/mozilla/marvin/x_tr_bgcolor_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/x_tr_class-expected.txt:
        * platform/win/tables/mozilla/marvin/x_tr_id-expected.txt:
        * platform/win/tables/mozilla/marvin/x_tr_style-expected.txt:
        * platform/win/tables/mozilla/marvin/x_tr_valign_baseline-expected.txt:
        * platform/win/tables/mozilla/marvin/x_tr_valign_bottom-expected.txt:
        * platform/win/tables/mozilla/marvin/x_tr_valign_middle-expected.txt:
        * platform/win/tables/mozilla/marvin/x_tr_valign_top-expected.txt:
        * platform/win/tables/mozilla/other/body_col-expected.txt:
        * platform/win/tables/mozilla/other/cell_widths-expected.txt:
        * platform/win/tables/mozilla/other/cellspacing-expected.txt:
        * platform/win/tables/mozilla/other/move_row-expected.txt:
        * platform/win/tables/mozilla/other/ms-expected.txt:
        * platform/win/tables/mozilla/other/nested2-expected.txt:
        * platform/win/tables/mozilla/other/nestedTables-expected.txt:
        * platform/win/tables/mozilla/other/padding-expected.txt:
        * platform/win/tables/mozilla/other/slashlogo-expected.txt:
        * platform/win/tables/mozilla/other/test3-expected.txt:
        * platform/win/tables/mozilla/other/test6-expected.txt:
        * platform/win/tables/mozilla/other/wa_table_thtd_rowspan-expected.txt:
        * platform/win/tables/mozilla/other/wa_table_tr_align-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/97619-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug1010-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug10140-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug101759-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug10216-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug104898-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug1055-2-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug106336-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug1128-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug1164-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug11945-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug128876-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug131020-3-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug14007-1-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug14007-2-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug14159-2-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug1647-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug1725-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug17826-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug178855-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug18770-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug21518-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug22122-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug23847-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug2479-5-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug24880-1-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug25707-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug27993-2-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug29058-2-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug3105-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug3166-11-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug3166-12-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug3166-13-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug3166-14-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug3166-16-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug3166-17-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug3166-18-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug32205-1-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug32205-4-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug4294-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug46268-4-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug51000-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug56024-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug58402-2-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug59252-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug65372-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug6933-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug7113-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug7121-2-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug72393-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug7243-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug73629-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug80762-2-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug8499-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug85016-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug89315-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug91057-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug92647-1-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug92868_1-expected.txt:
        * platform/win/tables/mozilla_expected_failures/bugs/bug9879-1-expected.txt:
        * platform/win/tables/mozilla_expected_failures/collapsing_borders/bug41262-1-expected.txt:
        * platform/win/tables/mozilla_expected_failures/collapsing_borders/bug41262-5-expected.txt:
        * platform/win/tables/mozilla_expected_failures/collapsing_borders/bug41262-6-expected.txt:
        * platform/win/tables/mozilla_expected_failures/core/backgrounds-expected.txt:
        * platform/win/tables/mozilla_expected_failures/core/captions1-expected.txt:
        * platform/win/tables/mozilla_expected_failures/core/captions2-expected.txt:
        * platform/win/tables/mozilla_expected_failures/core/captions3-expected.txt:
        * platform/win/tables/mozilla_expected_failures/core/col_span2-expected.txt:
        * platform/win/tables/mozilla_expected_failures/core/cols1-expected.txt:
        * platform/win/tables/mozilla_expected_failures/core/columns-expected.txt:
        * platform/win/tables/mozilla_expected_failures/core/conflicts-expected.txt:
        * platform/win/tables/mozilla_expected_failures/core/standards1-expected.txt:
        * platform/win/tables/mozilla_expected_failures/dom/appendCells1-expected.txt:
        * platform/win/tables/mozilla_expected_failures/dom/appendCellsRebuild1-expected.txt:
        * platform/win/tables/mozilla_expected_failures/dom/appendCol1-expected.txt:
        * platform/win/tables/mozilla_expected_failures/dom/appendColGroup1-expected.txt:
        * platform/win/tables/mozilla_expected_failures/dom/insertTbodyExpand1-expected.txt:
        * platform/win/tables/mozilla_expected_failures/dom/insertTbodyRebuild1-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/backgr_border-table-cell-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/backgr_border-table-column-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/backgr_border-table-column-group-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/backgr_border-table-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/backgr_border-table-quirks-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/backgr_border-table-row-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/backgr_border-table-row-group-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/backgr_fixed-bg-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/backgr_layers-hide-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/backgr_layers-show-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/backgr_position-table-cell-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/backgr_position-table-column-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/backgr_position-table-column-group-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/backgr_position-table-row-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/backgr_position-table-row-group-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_frame_above-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_frame_below-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_frame_hsides-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_frame_lhs-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_frame_rhs-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_frame_void-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_frame_vsides-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_overflow_caption-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_overflow_caption_bottom-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_overflow_caption_hidden-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_overflow_caption_hidden_table-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_overflow_caption_left-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_overflow_caption_right-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_overflow_caption_top-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_row-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_table-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_tbody-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_overflow_hidden_table-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_overflow_hidden_tbody-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_overflow_hidden_tr-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell_sibling-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row_sibling-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table_caption-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody_sibling-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_overflow_td_align_right-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_overflow_td_dynamic_deactivate-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_overflow_td_valign_bottom-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_overflow_td_valign_middle-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_overflow_td_valign_top-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_rules_cols-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/table_rules_rows-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/tables_caption_align_left-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/tables_caption_align_right-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/tables_cellspacing_pct-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/x_caption_align_left-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/x_caption_align_right-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/x_colgroup_width_px-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/x_table_frame_above-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/x_table_frame_below-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/x_table_frame_border-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/x_table_frame_box-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/x_table_frame_hsides-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/x_table_frame_lhs-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/x_table_frame_rhs-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/x_table_frame_vsides-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/x_table_rules_all-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/x_table_rules_cols-expected.txt:
        * platform/win/tables/mozilla_expected_failures/marvin/x_table_rules_rows-expected.txt:
        * platform/win/tables/mozilla_expected_failures/other/empty_cells-expected.txt:
        * platform/win/tables/mozilla_expected_failures/other/test4-expected.txt:

2016-02-02  Dan Bernstein  <mitz@apple.com>

        Layout Test fast/parser/external-entities-in-xslt.xml is flaky on El Capitan (but fails most of the time)
        https://bugs.webkit.org/show_bug.cgi?id=153683

        Reviewed by Alexey Proskuryakov.

        * platform/mac/TestExpectations: Removed the failure expectation for this test.

2016-02-02  Eric Carlson  <eric.carlson@apple.com>

        Allow ports to disable automatic text track selection
        https://bugs.webkit.org/show_bug.cgi?id=153761
        <rdar://problem/24416768>

        Reviewed by Darin Adler.

        * media/track/track-manual-mode-expected.txt: Added.
        * media/track/track-manual-mode.html: Added.

2016-02-02  Zalan Bujtas  <zalan@apple.com>

        [Win] gardening after r195740. (more to follow)

        Unreviewed.

        * platform/win/tables/mozilla/bugs/bug101201-expected.txt:
        * platform/win/tables/mozilla/bugs/bug101674-expected.txt:
        * platform/win/tables/mozilla/bugs/bug103533-expected.txt:
        * platform/win/tables/mozilla/bugs/bug106158-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug106795-expected.txt:
        * platform/win/tables/mozilla/bugs/bug106816-expected.txt:
        * platform/win/tables/mozilla/bugs/bug108340-expected.txt:
        * platform/win/tables/mozilla/bugs/bug110566-expected.txt:
        * platform/win/tables/mozilla/bugs/bug113235-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug113235-3-expected.txt:
        * platform/win/tables/mozilla/bugs/bug113424-expected.txt:
        * platform/win/tables/mozilla/bugs/bug119786-expected.txt:
        * platform/win/tables/mozilla/bugs/bug120107-expected.txt:
        * platform/win/tables/mozilla/bugs/bug120364-expected.txt:
        * platform/win/tables/mozilla/bugs/bug133756-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug133756-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug137388-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug137388-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug137388-3-expected.txt:
        * platform/win/tables/mozilla/bugs/bug138725-expected.txt:
        * platform/win/tables/mozilla/bugs/bug139524-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug139524-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug139524-3-expected.txt:
        * platform/win/tables/mozilla/bugs/bug139524-4-expected.txt:
        * platform/win/tables/mozilla/bugs/bug149275-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug154780-expected.txt:
        * platform/win/tables/mozilla/bugs/bug159108-expected.txt:
        * platform/win/tables/mozilla/bugs/bug175455-4-expected.txt:
        * platform/win/tables/mozilla/bugs/bug20579-expected.txt:
        * platform/win/tables/mozilla/bugs/bug20804-expected.txt:
        * platform/win/tables/mozilla/bugs/bug21299-expected.txt:
        * platform/win/tables/mozilla/bugs/bug215629-expected.txt:
        * platform/win/tables/mozilla/bugs/bug21918-expected.txt:
        * platform/win/tables/mozilla/bugs/bug219693-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug219693-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug22019-expected.txt:
        * platform/win/tables/mozilla/bugs/bug220536-expected.txt:
        * platform/win/tables/mozilla/bugs/bug221784-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug221784-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug222336-expected.txt:
        * platform/win/tables/mozilla/bugs/bug22246-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug22246-2a-expected.txt:
        * platform/win/tables/mozilla/bugs/bug22246-3-expected.txt:
        * platform/win/tables/mozilla/bugs/bug22246-3a-expected.txt:
        * platform/win/tables/mozilla/bugs/bug22513-expected.txt:
        * platform/win/tables/mozilla/bugs/bug23072-expected.txt:
        * platform/win/tables/mozilla/bugs/bug23151-expected.txt:
        * platform/win/tables/mozilla/bugs/bug23235-expected.txt:
        * platform/win/tables/mozilla/bugs/bug23299-expected.txt:
        * platform/win/tables/mozilla/bugs/bug24200-expected.txt:
        * platform/win/tables/mozilla/bugs/bug24503-expected.txt:
        * platform/win/tables/mozilla/bugs/bug24627-expected.txt:
        * platform/win/tables/mozilla/bugs/bug24880-expected.txt:
        * platform/win/tables/mozilla/bugs/bug25004-expected.txt:
        * platform/win/tables/mozilla/bugs/bug25074-expected.txt:
        * platform/win/tables/mozilla/bugs/bug25086-expected.txt:
        * platform/win/tables/mozilla/bugs/bug25367-expected.txt:
        * platform/win/tables/mozilla/bugs/bug25663-expected.txt:
        * platform/win/tables/mozilla/bugs/bug26178-expected.txt:
        * platform/win/tables/mozilla/bugs/bug26553-expected.txt:
        * platform/win/tables/mozilla/bugs/bug269566-expected.txt:
        * platform/win/tables/mozilla/bugs/bug27038-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug27038-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug275625-expected.txt:
        * platform/win/tables/mozilla/bugs/bug277062-expected.txt:
        * platform/win/tables/mozilla/bugs/bug278266-expected.txt:
        * platform/win/tables/mozilla/bugs/bug278385-expected.txt:
        * platform/win/tables/mozilla/bugs/bug27993-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug28928-expected.txt:
        * platform/win/tables/mozilla/bugs/bug28933-expected.txt:
        * platform/win/tables/mozilla/bugs/bug29058-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug29157-expected.txt:
        * platform/win/tables/mozilla/bugs/bug29314-expected.txt:
        * platform/win/tables/mozilla/bugs/bug29429-expected.txt:
        * platform/win/tables/mozilla/bugs/bug30273-expected.txt:
        * platform/win/tables/mozilla/bugs/bug30418-expected.txt:
        * platform/win/tables/mozilla/bugs/bug30559-expected.txt:
        * platform/win/tables/mozilla/bugs/bug30985-expected.txt:
        * platform/win/tables/mozilla/bugs/bug32205-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug32205-3-expected.txt:
        * platform/win/tables/mozilla/bugs/bug32205-5-expected.txt:
        * platform/win/tables/mozilla/bugs/bug32447-expected.txt:
        * platform/win/tables/mozilla/bugs/bug33137-expected.txt:
        * platform/win/tables/mozilla/bugs/bug33855-expected.txt:
        * platform/win/tables/mozilla/bugs/bug34538-expected.txt:
        * platform/win/tables/mozilla/bugs/bug35662-expected.txt:
        * platform/win/tables/mozilla/bugs/bug38916-expected.txt:
        * platform/win/tables/mozilla/bugs/bug39209-expected.txt:
        * platform/win/tables/mozilla/bugs/bug40828-expected.txt:
        * platform/win/tables/mozilla/bugs/bug42187-expected.txt:
        * platform/win/tables/mozilla/bugs/bug44505-expected.txt:
        * platform/win/tables/mozilla/bugs/bug44523-expected.txt:
        * platform/win/tables/mozilla/bugs/bug45055-expected.txt:
        * platform/win/tables/mozilla/bugs/bug45350-expected.txt:
        * platform/win/tables/mozilla/bugs/bug45486-expected.txt:
        * platform/win/tables/mozilla/bugs/bug46268-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug46268-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug46268-3-expected.txt:
        * platform/win/tables/mozilla/bugs/bug46268-5-expected.txt:
        * platform/win/tables/mozilla/bugs/bug46268-expected.txt:
        * platform/win/tables/mozilla/bugs/bug46368-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug46480-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug46480-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug46623-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug46623-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug47432-expected.txt:
        * platform/win/tables/mozilla/bugs/bug48028-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug48028-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug51037-expected.txt:
        * platform/win/tables/mozilla/bugs/bug51140-expected.txt:
        * platform/win/tables/mozilla/bugs/bug51727-expected.txt:
        * platform/win/tables/mozilla/bugs/bug52505-expected.txt:
        * platform/win/tables/mozilla/bugs/bug52506-expected.txt:
        * platform/win/tables/mozilla/bugs/bug53690-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug53690-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug53891-expected.txt:
        * platform/win/tables/mozilla/bugs/bug55545-expected.txt:
        * platform/win/tables/mozilla/bugs/bug55694-expected.txt:
        * platform/win/tables/mozilla/bugs/bug55789-expected.txt:
        * platform/win/tables/mozilla/bugs/bug56201-expected.txt:
        * platform/win/tables/mozilla/bugs/bug56405-expected.txt:
        * platform/win/tables/mozilla/bugs/bug57300-expected.txt:
        * platform/win/tables/mozilla/bugs/bug57378-expected.txt:
        * platform/win/tables/mozilla/bugs/bug57828-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug57828-expected.txt:
        * platform/win/tables/mozilla/bugs/bug58402-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug59354-expected.txt:
        * platform/win/tables/mozilla/bugs/bug60013-expected.txt:
        * platform/win/tables/mozilla/bugs/bug60749-expected.txt:
        * platform/win/tables/mozilla/bugs/bug60804-expected.txt:
        * platform/win/tables/mozilla/bugs/bug60807-expected.txt:
        * platform/win/tables/mozilla/bugs/bug60992-expected.txt:
        * platform/win/tables/mozilla/bugs/bug63785-expected.txt:
        * platform/win/tables/mozilla/bugs/bug67864-expected.txt:
        * platform/win/tables/mozilla/bugs/bug67915-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug68998-expected.txt:
        * platform/win/tables/mozilla/bugs/bug69187-expected.txt:
        * platform/win/tables/mozilla/bugs/bug69382-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug69382-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug72359-expected.txt:
        * platform/win/tables/mozilla/bugs/bug75250-expected.txt:
        * platform/win/tables/mozilla/bugs/bug78162-expected.txt:
        * platform/win/tables/mozilla/bugs/bug82946-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug82946-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug83786-expected.txt:
        * platform/win/tables/mozilla/bugs/bug86708-expected.txt:
        * platform/win/tables/mozilla/bugs/bug92143-expected.txt:
        * platform/win/tables/mozilla/bugs/bug92647-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug93363-expected.txt:
        * platform/win/tables/mozilla/bugs/bug96334-expected.txt:
        * platform/win/tables/mozilla/bugs/bug96343-expected.txt:
        * platform/win/tables/mozilla/bugs/bug97138-expected.txt:
        * platform/win/tables/mozilla/bugs/bug97383-expected.txt:
        * platform/win/tables/mozilla/bugs/bug99923-expected.txt:
        * platform/win/tables/mozilla/bugs/bug99948-expected.txt:
        * platform/win/tables/mozilla/collapsing_borders/bug127040-expected.txt:
        * platform/win/tables/mozilla/collapsing_borders/bug41262-3-expected.txt:
        * platform/win/tables/mozilla/collapsing_borders/bug41262-4-expected.txt:
        * platform/win/tables/mozilla/core/bloomberg-expected.txt:
        * platform/win/tables/mozilla/core/borders-expected.txt:
        * platform/win/tables/mozilla/core/captions-expected.txt:
        * platform/win/tables/mozilla/core/cell_heights-expected.txt:
        * platform/win/tables/mozilla/core/col_span-expected.txt:
        * platform/win/tables/mozilla/core/col_widths_auto_auto-expected.txt:
        * platform/win/tables/mozilla/core/col_widths_auto_autoFix-expected.txt:
        * platform/win/tables/mozilla/core/col_widths_auto_autoFixPer-expected.txt:
        * platform/win/tables/mozilla/core/col_widths_auto_autoPer-expected.txt:
        * platform/win/tables/mozilla/core/col_widths_auto_fix-expected.txt:
        * platform/win/tables/mozilla/core/col_widths_auto_fixPer-expected.txt:
        * platform/win/tables/mozilla/core/col_widths_auto_per-expected.txt:
        * platform/win/tables/mozilla/core/col_widths_fix_autoFix-expected.txt:
        * platform/win/tables/mozilla/core/col_widths_fix_autoPer-expected.txt:
        * platform/win/tables/mozilla/core/col_widths_fix_fix-expected.txt:
        * platform/win/tables/mozilla/core/col_widths_fix_fixPer-expected.txt:
        * platform/win/tables/mozilla/core/col_widths_fix_per-expected.txt:
        * platform/win/tables/mozilla/core/margins-expected.txt:
        * platform/win/tables/mozilla/core/misc-expected.txt:
        * platform/win/tables/mozilla/core/nested1-expected.txt:
        * platform/win/tables/mozilla/core/one_row-expected.txt:
        * platform/win/tables/mozilla/core/row_span-expected.txt:
        * platform/win/tables/mozilla/core/table_frame-expected.txt:
        * platform/win/tables/mozilla/core/table_heights-expected.txt:
        * platform/win/tables/mozilla/core/table_rules-expected.txt:
        * platform/win/tables/mozilla/core/table_widths-expected.txt:
        * platform/win/tables/mozilla/dom/appendCol2-expected.txt:
        * platform/win/tables/mozilla/dom/appendRowsExpand1-expected.txt:
        * platform/win/tables/mozilla/dom/appendTbodyExpand1-expected.txt:
        * platform/win/tables/mozilla/dom/deleteCellsRebuild1-expected.txt:
        * platform/win/tables/mozilla/dom/deleteCellsShrink1-expected.txt:
        * platform/win/tables/mozilla/dom/deleteCellsShrink2-expected.txt:
        * platform/win/tables/mozilla/dom/deleteCol1-expected.txt:
        * platform/win/tables/mozilla/dom/deleteCol2-expected.txt:
        * platform/win/tables/mozilla/dom/deleteCol3-expected.txt:
        * platform/win/tables/mozilla/dom/deleteColGroup1-expected.txt:
        * platform/win/tables/mozilla/dom/deleteColGroup2-expected.txt:
        * platform/win/tables/mozilla/dom/deleteRowsRebuild1-expected.txt:
        * platform/win/tables/mozilla/dom/deleteRowsShrink1-expected.txt:
        * platform/win/tables/mozilla/dom/deleteTbodyExpand1-expected.txt:
        * platform/win/tables/mozilla/dom/deleteTbodyRebuild1-expected.txt:
        * platform/win/tables/mozilla/dom/insertCellsExpand1-expected.txt:
        * platform/win/tables/mozilla/dom/insertCellsExpand2-expected.txt:
        * platform/win/tables/mozilla/dom/insertCellsRebuild1-expected.txt:
        * platform/win/tables/mozilla/dom/insertCellsRebuild2-expected.txt:
        * platform/win/tables/mozilla/dom/insertColGroups1-expected.txt:
        * platform/win/tables/mozilla/dom/insertColGroups2-expected.txt:
        * platform/win/tables/mozilla/dom/insertCols1-expected.txt:
        * platform/win/tables/mozilla/dom/insertCols2-expected.txt:
        * platform/win/tables/mozilla/dom/insertCols3-expected.txt:
        * platform/win/tables/mozilla/dom/insertCols4-expected.txt:
        * platform/win/tables/mozilla/dom/insertCols5-expected.txt:
        * platform/win/tables/mozilla/dom/insertRowsExpand1-expected.txt:
        * platform/win/tables/mozilla/dom/insertRowsRebuild1-expected.txt:
        * platform/win/tables/mozilla/dom/tableDom-expected.txt:
        * platform/win/tables/mozilla/marvin/backgr_layers-opacity-expected.txt:
        * platform/win/tables/mozilla/marvin/backgr_position-table-expected.txt:
        * platform/win/tables/mozilla/marvin/backgr_simple-table-cell-expected.txt:
        * platform/win/tables/mozilla/marvin/backgr_simple-table-column-expected.txt:
        * platform/win/tables/mozilla/marvin/backgr_simple-table-column-group-expected.txt:
        * platform/win/tables/mozilla/marvin/backgr_simple-table-expected.txt:
        * platform/win/tables/mozilla/marvin/backgr_simple-table-row-expected.txt:
        * platform/win/tables/mozilla/marvin/backgr_simple-table-row-group-expected.txt:
        * platform/win/tables/mozilla/marvin/body_col-expected.txt:
        * platform/win/tables/mozilla/marvin/body_tbody-expected.txt:
        * platform/win/tables/mozilla/marvin/body_tfoot-expected.txt:
        * platform/win/tables/mozilla/marvin/body_thead-expected.txt:
        * platform/win/tables/mozilla/marvin/col_span-expected.txt:
        * platform/win/tables/mozilla/marvin/colgroup_align_center-expected.txt:
        * platform/win/tables/mozilla/marvin/colgroup_align_justify-expected.txt:
        * platform/win/tables/mozilla/marvin/colgroup_align_left-expected.txt:
        * platform/win/tables/mozilla/marvin/colgroup_align_right-expected.txt:
        * platform/win/tables/mozilla/marvin/colgroup_span-expected.txt:
        * platform/win/tables/mozilla/marvin/colgroup_valign_baseline-expected.txt:
        * platform/win/tables/mozilla/marvin/colgroup_valign_bottom-expected.txt:
        * platform/win/tables/mozilla/marvin/colgroup_valign_middle-expected.txt:
        * platform/win/tables/mozilla/marvin/colgroup_valign_top-expected.txt:
        * platform/win/tables/mozilla/marvin/colgroup_width_pct-expected.txt:
        * platform/win/tables/mozilla/marvin/colgroup_width_px-expected.txt:
        * platform/win/tables/mozilla/marvin/table_frame_border-expected.txt:
        * platform/win/tables/mozilla/marvin/table_frame_box-expected.txt:
        * platform/win/tables/mozilla/marvin/table_overflow_hidden_td-expected.txt:
        * platform/win/tables/mozilla/marvin/table_overflow_td_dynamic_deactivate-expected.txt:
        * platform/win/tables/mozilla/marvin/table_row_align_center-expected.txt:
        * platform/win/tables/mozilla/marvin/table_row_align_left-expected.txt:
        * platform/win/tables/mozilla/marvin/table_row_align_right-expected.txt:
        * platform/win/tables/mozilla/marvin/table_rules_all-expected.txt:
        * platform/win/tables/mozilla/marvin/table_rules_groups-expected.txt:
        * platform/win/tables/mozilla/marvin/table_rules_none-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_align_center-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_align_left-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_align_right-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_aqua-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_aqua_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_black-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_black_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_blue-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_blue_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_fuchsia-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_fuchsia_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_gray-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_gray_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_green-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_green_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_lime-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_lime_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_maroon-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_maroon_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_navy-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_navy_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_olive-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_olive_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_purple-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_purple_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_red-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_red_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_silver-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_silver_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_teal-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_teal_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_white-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_white_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_yellow-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_bgcolor_yellow_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_border_0-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_border_1-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_border_2-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_border_3-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_caption_align_bot-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_caption_align_top-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_cellpadding-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_cellpadding_pct-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_cellspacing-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_default-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_id-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_row_th_nowrap-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_td_align_center-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_td_align_left-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_td_align_right-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_td_colspan-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_td_height-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_td_nowrap-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_td_rowspan-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_td_width-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_th_align_center-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_th_align_left-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_th_align_right-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_th_colspan-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_th_height-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_th_rowspan-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_th_width-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_width_percent-expected.txt:
        * platform/win/tables/mozilla/marvin/tables_width_px-expected.txt:
        * platform/win/tables/mozilla/marvin/tbody_align_center-expected.txt:
        * platform/win/tables/mozilla/marvin/tbody_align_char-expected.txt:
        * platform/win/tables/mozilla/marvin/tbody_align_justify-expected.txt:
        * platform/win/tables/mozilla/marvin/tbody_align_left-expected.txt:
        * platform/win/tables/mozilla/marvin/tbody_align_right-expected.txt:
        * platform/win/tables/mozilla/marvin/tbody_char-expected.txt:
        * platform/win/tables/mozilla/marvin/tbody_valign_baseline-expected.txt:
        * platform/win/tables/mozilla/marvin/tbody_valign_bottom-expected.txt:
        * platform/win/tables/mozilla/marvin/tbody_valign_middle-expected.txt:
        * platform/win/tables/mozilla/marvin/tbody_valign_top-expected.txt:
        * platform/win/tables/mozilla/marvin/td_valign_baseline-expected.txt:
        * platform/win/tables/mozilla/marvin/td_valign_bottom-expected.txt:
        * platform/win/tables/mozilla/marvin/td_valign_middle-expected.txt:
        * platform/win/tables/mozilla/marvin/td_valign_top-expected.txt:
        * platform/win/tables/mozilla/marvin/tfoot_align_center-expected.txt:
        * platform/win/tables/mozilla/marvin/tfoot_align_char-expected.txt:
        * platform/win/tables/mozilla/marvin/tfoot_align_justify-expected.txt:
        * platform/win/tables/mozilla/marvin/tfoot_align_left-expected.txt:
        * platform/win/tables/mozilla/marvin/tfoot_align_right-expected.txt:
        * platform/win/tables/mozilla/marvin/tfoot_char-expected.txt:
        * platform/win/tables/mozilla/marvin/tfoot_valign_baseline-expected.txt:
        * platform/win/tables/mozilla/marvin/tfoot_valign_bottom-expected.txt:
        * platform/win/tables/mozilla/marvin/tfoot_valign_middle-expected.txt:
        * platform/win/tables/mozilla/marvin/tfoot_valign_top-expected.txt:
        * platform/win/tables/mozilla/marvin/th_valign_baseline-expected.txt:
        * platform/win/tables/mozilla/marvin/th_valign_bottom-expected.txt:
        * platform/win/tables/mozilla/marvin/th_valign_middle-expected.txt:
        * platform/win/tables/mozilla/marvin/th_valign_top-expected.txt:
        * platform/win/tables/mozilla/marvin/thead_align_center-expected.txt:
        * platform/win/tables/mozilla/marvin/thead_align_char-expected.txt:
        * platform/win/tables/mozilla/marvin/thead_align_justify-expected.txt:
        * platform/win/tables/mozilla/marvin/thead_align_left-expected.txt:
        * platform/win/tables/mozilla/marvin/thead_align_right-expected.txt:
        * platform/win/tables/mozilla/marvin/thead_char-expected.txt:
        * platform/win/tables/mozilla/marvin/thead_valign_baseline-expected.txt:
        * platform/win/tables/mozilla/marvin/thead_valign_bottom-expected.txt:
        * platform/win/tables/mozilla/marvin/thead_valign_middle-expected.txt:
        * platform/win/tables/mozilla/marvin/thead_valign_top-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_bgcolor_aqua_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_bgcolor_black-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_bgcolor_black_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_bgcolor_blue-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_bgcolor_blue_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_bgcolor_fuchsia-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_bgcolor_fuchsia_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_bgcolor_gray-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_bgcolor_gray_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_bgcolor_green-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_bgcolor_green_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_bgcolor_lime-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_bgcolor_lime_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_bgcolor_maroon-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_bgcolor_maroon_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_bgcolor_navy-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_bgcolor_navy_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_bgcolor_olive-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_bgcolor_olive_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_bgcolor_purple-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_bgcolor_purple_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_bgcolor_red-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_bgcolor_red_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_bgcolor_silver-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_bgcolor_silver_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_bgcolor_teal-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_bgcolor_teal_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_bgcolor_white-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_bgcolor_white_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_bgcolor_yellow-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_bgcolor_yellow_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_valign_baseline-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_valign_bottom-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_valign_middle-expected.txt:
        * platform/win/tables/mozilla/marvin/tr_valign_top-expected.txt:
        * platform/win/tables/mozilla/marvin/x_caption_align_bottom-expected.txt:
        * platform/win/tables/mozilla/marvin/x_caption_align_top-expected.txt:
        * platform/win/tables/mozilla/marvin/x_col_align_char-expected.txt:
        * platform/win/tables/mozilla/marvin/x_col_span-expected.txt:
        * platform/win/tables/mozilla/marvin/x_col_valign_baseline-expected.txt:
        * platform/win/tables/mozilla/marvin/x_col_valign_bottom-expected.txt:
        * platform/win/tables/mozilla/marvin/x_col_valign_middle-expected.txt:
        * platform/win/tables/mozilla/marvin/x_col_valign_top-expected.txt:
        * platform/win/tables/mozilla/marvin/x_col_width_px-expected.txt:
        * platform/win/tables/mozilla/marvin/x_col_width_rel-expected.txt:
        * platform/win/tables/mozilla/marvin/x_colgroup_align_char-expected.txt:
        * platform/win/tables/mozilla/marvin/x_colgroup_span-expected.txt:
        * platform/win/tables/mozilla/marvin/x_colgroup_valign_baseline-expected.txt:
        * platform/win/tables/mozilla/marvin/x_colgroup_valign_bottom-expected.txt:
        * platform/win/tables/mozilla/marvin/x_colgroup_valign_middle-expected.txt:
        * platform/win/tables/mozilla/marvin/x_colgroup_valign_top-expected.txt:
        * platform/win/tables/mozilla/marvin/x_colgroup_width_rel-expected.txt:
        * platform/win/tables/mozilla/marvin/x_table-expected.txt:
        * platform/win/tables/mozilla/marvin/x_table_align_center-expected.txt:
        * platform/win/tables/mozilla/marvin/x_table_align_left-expected.txt:
        * platform/win/tables/mozilla/marvin/x_table_align_right-expected.txt:
        * platform/win/tables/mozilla/marvin/x_table_bgcolor_name-expected.txt:
        * platform/win/tables/mozilla/marvin/x_table_bgcolor_rgb-expected.txt:
        * platform/win/tables/mozilla/marvin/x_table_border-expected.txt:
        * platform/win/tables/mozilla/marvin/x_table_border_none-expected.txt:
        * platform/win/tables/mozilla/marvin/x_table_border_px-expected.txt:
        * platform/win/tables/mozilla/marvin/x_table_cellpadding-expected.txt:
        * platform/win/tables/mozilla/marvin/x_table_cellpadding_pct-expected.txt:
        * platform/win/tables/mozilla/marvin/x_table_cellspacing-expected.txt:
        * platform/win/tables/mozilla/marvin/x_table_cellspacing_pct-expected.txt:
        * platform/win/tables/mozilla/marvin/x_table_frame_void-expected.txt:
        * platform/win/tables/mozilla/marvin/x_table_rules_groups-expected.txt:
        * platform/win/tables/mozilla/marvin/x_table_rules_none-expected.txt:
        * platform/win/tables/mozilla/marvin/x_table_style-expected.txt:
        * platform/win/tables/mozilla/marvin/x_tbody_align_center-expected.txt:
        * platform/win/tables/mozilla/marvin/x_tbody_align_char-expected.txt:

2016-02-02  Alejandro G. Castro  <alex@igalia.com>

        [GTK][EFL] Upgrade OpenWebRTC dependency
        https://bugs.webkit.org/show_bug.cgi?id=153489

        Reviewed by Philippe Normand.

        Skiped the mediastream tests by default, until we have the code
        ready and gstreamer dependency is bumped.

        * platform/efl/TestExpectations:
        * platform/gtk/TestExpectations:

2016-02-01  Chris Dumez  <cdumez@apple.com>

        object.__lookupGetter__() / object.__lookupSetter__() does not work for native bindings
        https://bugs.webkit.org/show_bug.cgi?id=153765
        <rdar://problem/24439699>

        Reviewed by Oliver Hunt.

        Add layout tests to test that object.__lookupGetter__() / object.__lookupSetter__()
        works for native bindings.

        * js/lookupGetterGetter-native-bindings-expected.txt: Added.
        * js/lookupGetterGetter-native-bindings.html: Added.

2016-02-01  Chris Dumez  <cdumez@apple.com>

        Unreviewed, fix http/tests/security/cross-origin-window-property-access.html

        Update http/tests/security/cross-origin-window-property-access.html that was
        introduced in r196001 so that it does not assert on Mac DRT. Mac DRT asserts
        that testRunner.waitUntilDone() must be called *BEFORE* calling window.open().

        * http/tests/security/cross-origin-window-property-access.html:

2016-02-01  Chris Dumez  <cdumez@apple.com>

        Native Bindings Descriptors are Incomplete
        https://bugs.webkit.org/show_bug.cgi?id=140575
        <rdar://problem/19506502>

        Reviewed by Oliver Hunt.

        Add test coverage.

        * http/tests/security/cross-origin-window-property-access-expected.txt: Added.
        * http/tests/security/cross-origin-window-property-access.html: Added.
        * inspector/runtime/getProperties-expected.txt:
        * js/dom/native-bindings-descriptors-expected.txt: Added.
        * js/dom/native-bindings-descriptors.html: Added.
        * js/dom/native-bindings-descriptors2-expected.txt: Added.
        * js/dom/native-bindings-descriptors2.html: Added.
        * js/dom/native-bindings-descriptors3-expected.txt: Added.
        * js/dom/native-bindings-descriptors3.html: Added.
        * js/dom/native-bindings-descriptors4-expected.txt: Added.
        * js/dom/native-bindings-descriptors4.html: Added.
        * js/dom/native-bindings-descriptors5-expected.txt: Added.
        * js/dom/native-bindings-descriptors5.html: Added.

2016-02-01  Ryosuke Niwa  <rniwa@webkit.org>

        [GTK] [EFL] [AppleWin] Layout Test fast/shadow-dom/slot-removal-crash-2.html timeouts
        https://bugs.webkit.org/show_bug.cgi?id=153772

        Reviewed by Michael Catanzaro.

        Don't call wait untilDone if attachShadow is not available.

        * fast/shadow-dom/slot-removal-crash-2.html:

2016-02-01  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: High Level Memory Overview Instrument
        https://bugs.webkit.org/show_bug.cgi?id=153516
        <rdar://problem/24356378>

        Reviewed by Brian Burg.

        * inspector/memory/tracking-expected.txt: Added.
        * inspector/memory/tracking.html: Added.
        Basic test for the new domain tracking commands and events.

        * platform/efl/TestExpectations:
        * platform/gtk/TestExpectations:
        * platform/win/TestExpectations:
        Skip the directory on ports that have not implemented ENABLE(RESOURCE_USAGE).

2016-02-01  Ryan Haddad  <ryanhaddad@apple.com>

        Skipping http/tests/plugins/visible_plugins.html on Yosemite during investigation.
        https://bugs.webkit.org/show_bug.cgi?id=153752

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-02-01  Ryan Haddad  <ryanhaddad@apple.com>

        Marking imported/w3c/web-platform-tests/streams-api/readable-streams/garbage-collection-1.html as flaky on Mac debug
        https://bugs.webkit.org/show_bug.cgi?id=153781

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-02-01  Carlos Alberto Lopez Perez  <clopez@igalia.com>

        [GTK] Unreviewed GTK+ Gardening.

        * platform/efl/TestExpectations: Add fast/shadow-dom/slot-removal-crash-2.html timeout expectation.
        * platform/gtk/TestExpectations: Report and update a bunch of test expectations.
        * platform/win/TestExpectations: Add fast/shadow-dom/slot-removal-crash-2.html timeout expectation.

2016-02-01  Ryan Haddad  <ryanhaddad@apple.com>

        Marking imported/w3c/web-platform-tests/XMLHttpRequest/open-url-multi-window-4.htm as flaky on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=153336

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-02-01  Ryan Haddad  <ryanhaddad@apple.com>

        Marking http/tests/appcache/404-resource-with-slow-main-resource.php as flaky on ios-simulator-wk2
        https://bugs.webkit.org/show_bug.cgi?id=153503

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-02-01  Ryan Haddad  <ryanhaddad@apple.com>

        Marking fast/replaced/preferred-widths.html as flaky on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=153311

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-02-01  Ryan Haddad  <ryanhaddad@apple.com>

        Skip fast/shadow-dom/touch-event-ios.html on ios-simulator since touch events are not supported.
        https://bugs.webkit.org/show_bug.cgi?id=149592

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-02-01  Chris Dumez  <cdumez@apple.com>

        Move properties that use custom bindings to the prototype
        https://bugs.webkit.org/show_bug.cgi?id=153735

        Reviewed by Darin Adler.

        Rebaseline / update existing tests now that properties using custom
        bindings are on the prototype, as expected.

        * fast/mediastream/MediaStream-video-element-expected.txt:
        * fast/xmlhttprequest/xmlhttprequest-properties-prototype-expected.txt:
        * inspector/model/remote-object-get-properties-expected.txt:
        * js/dom/dom-attributes-on-mismatch-type-expected.txt:
        * js/dom/dom-attributes-on-mismatch-type.html:
        * platform/mac/inspector/model/remote-object-expected.txt:

2016-02-01  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        [Fetch API] Implement Fetch API Request
        https://bugs.webkit.org/show_bug.cgi?id=153437

        Reviewed by Darin Adler.

        * js/dom/global-constructors-attributes-dedicated-worker-expected.txt:
        * js/dom/global-constructors-attributes-expected.txt:
        * platform/efl/js/dom/global-constructors-attributes-dedicated-worker-expected.txt:
        * platform/efl/js/dom/global-constructors-attributes-expected.txt:
        * platform/gtk/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac-mavericks/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac/js/dom/global-constructors-attributes-expected.txt:
        * platform/win/js/dom/global-constructors-attributes-expected.txt:

2016-01-31  Jeremy Jones  <jeremyj@apple.com>

        Add resize event for HTMLMediaElement
        https://bugs.webkit.org/show_bug.cgi?id=125715

        Reviewed by Darin Adler.
        
        Update test for change: move resize javascript event from DOMWindow.idl to GlobalEventHandlers.idl
        per https://html.spec.whatwg.org/multipage/webappapis.html#globaleventhandlers

        * fast/dom/event-handler-attributes-expected.txt: Rebaselined.
        * fast/dom/event-handler-attributes.html:
            Move resize from uniqueWindowEvents to eventsInGlobalEventHandlers.
        * http/tests/media/hls/hls-video-resize-expected.txt: Added.
        * http/tests/media/hls/hls-video-resize.html: Added.
        * js/dom/dom-static-property-for-in-iteration-expected.txt: Rebaselined.
        * media/video-resize-expected.txt: Added.
        * media/video-resize.html: Added.
        * media/video-test.js:
        (requiredEvents): Deleted global. Value is now captured by closure.
        (waitForEventsAndCall): Remove dependence on global variable, and fix event observation leak.

2016-01-31  Brent Fulgham  <bfulgham@apple.com>

        Add "WebKit built-in PDF" Plugin to set of publicly visible plugins
        https://bugs.webkit.org/show_bug.cgi?id=153657
        <rdar://problem/24413107>

        Reviewed by Darin Adler.

        * http/tests/plugins/visible_plugins-expected.txt: Added.
        * http/tests/plugins/visible_plugins.html: Added.
        * platform/mac-wk2/http/tests/plugins: Added.
        * platform/mac-wk2/http/tests/plugins/visible_plugins-expected.txt: Added.

2016-01-31  Doug Russell  <d_russell@apple.com>

        AX: Add a boundary value to AXTextStateChangeType
        https://bugs.webkit.org/show_bug.cgi?id=153085

        Reviewed by Darin Adler.

        Post an AT notification when navigation is attempted past
        an editable element's boundaries.

        * accessibility/mac/selection-boundary-userinfo-expected.txt: Added.
        * accessibility/mac/selection-boundary-userinfo.html: Added.

2016-01-31  Daniel Bates  <dabates@apple.com>

        CSP: Use the served CSP header for dedicated workers
        https://bugs.webkit.org/show_bug.cgi?id=153157
        <rdar://problem/24383254>
        And
        https://bugs.webkit.org/show_bug.cgi?id=153156
        <rdar://problem/24383246>

        Reviewed by Brent Fulgham.

        Add new tests to ensure we block eval() in blob-, file-URL workers and block XHR in a file-URL worker.

        * TestExpectations: Remove now passing tests http/tests/security/contentSecurityPolicy/worker-{multiple-csp-headers, without-own-csp}.html
        and update the associated bug # for tests that fail.
        * fast/workers/resources/worker-inherits-csp-blocks-eval.js: Added.
        (catch):
        * fast/workers/resources/worker-inherits-csp-blocks-xhr.js: Added.
        (catch):
        * fast/workers/worker-inherits-csp-blocks-eval-expected.txt: Added.
        * fast/workers/worker-inherits-csp-blocks-eval.html: Added.
        * fast/workers/worker-inherits-csp-blocks-xhr-expected.txt: Added.
        * fast/workers/worker-inherits-csp-blocks-xhr.html: Added.
        * http/tests/security/contentSecurityPolicy/worker-blob-inherits-csp-blocks-eval-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/worker-blob-inherits-csp-blocks-eval.html: Added.
        * http/tests/security/contentSecurityPolicy/worker-multiple-csp-headers-expected.txt: Updated expected results as
        the result was incorrect.
        * http/tests/security/contentSecurityPolicy/worker-without-own-csp-expected.txt: Ditto.

2016-01-27  Daniel Bates  <dabates@apple.com>

        CSP: Use the served CSP header for dedicated workers
        https://bugs.webkit.org/show_bug.cgi?id=153157
        And
        https://bugs.webkit.org/show_bug.cgi?id=153156

        Reviewed by Brent Fulgham.

        Remove some tests that now pass and update the expected results of existing tests.

        * TestExpectations:
        * http/tests/security/contentSecurityPolicy/worker-multiple-csp-headers-expected.txt:
        * http/tests/security/contentSecurityPolicy/worker-without-own-csp-expected.txt:

2016-01-31  Hunseop Jeong  <hs85.jeong@samsung.com>

        Unreviewed. EFL gardening: rebaseline tests after r195740. (more to follow)

        * platform/efl/css1/basic/containment-expected.txt:
        * platform/efl/css1/basic/contextual_selectors-expected.txt:
        * platform/efl/css1/basic/grouping-expected.txt:
        * platform/efl/css1/basic/id_as_selector-expected.txt:
        * platform/efl/css1/basic/inheritance-expected.txt:
        * platform/efl/css1/box_properties/border-expected.txt:
        * platform/efl/css1/box_properties/border_bottom-expected.txt:
        * platform/efl/css1/box_properties/border_bottom_inline-expected.txt:
        * platform/efl/css1/box_properties/border_bottom_width-expected.txt:
        * platform/efl/css1/box_properties/border_bottom_width_inline-expected.txt:
        * platform/efl/css1/box_properties/border_color-expected.txt:
        * platform/efl/css1/box_properties/border_color_inline-expected.txt:
        * platform/efl/css1/box_properties/border_inline-expected.txt:
        * platform/efl/css1/box_properties/border_left-expected.txt:
        * platform/efl/css1/box_properties/border_left_inline-expected.txt:
        * platform/efl/css1/box_properties/border_left_width-expected.txt:
        * platform/efl/css1/box_properties/border_left_width_inline-expected.txt:
        * platform/efl/css1/box_properties/border_right-expected.txt:
        * platform/efl/css1/box_properties/border_right_inline-expected.txt:
        * platform/efl/css1/box_properties/border_right_width-expected.txt:
        * platform/efl/css1/box_properties/border_right_width_inline-expected.txt:
        * platform/efl/css1/box_properties/border_style-expected.txt:
        * platform/efl/css1/box_properties/border_style_inline-expected.txt:
        * platform/efl/css1/box_properties/border_top-expected.txt:
        * platform/efl/css1/box_properties/border_top_inline-expected.txt:
        * platform/efl/css1/box_properties/border_top_width-expected.txt:
        * platform/efl/css1/box_properties/border_top_width_inline-expected.txt:
        * platform/efl/css1/box_properties/clear-expected.txt:
        * platform/efl/css1/box_properties/clear_float-expected.txt:
        * platform/efl/css1/box_properties/float-expected.txt:
        * platform/efl/css1/box_properties/float_elements_in_series-expected.txt:
        * platform/efl/css1/box_properties/float_margin-expected.txt:
        * platform/efl/css1/box_properties/height-expected.txt:
        * platform/efl/css1/box_properties/margin-expected.txt:
        * platform/efl/css1/box_properties/margin_bottom-expected.txt:
        * platform/efl/css1/box_properties/margin_bottom_inline-expected.txt:
        * platform/efl/css1/box_properties/margin_inline-expected.txt:
        * platform/efl/css1/box_properties/margin_left-expected.txt:
        * platform/efl/css1/box_properties/margin_left_inline-expected.txt:
        * platform/efl/css1/box_properties/margin_right-expected.txt:
        * platform/efl/css1/box_properties/margin_right_inline-expected.txt:
        * platform/efl/css1/box_properties/margin_top-expected.txt:
        * platform/efl/css1/box_properties/margin_top_inline-expected.txt:
        * platform/efl/css1/box_properties/padding-expected.txt:
        * platform/efl/css1/box_properties/padding_bottom-expected.txt:
        * platform/efl/css1/box_properties/padding_bottom_inline-expected.txt:
        * platform/efl/css1/box_properties/padding_inline-expected.txt:
        * platform/efl/css1/box_properties/padding_left-expected.txt:
        * platform/efl/css1/box_properties/padding_left_inline-expected.txt:
        * platform/efl/css1/box_properties/padding_right-expected.txt:
        * platform/efl/css1/box_properties/padding_right_inline-expected.txt:
        * platform/efl/css1/box_properties/padding_top-expected.txt:
        * platform/efl/css1/box_properties/padding_top_inline-expected.txt:
        * platform/efl/css1/box_properties/width-expected.txt:
        * platform/efl/css1/cascade/cascade_order-expected.txt:
        * platform/efl/css1/cascade/important-expected.txt:
        * platform/efl/css1/classification/display-expected.txt:
        * platform/efl/css1/classification/list_style-expected.txt:
        * platform/efl/css1/classification/list_style_image-expected.txt:
        * platform/efl/css1/classification/list_style_position-expected.txt:
        * platform/efl/css1/classification/list_style_type-expected.txt:
        * platform/efl/css1/classification/white_space-expected.txt:
        * platform/efl/css1/color_and_background/background-expected.txt:
        * platform/efl/css1/color_and_background/background_attachment-expected.txt:
        * platform/efl/css1/color_and_background/background_color-expected.txt:
        * platform/efl/css1/color_and_background/background_image-expected.txt:
        * platform/efl/css1/color_and_background/background_position-expected.txt:
        * platform/efl/css1/color_and_background/background_repeat-expected.txt:
        * platform/efl/css1/color_and_background/color-expected.txt:
        * platform/efl/css1/conformance/forward_compatible_parsing-expected.txt:
        * platform/efl/css1/font_properties/font-expected.txt:
        * platform/efl/css1/font_properties/font_family-expected.txt:
        * platform/efl/css1/font_properties/font_size-expected.txt:
        * platform/efl/css1/font_properties/font_style-expected.txt:
        * platform/efl/css1/font_properties/font_variant-expected.txt:
        * platform/efl/css1/font_properties/font_weight-expected.txt:
        * platform/efl/css1/formatting_model/canvas-expected.txt:
        * platform/efl/css1/formatting_model/height_of_lines-expected.txt:
        * platform/efl/css1/formatting_model/inline_elements-expected.txt:
        * platform/efl/css1/formatting_model/replaced_elements-expected.txt:
        * platform/efl/css1/formatting_model/vertical_formatting-expected.txt:
        * platform/efl/css1/pseudo/anchor-expected.txt:
        * platform/efl/css1/pseudo/firstletter-expected.txt:
        * platform/efl/css1/pseudo/firstline-expected.txt:
        * platform/efl/css1/pseudo/multiple_pseudo_elements-expected.txt:
        * platform/efl/css1/pseudo/pseudo_elements_in_selectors-expected.txt:
        * platform/efl/css1/text_properties/letter_spacing-expected.txt:
        * platform/efl/css1/text_properties/line_height-expected.txt:
        * platform/efl/css1/text_properties/text_align-expected.txt:
        * platform/efl/css1/text_properties/text_decoration-expected.txt:
        * platform/efl/css1/text_properties/text_indent-expected.txt:
        * platform/efl/css1/text_properties/text_transform-expected.txt:
        * platform/efl/css1/text_properties/vertical_align-expected.txt:
        * platform/efl/css1/text_properties/word_spacing-expected.txt:
        * platform/efl/css1/units/color_units-expected.txt:
        * platform/efl/css1/units/length_units-expected.txt:
        * platform/efl/css1/units/percentage_units-expected.txt:
        * platform/efl/css1/units/urls-expected.txt:
        * platform/efl/css2.1/20110323/border-collapse-offset-002-expected.txt:
        * platform/efl/css2.1/20110323/border-conflict-style-079-expected.txt:
        * platform/efl/css2.1/20110323/border-conflict-style-088-expected.txt:
        * platform/efl/css2.1/20110323/dynamic-top-change-002-expected.txt:
        * platform/efl/css2.1/20110323/dynamic-top-change-003-expected.txt:
        * platform/efl/css2.1/20110323/inline-table-001-expected.txt:
        * platform/efl/css2.1/20110323/inline-table-002a-expected.txt:
        * platform/efl/css2.1/20110323/inline-table-003-expected.txt:
        * platform/efl/css2.1/20110323/margin-applies-to-001-expected.txt:
        * platform/efl/css2.1/20110323/margin-applies-to-002-expected.txt:
        * platform/efl/css2.1/20110323/margin-applies-to-003-expected.txt:
        * platform/efl/css2.1/20110323/margin-applies-to-004-expected.txt:
        * platform/efl/css2.1/20110323/margin-applies-to-005-expected.txt:
        * platform/efl/css2.1/20110323/margin-applies-to-006-expected.txt:
        * platform/efl/css2.1/20110323/margin-applies-to-007-expected.txt:
        * platform/efl/css2.1/20110323/margin-applies-to-013-expected.txt:
        * platform/efl/css2.1/20110323/margin-applies-to-014-expected.txt:
        * platform/efl/css2.1/20110323/margin-applies-to-015-expected.txt:
        * platform/efl/css2.1/20110323/replaced-intrinsic-ratio-001-expected.txt:
        * platform/efl/css2.1/20110323/table-caption-001-expected.txt:
        * platform/efl/css2.1/20110323/table-caption-optional-001-expected.txt:
        * platform/efl/css2.1/20110323/table-caption-optional-002-expected.txt:
        * platform/efl/css2.1/t040302-c61-ex-len-00-b-a-expected.txt:
        * platform/efl/css2.1/t0803-c5501-mrgn-t-00-b-a-expected.txt:
        * platform/efl/css2.1/t0803-c5503-mrgn-b-00-b-a-expected.txt:
        * platform/efl/css2.1/t0804-c5506-padn-t-00-b-a-expected.txt:
        * platform/efl/css2.1/t0804-c5508-ipadn-b-03-b-a-expected.txt:
        * platform/efl/css2.1/t090402-c42-ibx-pad-00-d-ag-expected.txt:
        * platform/efl/css2.1/t0905-c5525-fltmult-00-d-g-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-04-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-06-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-08-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-13-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-14-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-16-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-17-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-18-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-24-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-25-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-30-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-31-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-34-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-44-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-52-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-54-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-59-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-64-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-65-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-70-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-71-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-74-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-84-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-85-d-expected.txt:
        * platform/efl/css2.1/t170602-bdr-conflct-w-94-d-expected.txt:
        * platform/efl/css3/selectors3/html/css3-modsel-18-expected.txt:
        * platform/efl/css3/selectors3/html/css3-modsel-29-expected.txt:
        * platform/efl/css3/selectors3/html/css3-modsel-29b-expected.txt:
        * platform/efl/css3/selectors3/html/css3-modsel-33-expected.txt:
        * platform/efl/css3/selectors3/html/css3-modsel-73-expected.txt:
        * platform/efl/css3/selectors3/html/css3-modsel-73b-expected.txt:
        * platform/efl/css3/selectors3/html/css3-modsel-77-expected.txt:
        * platform/efl/css3/selectors3/html/css3-modsel-77b-expected.txt:
        * platform/efl/css3/selectors3/xhtml/css3-modsel-18-expected.txt:
        * platform/efl/css3/selectors3/xhtml/css3-modsel-29-expected.txt:
        * platform/efl/css3/selectors3/xhtml/css3-modsel-29b-expected.txt:
        * platform/efl/css3/selectors3/xhtml/css3-modsel-33-expected.txt:
        * platform/efl/css3/selectors3/xhtml/css3-modsel-73-expected.txt:
        * platform/efl/css3/selectors3/xhtml/css3-modsel-73b-expected.txt:
        * platform/efl/css3/selectors3/xhtml/css3-modsel-77-expected.txt:
        * platform/efl/css3/selectors3/xhtml/css3-modsel-77b-expected.txt:
        * platform/efl/css3/selectors3/xml/css3-modsel-18-expected.txt:
        * platform/efl/css3/selectors3/xml/css3-modsel-29-expected.txt:
        * platform/efl/css3/selectors3/xml/css3-modsel-29b-expected.txt:
        * platform/efl/css3/selectors3/xml/css3-modsel-33-expected.txt:
        * platform/efl/css3/selectors3/xml/css3-modsel-73-expected.txt:
        * platform/efl/css3/selectors3/xml/css3-modsel-73b-expected.txt:
        * platform/efl/css3/selectors3/xml/css3-modsel-77-expected.txt:
        * platform/efl/css3/selectors3/xml/css3-modsel-77b-expected.txt:
        * platform/efl/editing/deleting/4922367-expected.txt:
        * platform/efl/editing/deleting/5126166-expected.txt:
        * platform/efl/editing/deleting/5206311-1-expected.txt:
        * platform/efl/editing/deleting/5433862-2-expected.txt:
        * platform/efl/editing/inserting/paragraph-separator-in-table-1-expected.txt:
        * platform/efl/editing/selection/3690703-2-expected.txt:
        * platform/efl/editing/selection/3690703-expected.txt:
        * platform/efl/editing/selection/3690719-expected.txt:
        * platform/efl/editing/selection/5057506-2-expected.txt:
        * platform/efl/editing/selection/5057506-expected.txt:
        * platform/efl/editing/selection/5131716-1-expected.txt:
        * platform/efl/editing/selection/5131716-2-expected.txt:
        * platform/efl/editing/selection/5131716-3-expected.txt:
        * platform/efl/editing/selection/5131716-4-expected.txt:
        * platform/efl/editing/selection/move-by-line-001-expected.txt:
        * platform/efl/editing/selection/select-all-004-expected.txt:
        * platform/efl/editing/unsupported-content/table-type-after-expected.txt:
        * platform/efl/editing/unsupported-content/table-type-before-expected.txt:
        * platform/efl/fast/block/basic/016-expected.txt:
        * platform/efl/fast/block/basic/quirk-percent-height-table-cell-expected.txt:
        * platform/efl/fast/block/float/015-expected.txt:
        * platform/efl/fast/block/margin-collapse/006-expected.txt:
        * platform/efl/fast/block/margin-collapse/010-expected.txt:
        * platform/efl/fast/block/margin-collapse/011-expected.txt:
        * platform/efl/fast/block/margin-collapse/012-expected.txt:
        * platform/efl/fast/block/margin-collapse/015-expected.txt:
        * platform/efl/fast/block/margin-collapse/016-expected.txt:
        * platform/efl/fast/block/margin-collapse/017-expected.txt:
        * platform/efl/fast/block/margin-collapse/018-expected.txt:
        * platform/efl/fast/block/margin-collapse/019-expected.txt:
        * platform/efl/fast/block/margin-collapse/020-expected.txt:
        * platform/efl/fast/block/margin-collapse/021-expected.txt:
        * platform/efl/fast/block/margin-collapse/022-expected.txt:
        * platform/efl/fast/block/margin-collapse/025-expected.txt:
        * platform/efl/fast/block/margin-collapse/032-expected.txt:
        * platform/efl/fast/block/margin-collapse/033-expected.txt:
        * platform/efl/fast/block/margin-collapse/034-expected.txt:
        * platform/efl/fast/block/margin-collapse/041-expected.txt:
        * platform/efl/fast/block/margin-collapse/042-expected.txt:
        * platform/efl/fast/block/margin-collapse/055-expected.txt:
        * platform/efl/fast/block/margin-collapse/056-expected.txt:
        * platform/efl/fast/block/margin-collapse/057-expected.txt:
        * platform/efl/fast/block/margin-collapse/058-expected.txt:
        * platform/efl/fast/block/margin-collapse/059-expected.txt:
        * platform/efl/fast/block/margin-collapse/block-inside-inline/006-expected.txt:
        * platform/efl/fast/block/margin-collapse/block-inside-inline/010-expected.txt:
        * platform/efl/fast/block/margin-collapse/block-inside-inline/011-expected.txt:
        * platform/efl/fast/block/margin-collapse/block-inside-inline/012-expected.txt:
        * platform/efl/fast/block/margin-collapse/block-inside-inline/015-expected.txt:
        * platform/efl/fast/block/margin-collapse/block-inside-inline/016-expected.txt:
        * platform/efl/fast/block/margin-collapse/block-inside-inline/017-expected.txt:
        * platform/efl/fast/block/margin-collapse/block-inside-inline/018-expected.txt:
        * platform/efl/fast/block/margin-collapse/block-inside-inline/019-expected.txt:
        * platform/efl/fast/block/margin-collapse/block-inside-inline/020-expected.txt:
        * platform/efl/fast/block/margin-collapse/block-inside-inline/021-expected.txt:
        * platform/efl/fast/block/margin-collapse/block-inside-inline/022-expected.txt:
        * platform/efl/fast/block/margin-collapse/block-inside-inline/025-expected.txt:
        * platform/efl/fast/block/positioning/negative-right-pos-expected.txt:
        * platform/efl/fast/block/positioning/table-cell-static-position-expected.txt:
        * platform/efl/fast/borders/border-antialiasing-expected.txt:
        * platform/efl/fast/borders/border-radius-different-width-001-expected.txt:
        * platform/efl/fast/borders/table-borders-expected.txt:
        * platform/efl/fast/css-generated-content/first-letter-in-nested-before-expected.txt:
        * platform/efl/fast/css-generated-content/first-letter-in-nested-before-table-expected.txt:
        * platform/efl/fast/css-generated-content/nested-tables-with-before-after-content-crash-expected.txt:
        * platform/efl/fast/css-generated-content/table-cell-before-after-child-add-expected.txt:
        * platform/efl/fast/css-generated-content/table-parts-before-and-after-expected.txt:
        * platform/efl/fast/css-generated-content/table-row-group-with-before-expected.txt:
        * platform/efl/fast/css-generated-content/table-row-with-before-expected.txt:
        * platform/efl/fast/css-generated-content/table-with-before-expected.txt:
        * platform/efl/fast/css/003-expected.txt:
        * platform/efl/fast/css/absolute-poition-in-rtl-parent-expected.txt:
        * platform/efl/fast/css/acid2-expected.txt:
        * platform/efl/fast/css/acid2-pixel-expected.txt:
        * platform/efl/fast/css/bidi-override-in-anonymous-block-expected.txt:
        * platform/efl/fast/css/box-shadow-and-border-radius-expected.txt:
        * platform/efl/fast/css/caption-width-absolute-position-expected.txt:
        * platform/efl/fast/css/caption-width-absolute-position-offset-top-expected.txt:
        * platform/efl/fast/css/caption-width-fixed-position-expected.txt:
        * platform/efl/fast/css/caption-width-fixed-position-offset-top-expected.txt:
        * platform/efl/fast/css/caption-width-relative-position-expected.txt:
        * platform/efl/fast/css/caption-width-relative-position-offset-top-expected.txt:
        * platform/efl/fast/css/css3-nth-child-expected.txt:
        * platform/efl/fast/css/focus-ring-detached-expected.txt:
        * platform/efl/fast/css/focus-ring-multiline-expected.txt:
        * platform/efl/fast/css/h1-in-section-elements-expected.txt:
        * platform/efl/fast/css/image-rendering-expected.txt:
        * platform/efl/fast/css/min-width-with-spanned-cell-expected.txt:
        * platform/efl/fast/css/percentage-non-integer-expected.txt:
        * platform/efl/fast/css/table-text-align-quirk-expected.txt:
        * platform/efl/fast/css/table-text-align-strict-expected.txt:
        * platform/efl/fast/dom/34176-expected.txt:
        * platform/efl/fast/dom/HTMLTableElement/colSpan-expected.txt:
        * platform/efl/fast/dom/HTMLTableElement/createCaption-expected.txt:
        * platform/efl/fast/dom/row-inner-text-expected.txt:
        * platform/efl/fast/dynamic/001-expected.txt:
        * platform/efl/fast/dynamic/containing-block-change-expected.txt:
        * platform/efl/fast/dynamic/float-withdrawal-expected.txt:
        * platform/efl/fast/dynamic/insert-before-table-part-in-continuation-expected.txt:
        * platform/efl/fast/dynamic/subtree-table-cell-height-expected.txt:
        * platform/efl/fast/encoding/utf-16-big-endian-expected.txt:
        * platform/efl/fast/encoding/utf-16-little-endian-expected.txt:
        * platform/efl/fast/forms/001-expected.txt:
        * platform/efl/fast/forms/005-expected.txt:
        * platform/efl/fast/forms/basic-buttons-expected.txt:
        * platform/efl/fast/forms/form-element-geometry-expected.txt:
        * platform/efl/fast/forms/form-hides-table-expected.txt:
        * platform/efl/fast/forms/form-in-malformed-markup-expected.txt:
        * platform/efl/fast/forms/formmove3-expected.txt:
        * platform/efl/fast/forms/input-table-expected.txt:
        * platform/efl/fast/forms/listbox-bidi-align-expected.txt:
        * platform/efl/fast/forms/preserveFormDuringResidualStyle-expected.txt:
        * platform/efl/fast/forms/select-dirty-parent-pref-widths-expected.txt:
        * platform/efl/fast/html/details-writing-mode-expected.txt:
        * platform/efl/fast/inline-block/001-expected.txt:
        * platform/efl/fast/inline-block/overflow-clip-expected.txt:
        * platform/efl/fast/invalid/012-expected.txt:
        * platform/efl/fast/invalid/018-expected.txt:
        * platform/efl/fast/lists/004-expected.txt:
        * platform/efl/fast/lists/list-marker-before-content-table-expected.txt:
        * platform/efl/fast/multicol/span/before-child-anonymous-column-block-expected.txt:
        * platform/efl/fast/overflow/002-expected.txt:
        * platform/efl/fast/overflow/overflow-rtl-expected.txt:
        * platform/efl/fast/overflow/overflow-rtl-vertical-expected.txt:
        * platform/efl/fast/overflow/table-overflow-float-expected.txt:
        * platform/efl/fast/reflections/table-cell-expected.txt:
        * platform/efl/fast/repaint/block-selection-gap-in-table-cell-expected.txt:
        * platform/efl/fast/repaint/float-overflow-expected.txt:
        * platform/efl/fast/repaint/float-overflow-right-expected.txt:
        * platform/efl/fast/repaint/subtree-root-clip-3-expected.txt:
        * platform/efl/fast/repaint/table-cell-collapsed-border-expected.txt:
        * platform/efl/fast/repaint/table-cell-collapsed-border-scroll-expected.txt:
        * platform/efl/fast/repaint/table-cell-move-expected.txt:
        * platform/efl/fast/repaint/table-cell-overflow-expected.txt:
        * platform/efl/fast/repaint/table-cell-vertical-overflow-expected.txt:
        * platform/efl/fast/repaint/table-col-background-expected.txt:
        * platform/efl/fast/repaint/table-collapsed-border-expected.txt:
        * platform/efl/fast/repaint/table-extra-bottom-grow-expected.txt:
        * platform/efl/fast/repaint/table-outer-border-expected.txt:
        * platform/efl/fast/repaint/table-row-expected.txt:
        * platform/efl/fast/repaint/table-section-overflow-expected.txt:
        * platform/efl/fast/repaint/table-section-repaint-expected.txt:
        * platform/efl/fast/repaint/table-two-pass-layout-overpaint-expected.txt:
        * platform/efl/fast/repaint/table-writing-modes-h-expected.txt:
        * platform/efl/fast/repaint/table-writing-modes-v-expected.txt:

2016-01-30  Commit Queue  <commit-queue@webkit.org>

        Unreviewed, rolling out r195799 and r195828.
        https://bugs.webkit.org/show_bug.cgi?id=153722

        Caused assertion failures, severely affecting EWS (Requested
        by ap on #webkit).

        Reverted changesets:

        "Web Inspector: InspectorTimelineAgent doesn't need to
        recompile functions because it now uses the sampling profiler"
        https://bugs.webkit.org/show_bug.cgi?id=153500
        http://trac.webkit.org/changeset/195799

        "Attempt to fix the Windows build after r195799"
        http://trac.webkit.org/changeset/195828

2016-01-30  Brady Eidson  <beidson@apple.com>

        Modern IDB: Some tests crash with specific odd database names.
        https://bugs.webkit.org/show_bug.cgi?id=153688

        Reviewed by Darin Adler.

        * platform/mac-wk1/TestExpectations:

2016-01-30  Eric Carlson  <eric.carlson@apple.com>

        More than one audio and/or text track sometimes selected in media controls menu
        https://bugs.webkit.org/show_bug.cgi?id=153664

        Reviewed by Jer Noble.

        * media/controls/controls-test-helpers.js:
        (ControlsTest.prototype.get currentState):
        (ControlsTest.prototype.get video):
        (ControlsTest.prototype.stateForControlsElement):
        (ControlsTest.prototype.handleEvent):
        (ControlsTest.prototype.setup):
        (ControlsTest.prototype.start):
        (ControlsTest.prototype.isEqualTo):
        (ControlsTest.prototype.isNotEqualTo):
        (ControlsTest.prototype.contains):
        * media/controls/track-menu-expected.txt: Added.
        * media/controls/track-menu.html: Added.

2016-01-30  Chris Dumez  <cdumez@apple.com>

        [JS Bindings] prototype.constructor should be writable
        https://bugs.webkit.org/show_bug.cgi?id=149412
        <rdar://problem/22545096>

        Reviewed by Darin Adler.

        * fast/dom/HTMLDocument/constructor-setter-crash-expected.txt: Added.
        * fast/dom/HTMLDocument/constructor-setter-crash.html: Added.
        Add regression test for crash at <rdar://problem/22825602>.

        * fast/dom/prototype-constructor-setter-expected.txt: Added.
        * fast/dom/prototype-constructor-setter.html: Added.
        Add new test checking that prototype.constructor is writable.

        * js/dom/constructor-attributes-expected.txt:
        Rebaseline existing test now that prototype.constructor is writable.

2016-01-30  Chris Dumez  <cdumez@apple.com>

        Move more 'constructor' properties to the prototype
        https://bugs.webkit.org/show_bug.cgi?id=153667

        Reviewed by Darin Adler.

        Rebaseline a couple of tests now that 'constructor' is on the prototype
        for more interfaces.

        * fast/dom/htmlcollection-getownpropertynames-expected.txt:
        * storage/domstorage/localstorage/delete-defineproperty-removal-expected.txt:

2016-01-30  Ryosuke Niwa  <rniwa@webkit.org>

        TouchList should be retargeted
        https://bugs.webkit.org/show_bug.cgi?id=149592

        Reviewed by Antti Koivisto.

        Added a regression test for retargeting touch targets on iOS.

        * fast/shadow-dom/touch-event-ios-expected.txt: Added.
        * fast/shadow-dom/touch-event-ios.html: Added.
        * platform/mac/TestExpectations: Added the failing expectation on Mac since touch support is not enabled.

2016-01-30  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] Two disk cache tests are failing

        Unreviewed gardening.

        * platform/gtk/TestExpectations:

2016-01-30  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] Some W3C DOM tests are failing

        Unreviewed gardening.

        * platform/gtk/TestExpectations:

2016-01-30  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] IndexedDB expectations gardening

        Unreviewed gardening.

        * platform/gtk/TestExpectations:

2016-01-30  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] platform/gtk/scrollbars/overflow-scrollbar-horizontal-wheel-scroll.html is failing

        Unreviewed gardening.

        * platform/gtk/TestExpectations:

2016-01-30  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] Some organization in the test expectations file

        Unreviewed.

        * platform/gtk/TestExpectations:

2016-01-30  Dave Hyatt  <hyatt@apple.com>

        Support break-after, break-before and break-inside.
        https://bugs.webkit.org/show_bug.cgi?id=148814

        Reviewed by Dean Jackson.

        * TestExpectations:
        * fast/multicol/standardized-break-properties-expected.txt: Added.
        * fast/multicol/standardized-break-properties.html: Added.
        * fast/multicol/vertical-lr/standardized-break-properties-expected.txt: Added.
        * fast/multicol/vertical-lr/standardized-break-properties.html: Added.
        * fast/multicol/vertical-rl/standardized-break-properties-expected.txt: Added.
        * fast/multicol/vertical-rl/standardized-break-properties.html: Added.
        * fast/regions/text-break-properties-expected.txt: Added.
        * fast/regions/text-break-properties.html: Added.
        * printing/allowed-breaks-expected.txt: Added.
        * printing/allowed-breaks.html: Added.
        * printing/break-after-avoid-expected.txt: Added.
        * printing/break-after-avoid-page-expected.txt: Added.
        * printing/break-after-avoid-page.html: Added.
        * printing/break-after-avoid.html: Added.
        * printing/break-always-expected.txt: Added.
        * printing/break-always.html: Added.
        * printing/break-avoid-expected.txt: Added.
        * printing/break-avoid-page-expected.txt: Added.
        * printing/break-avoid-page.html: Added.
        * printing/break-avoid.html: Added.
        * printing/break-display-none-expected.txt: Added.
        * printing/break-display-none.html: Added.
        * printing/break-inside-avoid-expected.txt: Added.
        * printing/break-inside-avoid-page-expected.txt: Added.
        * printing/break-inside-avoid-page.html: Added.
        * printing/break-inside-avoid.html: Added.
        * printing/script-tests/allowed-breaks.js: Added.
        (test):
        * printing/script-tests/break-after-avoid-page.js: Added.
        (test):
        * printing/script-tests/break-after-avoid.js: Added.
        (test):
        * printing/script-tests/break-always.js: Added.
        (test):
        * printing/script-tests/break-avoid-page.js: Added.
        (test):
        * printing/script-tests/break-avoid.js: Added.
        (test):
        * printing/script-tests/break-display-none.js: Added.
        (test):
        * printing/script-tests/break-inside-avoid-page.js: Added.
        (test):
        * printing/script-tests/break-inside-avoid.js: Added.
        (test):

2016-01-29  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] Mark two CSS multicolumn tests as failing

        Unreviewed test gardening.

        * platform/gtk/TestExpectations:

2016-01-29  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] Mark two scrollbar tests as crashing

        Unreviewed test gardening.

        * platform/gtk/TestExpectations:

2016-01-29  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] Really mark imported/blink/fast/css/first-letter-float-block.html as crashing

        Unreviewed test gardening. Copypaste error in the previous commit.

        * platform/gtk/TestExpectations:

2016-01-29  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] Mark imported/blink/fast/css/first-letter-float-block.html as crashing

        Unreviewed test gardening.

        * platform/gtk/TestExpectations:

2016-01-29  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] Mark some accessibility role tests as failing

        Unreviewed test gardening.

        * platform/gtk/TestExpectations:

2016-01-29  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] Mark some content security policy tests as failing

        Unreviewed test gardening.

        * platform/gtk/TestExpectations:

2016-01-29  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] Mark Ruby expansion tests as failing

        Unreviewed test gardening.

        * platform/gtk/TestExpectations:

2016-01-29  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] Add expectations for media source SourceBuffer tests

        Unreviewed test gardening.

        * platform/gtk/http/tests/media/media-source/SourceBuffer-abort-expected.txt: Added.
        * platform/gtk/http/tests/media/media-source/SourceBuffer-abort-readyState-expected.txt: Added.
        * platform/gtk/http/tests/media/media-source/SourceBuffer-abort-removed-expected.txt: Added.
        * platform/gtk/http/tests/media/media-source/SourceBuffer-abort-updating-expected.txt: Added.

2016-01-29  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline fast/block/basic/016.html for ios-simulator after r195740

        Unreviewed test gardening.

        * platform/ios-simulator/fast/block/basic/016-expected.txt:

2016-01-29  Ryan Haddad  <ryanhaddad@apple.com>

        Last commit should have marked fast/text/fallback-language-han-2.html as an ImageOnlyFailure. Fixing that.
        https://bugs.webkit.org/show_bug.cgi?id=152438

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-01-29  Ryan Haddad  <ryanhaddad@apple.com>

        Mark fast/text/fallback-language-han-2.html as failing on ios-simulator.
        https://bugs.webkit.org/show_bug.cgi?id=152438

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-01-29  Ryan Haddad  <ryanhaddad@apple.com>

        Marking two WPT dom-tree-accessors/document.getElementsByName tests as failing on ios-simulator.
        https://bugs.webkit.org/show_bug.cgi?id=153370

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-01-29  Ryan Haddad  <ryanhaddad@apple.com>

        Marking webarchive/loading/object.html as flaky on ios-simulator-wk2
        https://bugs.webkit.org/show_bug.cgi?id=153380

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/TestExpectations:

2016-01-29  Ryan Haddad  <ryanhaddad@apple.com>

        Marking all displaylists tests as flaky on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=153656

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-01-29  Ryan Haddad  <ryanhaddad@apple.com>

        Marking fast/parser/external-entities-in-xslt.xml as flaky on El Capitan
        https://bugs.webkit.org/show_bug.cgi?id=153683

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-01-29  Ryosuke Niwa  <rniwa@webkit.org>

        fast/shadow-dom/Element-interface-attachShadow.html fails on iOS
        https://bugs.webkit.org/show_bug.cgi?id=153681

        Reviewed by Antti Koivisto.

        Enable shadow DOM and custom elements tests on iOS; matches that's in platform/mac/TestExpectations.

        * platform/ios-simulator/TestExpectations:

2016-01-29  Ryan Haddad  <ryanhaddad@apple.com>

        Missed one rebaseline for ios-simulator after r195740 in the last patch.

        Unreviewed test gardening.

        * platform/ios-simulator/fast/forms/form-in-malformed-markup-expected.txt:

2016-01-29  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaselining tests on ios-simulator after r195740

        Unreviewed test gardning.

        * platform/ios-simulator-wk2/editing/inserting/paragraph-separator-in-table-1-expected.txt: Removed.
        * platform/ios-simulator/compositing/contents-opaque/table-parts-expected.txt:
        * platform/ios-simulator/fast/text/emoji-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/colgroup_align_center-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/colgroup_align_justify-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/colgroup_align_left-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/colgroup_align_right-expected.txt:

2016-01-29  Brady Eidson  <beidson@apple.com>

        Unreviewed test gardening.

        * platform/mac-wk1/TestExpectations: Break out some IDB failures with better descriptions.

2016-01-29  Brady Eidson  <beidson@apple.com>

        Modern IDB: Getting records for key ranges with null keys aren't properly handled in SQLite backend
        https://bugs.webkit.org/show_bug.cgi?id=153666

        Reviewed by Tim Horton.

        * platform/mac-wk1/TestExpectations:

2016-01-29  Simon Fraser  <simon.fraser@apple.com>

        image-rendering: -webkit-optimize-contrast not working for background images
        https://bugs.webkit.org/show_bug.cgi?id=97991

        Reviewed by Darin Adler.

        * fast/images/image-rendering-interpolation-expected.html: Added.
        * fast/images/image-rendering-interpolation.html: Added.

2016-01-29  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/modern/index-3.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=153661

        Reviewed by Tim Horton.

        * platform/mac-wk1/TestExpectations:

2015-12-22  Pranjal Jumde  <pjumde@apple.com>

        Test to check for stack recursion when indexed propertyNames defined using Object.defineProperty are deleted.
        https://bugs.webkit.org/show_bug.cgi?id=149179
        <rdar://problem/22708019>.

        Reviewed by Dean Jackson.

        * storage/domstorage/localstorage/delete-defineproperty-removal-expected.txt: Added.
        * storage/domstorage/localstorage/delete-defineproperty-removal.html: Added.

2016-01-29  Brent Fulgham  <bfulgham@apple.com>

        [WebGL] Check vertex array bounds before permitting a glDrawArrays to execute
        https://bugs.webkit.org/show_bug.cgi?id=153643
        <rdar://problem/23424456>

        Reviewed by Dean Jackson.

        * fast/canvas/webgl/webgl-drawarrays-crash-expected.txt: Added.
        * fast/canvas/webgl/webgl-drawarrays-crash.html: Added.

2016-01-29  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline fast/forms tests after r195700
        https://bugs.webkit.org/show_bug.cgi?id=153618

        Unreviewed test gardening.

        * fast/forms/date/ValidityState-rangeOverflow-date-expected.txt:
        * fast/forms/date/ValidityState-rangeUnderflow-date-expected.txt:
        * fast/forms/datetimelocal/ValidityState-rangeOverflow-datetimelocal-expected.txt:
        * fast/forms/datetimelocal/ValidityState-rangeUnderflow-datetimelocal-expected.txt:
        * fast/forms/month/ValidityState-rangeOverflow-month-expected.txt:
        * fast/forms/month/ValidityState-rangeUnderflow-month-expected.txt:
        * fast/forms/time/time-validity-rangeoverflow-expected.txt:
        * fast/forms/time/time-validity-rangeunderflow-expected.txt:
        * fast/forms/week/ValidityState-rangeOverflow-week-expected.txt:
        * fast/forms/week/ValidityState-rangeUnderflow-week-expected.txt:

2016-01-29  Brady Eidson  <beidson@apple.com>

        Modern IDB: Fix logging that overwhelms python with strings of excessive length.
        https://bugs.webkit.org/show_bug.cgi?id=153652

        Reviewed by Tim Horton.

        * platform/mac-wk1/TestExpectations:

2016-01-29  Saam barati  <sbarati@apple.com>

        Exits from exceptions shouldn't jettison code
        https://bugs.webkit.org/show_bug.cgi?id=153564

        Reviewed by Geoffrey Garen.

        * js/regress/script-tests/v8-raytrace-with-try-catch-high-frequency-throws.js: Added.
        (randomException):
        (Class.create):
        (Object.extend):
        (Flog.RayTracer.Color.prototype.initialize):
        (Flog.RayTracer.Color.prototype.add):
        (Flog.RayTracer.Color.prototype.addScalar):
        (Flog.RayTracer.Color.prototype.subtract):
        (Flog.RayTracer.Color.prototype.multiply):
        (Flog.RayTracer.Color.prototype.multiplyScalar):
        (Flog.RayTracer.Color.prototype.divideFactor):
        (Flog.RayTracer.Color.prototype.limit):
        (Flog.RayTracer.Color.prototype.distance):
        (Flog.RayTracer.Color.prototype.blend):
        (Flog.RayTracer.Color.prototype.brightness):
        (Flog.RayTracer.Color.prototype.toString):
        (Flog.RayTracer.Light.prototype.initialize):
        (Flog.RayTracer.Light.prototype.toString):
        (Flog.RayTracer.Vector.prototype.initialize):
        (Flog.RayTracer.Vector.prototype.copy):
        (Flog.RayTracer.Vector.prototype.normalize):
        (Flog.RayTracer.Vector.prototype.magnitude):
        (Flog.RayTracer.Vector.prototype.cross):
        (Flog.RayTracer.Vector.prototype.dot):
        (Flog.RayTracer.Vector.prototype.add):
        (Flog.RayTracer.Vector.prototype.subtract):
        (Flog.RayTracer.Vector.prototype.multiplyVector):
        (Flog.RayTracer.Vector.prototype.multiplyScalar):
        (Flog.RayTracer.Vector.prototype.toString):
        (Flog.RayTracer.Ray.prototype.initialize):
        (Flog.RayTracer.Ray.prototype.toString):
        (Flog.RayTracer.Scene.prototype.initialize):
        (Flog.RayTracer.Material.BaseMaterial.prototype.initialize):
        (Flog.RayTracer.Material.BaseMaterial.prototype.getColor):
        (Flog.RayTracer.Material.BaseMaterial.prototype.wrapUp):
        (Flog.RayTracer.Material.BaseMaterial.prototype.toString):
        (Flog.RayTracer.Material.Solid.prototype.Object.extend.new.Flog.RayTracer.Material.BaseMaterial.initialize):
        (Flog.RayTracer.Material.Solid.prototype.Object.extend.new.Flog.RayTracer.Material.BaseMaterial.getColor):
        (Flog.RayTracer.Material.Solid.prototype.Object.extend.new.Flog.RayTracer.Material.BaseMaterial.toString):
        (Flog.RayTracer.Material.Solid.prototype.Object.extend.new.Flog.RayTracer.Material.BaseMaterial):
        (Flog.RayTracer.Material.Chessboard.prototype.Object.extend.new.Flog.RayTracer.Material.BaseMaterial.initialize):
        (Flog.RayTracer.Material.Chessboard.prototype.Object.extend.new.Flog.RayTracer.Material.BaseMaterial.getColor):
        (Flog.RayTracer.Material.Chessboard.prototype.Object.extend.new.Flog.RayTracer.Material.BaseMaterial.toString):
        (Flog.RayTracer.Material.Chessboard.prototype.Object.extend.new.Flog.RayTracer.Material.BaseMaterial):
        (Flog.RayTracer.Shape.Sphere.prototype.initialize):
        (Flog.RayTracer.Shape.Sphere.prototype.intersect):
        (Flog.RayTracer.Shape.Sphere.prototype.toString):
        (Flog.RayTracer.Shape.Plane.prototype.initialize):
        (Flog.RayTracer.Shape.Plane.prototype.intersect):
        (Flog.RayTracer.Shape.Plane.prototype.toString):
        (Flog.RayTracer.IntersectionInfo.prototype.initialize):
        (Flog.RayTracer.IntersectionInfo.prototype.toString):
        (Flog.RayTracer.Camera.prototype.initialize):
        (Flog.RayTracer.Camera.prototype.getRay):
        (Flog.RayTracer.Camera.prototype.toString):
        (Flog.RayTracer.Background.prototype.initialize):
        (Flog.RayTracer.Engine.prototype.initialize):
        (Flog.RayTracer.Engine.prototype.setPixel):
        (Flog.RayTracer.Engine.prototype.renderScene):
        (Flog.RayTracer.Engine.prototype.getPixelColor):
        (Flog.RayTracer.Engine.prototype.testIntersection):
        (Flog.RayTracer.Engine.prototype.getReflectionRay):
        (Flog.RayTracer.Engine.prototype.rayTrace):
        (renderScene):
        * js/regress/v8-raytrace-with-try-catch-high-frequency-throws-expected.txt: Added.
        * js/regress/v8-raytrace-with-try-catch-high-frequency-throws.html: Added.

2016-01-29  Carlos Alberto Lopez Perez  <clopez@igalia.com>

        [GTK] Unreviewed gardening after r195740 (v2).
        https://bugs.webkit.org/show_bug.cgi?id=153654

        Rebaseline another 652 tests after r195740.
        Unreviewed.

        * platform/gtk/accessibility/table-attributes-expected.txt:
        * platform/gtk/accessibility/table-cell-spans-expected.txt:
        * platform/gtk/accessibility/table-cells-expected.txt:
        * platform/gtk/accessibility/table-sections-expected.txt:
        * platform/gtk/accessibility/table-with-rules-expected.txt:
        * platform/gtk/css2.1/20110323/inline-table-002a-expected.txt:
        * platform/gtk/css2.1/20110323/table-height-algorithm-023-expected.txt:
        * platform/gtk/css2.1/20110323/table-height-algorithm-024-expected.txt:
        * platform/gtk/css2.1/t0805-c5511-brdr-tw-00-b-expected.txt:
        * platform/gtk/css2.1/t0805-c5513-brdr-bw-00-b-expected.txt:
        * platform/gtk/css2.1/t0805-c5518-brdr-t-01-e-expected.png:
        * platform/gtk/css2.1/t0805-c5518-brdr-t-01-e-expected.txt:
        * platform/gtk/css2.1/t0805-c5519-brdr-r-01-e-expected.txt:
        * platform/gtk/css2.1/t0805-c5520-brdr-b-01-e-expected.png:
        * platform/gtk/css2.1/t0805-c5520-brdr-b-01-e-expected.txt:
        * platform/gtk/css2.1/t0805-c5521-brdr-l-01-e-expected.txt:
        * platform/gtk/css2.1/t0805-c5522-brdr-02-e-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-00-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-00-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-01-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-01-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-02-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-02-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-03-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-03-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-05-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-05-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-07-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-07-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-09-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-09-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-10-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-10-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-11-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-11-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-12-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-12-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-15-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-15-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-19-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-19-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-20-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-20-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-21-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-21-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-22-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-22-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-23-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-23-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-26-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-26-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-27-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-27-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-28-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-28-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-29-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-29-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-32-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-32-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-33-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-33-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-35-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-35-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-36-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-36-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-37-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-37-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-38-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-38-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-39-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-39-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-40-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-40-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-41-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-41-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-42-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-42-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-43-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-43-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-45-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-45-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-46-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-46-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-47-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-47-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-48-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-48-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-49-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-49-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-50-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-50-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-51-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-51-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-53-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-53-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-55-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-55-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-56-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-56-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-57-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-57-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-58-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-58-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-60-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-60-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-61-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-61-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-62-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-62-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-63-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-63-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-66-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-66-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-67-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-67-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-68-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-68-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-69-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-69-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-72-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-72-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-73-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-73-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-75-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-75-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-76-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-76-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-77-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-77-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-78-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-78-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-79-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-79-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-80-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-80-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-81-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-81-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-82-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-82-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-83-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-83-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-86-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-86-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-87-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-87-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-88-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-88-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-89-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-89-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-90-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-90-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-91-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-91-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-92-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-92-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-93-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-93-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-95-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-95-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-96-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-96-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-97-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-97-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-98-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-98-d-expected.txt:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-99-d-expected.png:
        * platform/gtk/css2.1/t170602-bdr-conflct-w-99-d-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-015-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-015-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-016-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-016-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-023-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-023-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-024-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-024-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-035-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-035-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-036-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-036-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-037-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-037-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-038-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-038-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-045-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-045-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-046-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-046-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-047-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-047-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-048-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-048-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-049-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-049-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-050-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-050-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-055-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-055-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-056-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-056-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-091-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-091-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-092-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-092-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-099-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-099-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-100-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-100-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-103-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-103-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-104-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-104-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-105-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-105-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-106-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-106-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-107-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-107-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-108-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-108-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-109-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-109-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-110-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-110-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-111-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-111-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-112-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-112-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-113-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-113-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-114-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-114-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-123-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-123-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-124-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-124-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-139-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-139-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-140-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-140-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-149-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-149-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-150-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-150-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-155-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-155-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-156-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-156-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-159-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-159-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-160-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-160-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-165-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-165-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-166-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-166-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-207-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-207-expected.txt:
        * platform/gtk/css2.1/tables/table-anonymous-objects-208-expected.png: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-208-expected.txt:
        * platform/gtk/css3/flexbox/flexbox-baseline-expected.txt:
        * platform/gtk/css3/selectors3/html/css3-modsel-161-expected.png:
        * platform/gtk/css3/selectors3/html/css3-modsel-161-expected.txt:
        * platform/gtk/css3/selectors3/html/css3-modsel-18b-expected.txt:
        * platform/gtk/css3/selectors3/html/css3-modsel-28-expected.png:
        * platform/gtk/css3/selectors3/html/css3-modsel-28-expected.txt:
        * platform/gtk/css3/selectors3/html/css3-modsel-28b-expected.png:
        * platform/gtk/css3/selectors3/html/css3-modsel-28b-expected.txt:
        * platform/gtk/css3/selectors3/html/css3-modsel-32-expected.png:
        * platform/gtk/css3/selectors3/html/css3-modsel-32-expected.txt:
        * platform/gtk/css3/selectors3/html/css3-modsel-43-expected.txt:
        * platform/gtk/css3/selectors3/html/css3-modsel-43b-expected.txt:
        * platform/gtk/css3/selectors3/html/css3-modsel-44-expected.txt:
        * platform/gtk/css3/selectors3/html/css3-modsel-44b-expected.txt:
        * platform/gtk/css3/selectors3/html/css3-modsel-74-expected.png:
        * platform/gtk/css3/selectors3/html/css3-modsel-74-expected.txt:
        * platform/gtk/css3/selectors3/html/css3-modsel-74b-expected.png:
        * platform/gtk/css3/selectors3/html/css3-modsel-74b-expected.txt:
        * platform/gtk/css3/selectors3/html/css3-modsel-78-expected.png:
        * platform/gtk/css3/selectors3/html/css3-modsel-78-expected.txt:
        * platform/gtk/css3/selectors3/html/css3-modsel-78b-expected.png:
        * platform/gtk/css3/selectors3/html/css3-modsel-78b-expected.txt:
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-161-expected.png:
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-161-expected.txt:
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-18b-expected.txt:
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-28-expected.png:
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-28-expected.txt:
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-28b-expected.png:
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-28b-expected.txt:
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-32-expected.png:
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-32-expected.txt:
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-43-expected.txt:
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-43b-expected.txt:
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-44-expected.txt:
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-44b-expected.txt:
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-74-expected.png:
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-74-expected.txt:
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-74b-expected.png:
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-74b-expected.txt:
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-78-expected.png:
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-78-expected.txt:
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-78b-expected.png:
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-78b-expected.txt:
        * platform/gtk/css3/selectors3/xml/css3-modsel-161-expected.png:
        * platform/gtk/css3/selectors3/xml/css3-modsel-161-expected.txt:
        * platform/gtk/css3/selectors3/xml/css3-modsel-18b-expected.txt:
        * platform/gtk/css3/selectors3/xml/css3-modsel-28-expected.png:
        * platform/gtk/css3/selectors3/xml/css3-modsel-28-expected.txt:
        * platform/gtk/css3/selectors3/xml/css3-modsel-28b-expected.png:
        * platform/gtk/css3/selectors3/xml/css3-modsel-28b-expected.txt:
        * platform/gtk/css3/selectors3/xml/css3-modsel-32-expected.png:
        * platform/gtk/css3/selectors3/xml/css3-modsel-32-expected.txt:
        * platform/gtk/css3/selectors3/xml/css3-modsel-43-expected.txt:
        * platform/gtk/css3/selectors3/xml/css3-modsel-43b-expected.txt:
        * platform/gtk/css3/selectors3/xml/css3-modsel-44-expected.txt:
        * platform/gtk/css3/selectors3/xml/css3-modsel-44b-expected.txt:
        * platform/gtk/css3/selectors3/xml/css3-modsel-74-expected.png:
        * platform/gtk/css3/selectors3/xml/css3-modsel-74-expected.txt:
        * platform/gtk/css3/selectors3/xml/css3-modsel-74b-expected.png:
        * platform/gtk/css3/selectors3/xml/css3-modsel-74b-expected.txt:
        * platform/gtk/css3/selectors3/xml/css3-modsel-78-expected.png:
        * platform/gtk/css3/selectors3/xml/css3-modsel-78-expected.txt:
        * platform/gtk/css3/selectors3/xml/css3-modsel-78b-expected.png:
        * platform/gtk/css3/selectors3/xml/css3-modsel-78b-expected.txt:
        * platform/gtk/editing/deleting/5099303-expected.png:
        * platform/gtk/editing/deleting/5099303-expected.txt:
        * platform/gtk/editing/deleting/5483370-expected.png:
        * platform/gtk/editing/deleting/5483370-expected.txt:
        * platform/gtk/editing/deleting/delete-to-select-table-expected.png:
        * platform/gtk/editing/deleting/delete-to-select-table-expected.txt:
        * platform/gtk/editing/deleting/table-cells-expected.png:
        * platform/gtk/editing/deleting/table-cells-expected.txt:
        * platform/gtk/editing/execCommand/5481523-expected.png:
        * platform/gtk/editing/execCommand/5481523-expected.txt:
        * platform/gtk/editing/inserting/5058163-1-expected.png:
        * platform/gtk/editing/inserting/5058163-1-expected.txt:
        * platform/gtk/editing/inserting/insert-paragraph-01-expected.png:
        * platform/gtk/editing/inserting/insert-paragraph-01-expected.txt:
        * platform/gtk/editing/inserting/insert-paragraph-02-expected.png:
        * platform/gtk/editing/inserting/insert-paragraph-02-expected.txt:
        * platform/gtk/editing/inserting/paragraph-separator-in-table-2-expected.png:
        * platform/gtk/editing/inserting/paragraph-separator-in-table-2-expected.txt:
        * platform/gtk/editing/pasteboard/5156401-1-expected.png:
        * platform/gtk/editing/pasteboard/5156401-1-expected.txt:
        * platform/gtk/editing/pasteboard/5387578-expected.png:
        * platform/gtk/editing/pasteboard/5387578-expected.txt:
        * platform/gtk/editing/selection/4818145-expected.png:
        * platform/gtk/editing/selection/4818145-expected.txt:
        * platform/gtk/editing/selection/4889598-expected.png:
        * platform/gtk/editing/selection/4889598-expected.txt:
        * platform/gtk/editing/selection/4895428-2-expected.png:
        * platform/gtk/editing/selection/4895428-2-expected.txt:
        * platform/gtk/editing/selection/5076323-1-expected.png:
        * platform/gtk/editing/selection/5076323-1-expected.txt:
        * platform/gtk/editing/selection/5076323-2-expected.png:
        * platform/gtk/editing/selection/5076323-2-expected.txt:
        * platform/gtk/editing/selection/5076323-3-expected.png:
        * platform/gtk/editing/selection/5076323-3-expected.txt:
        * platform/gtk/editing/selection/7152-1-expected.png:
        * platform/gtk/editing/selection/7152-1-expected.txt:
        * platform/gtk/editing/selection/7152-2-expected.png:
        * platform/gtk/editing/selection/7152-2-expected.txt:
        * platform/gtk/editing/selection/display-table-text-expected.png:
        * platform/gtk/editing/selection/display-table-text-expected.txt:
        * platform/gtk/editing/selection/iframe-expected.png:
        * platform/gtk/editing/selection/iframe-expected.txt:
        * platform/gtk/editing/selection/inline-table-expected.png:
        * platform/gtk/editing/selection/inline-table-expected.txt:
        * platform/gtk/editing/selection/mixed-editability-3-expected.png:
        * platform/gtk/editing/selection/mixed-editability-3-expected.txt:
        * platform/gtk/editing/selection/mixed-editability-4-expected.png:
        * platform/gtk/editing/selection/mixed-editability-4-expected.txt:
        * platform/gtk/editing/selection/mixed-editability-5-expected.png:
        * platform/gtk/editing/selection/mixed-editability-5-expected.txt:
        * platform/gtk/editing/selection/mixed-editability-8-expected.png:
        * platform/gtk/editing/selection/mixed-editability-8-expected.txt:
        * platform/gtk/editing/selection/mixed-editability-9-expected.png:
        * platform/gtk/editing/selection/mixed-editability-9-expected.txt:
        * platform/gtk/editing/selection/table-caret-1-expected.png:
        * platform/gtk/editing/selection/table-caret-1-expected.txt:
        * platform/gtk/editing/selection/table-caret-2-expected.png:
        * platform/gtk/editing/selection/table-caret-2-expected.txt:
        * platform/gtk/editing/selection/table-caret-3-expected.png:
        * platform/gtk/editing/selection/table-caret-3-expected.txt:
        * platform/gtk/editing/style/5017613-1-expected.png:
        * platform/gtk/editing/style/5017613-1-expected.txt:
        * platform/gtk/editing/style/5017613-2-expected.png:
        * platform/gtk/editing/style/5017613-2-expected.txt:
        * platform/gtk/editing/style/apple-style-editable-mix-expected.png:
        * platform/gtk/editing/style/apple-style-editable-mix-expected.txt:
        * platform/gtk/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png:
        * platform/gtk/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.txt:
        * platform/gtk/fast/block/float/011-expected.txt:
        * platform/gtk/fast/block/margin-collapse/001-expected.txt:
        * platform/gtk/fast/block/margin-collapse/005-expected.txt:
        * platform/gtk/fast/block/margin-collapse/104-expected.txt:
        * platform/gtk/fast/block/margin-collapse/block-inside-inline/001-expected.txt:
        * platform/gtk/fast/block/margin-collapse/block-inside-inline/005-expected.txt:
        * platform/gtk/fast/block/positioning/053-expected.txt:
        * platform/gtk/fast/borders/bidi-009a-expected.png:
        * platform/gtk/fast/borders/bidi-009a-expected.txt:
        * platform/gtk/fast/box-shadow/basic-shadows-expected.png:
        * platform/gtk/fast/box-shadow/basic-shadows-expected.txt:
        * platform/gtk/fast/css-generated-content/015-expected.txt:
        * platform/gtk/fast/css-generated-content/inline-display-types-expected.txt:
        * platform/gtk/fast/css-generated-content/table-before-after-child-add-expected.txt:
        * platform/gtk/fast/css-generated-content/table-cell-before-content-expected.txt:
        * platform/gtk/fast/css-generated-content/table-row-before-after-child-add-expected.txt:
        * platform/gtk/fast/css-generated-content/table-row-before-after-expected.txt:
        * platform/gtk/fast/css-generated-content/table-table-before-after-child-add-expected.txt:
        * platform/gtk/fast/css/first-letter-float-expected.png:
        * platform/gtk/fast/css/first-letter-float-expected.txt:
        * platform/gtk/fast/css/layerZOrderCrash-expected.txt:
        * platform/gtk/fast/dom/HTMLTableColElement/resize-table-using-col-width-expected.png:
        * platform/gtk/fast/dom/HTMLTableColElement/resize-table-using-col-width-expected.txt:
        * platform/gtk/fast/dynamic/007-expected.txt:
        * platform/gtk/fast/dynamic/014-expected.txt:
        * platform/gtk/fast/dynamic/015-expected.png:
        * platform/gtk/fast/dynamic/015-expected.txt:
        * platform/gtk/fast/dynamic/create-renderer-for-whitespace-only-text-expected.png:
        * platform/gtk/fast/dynamic/create-renderer-for-whitespace-only-text-expected.txt:
        * platform/gtk/fast/forms/button-white-space-expected.png:
        * platform/gtk/fast/forms/button-white-space-expected.txt:
        * platform/gtk/fast/forms/file/file-input-direction-expected.png:
        * platform/gtk/fast/forms/file/file-input-direction-expected.txt:
        * platform/gtk/fast/forms/form-added-to-table-expected.png:
        * platform/gtk/fast/forms/form-added-to-table-expected.txt:
        * platform/gtk/fast/forms/input-double-click-selection-gap-bug-expected.png:
        * platform/gtk/fast/forms/input-double-click-selection-gap-bug-expected.txt:
        * platform/gtk/fast/forms/input-value-expected.png:
        * platform/gtk/fast/forms/input-value-expected.txt:
        * platform/gtk/fast/invalid/table-inside-stray-table-content-expected.png:
        * platform/gtk/fast/invalid/table-inside-stray-table-content-expected.txt:
        * platform/gtk/fast/invalid/td-inside-object-expected.txt:
        * platform/gtk/fast/lists/ordered-list-with-no-ol-tag-expected.png:
        * platform/gtk/fast/lists/ordered-list-with-no-ol-tag-expected.txt:
        * platform/gtk/fast/overflow/overflow-auto-table-expected.txt:
        * platform/gtk/fast/replaced/width100percent-button-expected.png:
        * platform/gtk/fast/replaced/width100percent-button-expected.txt:
        * platform/gtk/fast/ruby/ruby-inline-table-expected.txt:
        * platform/gtk/fast/selectors/018-expected.png:
        * platform/gtk/fast/selectors/018-expected.txt:
        * platform/gtk/fast/selectors/018b-expected.txt:
        * platform/gtk/fast/selectors/032-expected.png:
        * platform/gtk/fast/selectors/032-expected.txt:
        * platform/gtk/fast/selectors/043-expected.txt:
        * platform/gtk/fast/selectors/043b-expected.txt:
        * platform/gtk/fast/selectors/044-expected.txt:
        * platform/gtk/fast/selectors/044b-expected.txt:
        * platform/gtk/fast/selectors/078b-expected.png:
        * platform/gtk/fast/selectors/078b-expected.txt:
        * platform/gtk/fast/sub-pixel/selection/selection-rect-in-sub-pixel-table-expected.txt:
        * platform/gtk/fast/table/001-expected.txt:
        * platform/gtk/fast/table/004-expected.png:
        * platform/gtk/fast/table/004-expected.txt:
        * platform/gtk/fast/table/006-expected.png:
        * platform/gtk/fast/table/006-expected.txt:
        * platform/gtk/fast/table/010-expected.txt:
        * platform/gtk/fast/table/011-expected.png:
        * platform/gtk/fast/table/011-expected.txt:
        * platform/gtk/fast/table/015-expected.txt:
        * platform/gtk/fast/table/016-expected.txt:
        * platform/gtk/fast/table/022-expected.png:
        * platform/gtk/fast/table/022-expected.txt:
        * platform/gtk/fast/table/026-expected.txt:
        * platform/gtk/fast/table/033-expected.txt:
        * platform/gtk/fast/table/035-expected.png:
        * platform/gtk/fast/table/035-expected.txt:
        * platform/gtk/fast/table/035-vertical-expected.png:
        * platform/gtk/fast/table/035-vertical-expected.txt:
        * platform/gtk/fast/table/037-expected.txt:
        * platform/gtk/fast/table/041-expected.png:
        * platform/gtk/fast/table/041-expected.txt:
        * platform/gtk/fast/table/auto-with-percent-height-expected.txt:
        * platform/gtk/fast/table/auto-with-percent-height-vertical-expected.txt:
        * platform/gtk/fast/table/cell-coalescing-expected.txt:
        * platform/gtk/fast/table/cellindex-expected.txt:
        * platform/gtk/fast/table/click-near-anonymous-table-expected.png:
        * platform/gtk/fast/table/click-near-anonymous-table-expected.txt:
        * platform/gtk/fast/table/colgroup-preceded-by-caption-expected.txt:
        * platform/gtk/fast/table/colgroup-spanning-groups-rules-expected.txt:
        * platform/gtk/fast/table/dynamic-descendant-percentage-height-expected.txt:
        * platform/gtk/fast/table/floating-th-expected.txt:
        * platform/gtk/fast/table/generated-caption-expected.png:
        * platform/gtk/fast/table/generated-caption-expected.txt:
        * platform/gtk/fast/table/insert-before-anonymous-ancestors-expected.png:
        * platform/gtk/fast/table/insert-before-anonymous-ancestors-expected.txt:
        * platform/gtk/fast/table/insert-cell-before-form-expected.png:
        * platform/gtk/fast/table/insert-cell-before-form-expected.txt:
        * platform/gtk/fast/table/insert-row-before-form-expected.png:
        * platform/gtk/fast/table/insert-row-before-form-expected.txt:
        * platform/gtk/fast/table/nested-percent-height-table-expected.png:
        * platform/gtk/fast/table/nested-percent-height-table-expected.txt:
        * platform/gtk/fast/table/quote-text-around-iframe-expected.png:
        * platform/gtk/fast/table/quote-text-around-iframe-expected.txt:
        * platform/gtk/fast/table/rowindex-expected.png:
        * platform/gtk/fast/table/rowindex-expected.txt:
        * platform/gtk/fast/table/rtl-cell-display-none-assert-expected.png:
        * platform/gtk/fast/table/rtl-cell-display-none-assert-expected.txt:
        * platform/gtk/fast/table/rules-attr-dynchange1-expected.txt:
        * platform/gtk/fast/table/rules-attr-dynchange2-expected.txt:
        * platform/gtk/fast/table/table-after-child-in-table-expected.txt:
        * platform/gtk/fast/table/table-and-parts-outline-expected.png:
        * platform/gtk/fast/table/table-and-parts-outline-expected.txt:
        * platform/gtk/fast/table/table-before-child-in-table-expected.txt:
        * platform/gtk/fast/table/table-cell-after-child-in-block-expected.txt:
        * platform/gtk/fast/table/table-cell-after-child-in-table-expected.txt:
        * platform/gtk/fast/table/table-cell-before-child-in-block-expected.txt:
        * platform/gtk/fast/table/table-continuation-outline-paint-crash-expected.txt:
        * platform/gtk/fast/table/table-hspace-align-center-expected.png:
        * platform/gtk/fast/table/table-hspace-align-center-expected.txt:
        * platform/gtk/fast/table/table-row-after-child-in-block-expected.txt:
        * platform/gtk/fast/table/table-row-after-child-in-table-expected.txt:
        * platform/gtk/fast/table/table-row-before-child-in-block-expected.txt:
        * platform/gtk/fast/table/table-row-before-child-in-table-expected.txt:
        * platform/gtk/fast/table/tableInsideCaption-expected.png:
        * platform/gtk/fast/table/tableInsideCaption-expected.txt:
        * platform/gtk/fast/table/text-field-baseline-expected.png:
        * platform/gtk/fast/table/text-field-baseline-expected.txt:
        * platform/gtk/fast/table/unbreakable-images-quirk-expected.png:
        * platform/gtk/fast/table/unbreakable-images-quirk-expected.txt:
        * platform/gtk/fast/table/vertical-align-baseline-expected.png:
        * platform/gtk/fast/table/vertical-align-baseline-expected.txt:
        * platform/gtk/fast/text/atsui-multiple-renderers-expected.png:
        * platform/gtk/fast/text/atsui-multiple-renderers-expected.txt:
        * platform/gtk/fast/text/basic/001-expected.png:
        * platform/gtk/fast/text/basic/001-expected.txt:
        * platform/gtk/fast/text/basic/006-expected.png:
        * platform/gtk/fast/text/basic/006-expected.txt:
        * platform/gtk/fast/text/basic/007-expected.png:
        * platform/gtk/fast/text/basic/007-expected.txt:
        * platform/gtk/fast/text/capitalize-boundaries-expected.png:
        * platform/gtk/fast/text/capitalize-boundaries-expected.txt:
        * platform/gtk/fast/text/international/bidi-layout-across-linebreak-expected.png:
        * platform/gtk/fast/text/international/bidi-layout-across-linebreak-expected.txt:
        * platform/gtk/fast/text/textIteratorNilRenderer-expected.png:
        * platform/gtk/fast/text/textIteratorNilRenderer-expected.txt:
        * platform/gtk/fast/text/whitespace/024-expected.png:
        * platform/gtk/fast/text/whitespace/024-expected.txt:
        * platform/gtk/fast/text/whitespace/027-expected.png:
        * platform/gtk/fast/text/whitespace/027-expected.txt:
        * platform/gtk/fast/text/word-break-expected.png:
        * platform/gtk/fast/text/word-break-expected.txt:
        * platform/gtk/fast/transforms/transform-table-row-expected.png:
        * platform/gtk/fast/transforms/transform-table-row-expected.txt:
        * platform/gtk/http/tests/misc/generated-content-inside-table-expected.txt:
        * platform/gtk/svg/as-background-image/background-image-preserveaspectRatio-support-expected.png:
        * platform/gtk/svg/as-background-image/background-image-preserveaspectRatio-support-expected.txt:
        * platform/gtk/svg/as-image/img-preserveAspectRatio-support-1-expected.png:
        * platform/gtk/svg/as-image/img-preserveAspectRatio-support-1-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug10036-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug10036-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug10269-1-expected.png: Copied from LayoutTests/platform/gtk/tables/mozilla/bugs/bug21918-expected.png.
        * platform/gtk/tables/mozilla/bugs/bug10269-1-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug10269-2-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug10296-2-expected.png: Copied from LayoutTests/platform/gtk/tables/mozilla/bugs/bug12384-expected.png.
        * platform/gtk/tables/mozilla/bugs/bug10296-2-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug103533-expected.png: Added.
        * platform/gtk/tables/mozilla/bugs/bug103533-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug106158-1-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug106158-1-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug108340-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug108340-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug110566-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug110566-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug11321-expected.png: Copied from LayoutTests/platform/gtk/tables/mozilla_expected_failures/bugs/bug106336-expected.png.
        * platform/gtk/tables/mozilla/bugs/bug11321-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug113235-3-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug113235-3-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug11944-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug11944-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug119786-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug119786-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug12384-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug12384-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug1261-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug1261-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug13105-expected.png: Added.
        * platform/gtk/tables/mozilla/bugs/bug13105-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug13118-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug13118-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug133756-1-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug133756-2-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug133756-2-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug13484-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug13484-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug13526-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug138725-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug138725-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug14159-3-expected.png: Added.
        * platform/gtk/tables/mozilla/bugs/bug14159-3-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug149275-2-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug149275-2-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug17130-1-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug17130-1-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug1828-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug1828-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug18359-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug18558-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug18558-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug2050-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug2050-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug20579-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug20579-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug21299-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug21299-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug21918-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug21918-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug221784-1-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug221784-1-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug221784-2-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug221784-2-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug2267-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug2267-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug23072-expected.png: Copied from LayoutTests/platform/gtk/tables/mozilla/bugs/bug12384-expected.png.
        * platform/gtk/tables/mozilla/bugs/bug23072-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug23151-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug23151-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug23299-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug24503-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug24503-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug24627-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug24627-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug2469-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug2479-1-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug24880-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug24880-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug25086-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug25086-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug2516-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug2516-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug25367-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug2585-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug2585-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug26178-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug26178-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug27038-1-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug27038-1-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug27038-2-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug27038-2-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug275625-expected.png: Copied from LayoutTests/platform/gtk/tables/mozilla/bugs/bug55545-expected.png.
        * platform/gtk/tables/mozilla/bugs/bug275625-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug2757-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug2757-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug278266-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug278385-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug278385-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug2886-2-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug28928-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug28928-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug29157-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug29157-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug2973-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug3037-1-expected.png: Copied from LayoutTests/platform/gtk/tables/mozilla/bugs/bug3309-2-expected.png.
        * platform/gtk/tables/mozilla/bugs/bug3037-1-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug3037-2-expected.png: Copied from LayoutTests/platform/gtk/tables/mozilla/bugs/bug221784-2-expected.png.
        * platform/gtk/tables/mozilla/bugs/bug3037-2-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug30418-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug30418-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug30985-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug3191-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug3191-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug32205-2-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug32205-2-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug32205-5-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug32205-5-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug32447-expected.png: Copied from LayoutTests/platform/gtk/tables/mozilla/bugs/bug3309-2-expected.png.
        * platform/gtk/tables/mozilla/bugs/bug32447-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug3263-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug3263-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug3309-2-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug3309-2-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug34538-expected.png: Copied from LayoutTests/platform/gtk/tables/mozilla/bugs/bug3309-2-expected.png.
        * platform/gtk/tables/mozilla/bugs/bug34538-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug35662-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug35662-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug3718-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug3718-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug39209-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug39209-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug40828-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug40828-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug4284-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug4284-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug4429-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug4429-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug44523-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug44523-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug45055-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug4520-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug4520-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug46268-3-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug46268-3-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug46268-5-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug46268-5-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug46268-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug46268-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug46480-1-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug46480-2-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug4739-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug4739-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug48028-1-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug48028-1-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug48028-2-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug48028-2-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug51037-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug51037-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug51140-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug51140-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug55527-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug55545-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug55545-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug55694-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug55694-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug56405-expected.png: Copied from LayoutTests/platform/gtk/tables/mozilla/bugs/bug3309-2-expected.png.
        * platform/gtk/tables/mozilla/bugs/bug56405-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug57300-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug57300-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug57378-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug57378-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug57828-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug57828-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug5798-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug5798-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug5799-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug5799-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug5838-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug5838-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug58402-1-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug58402-1-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug60013-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug60013-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug60749-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug60749-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug60992-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug60992-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug63785-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug650-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug67864-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug67915-1-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug67915-1-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug69187-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug69187-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug709-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug7112-1-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug7112-1-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug7112-2-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug7112-2-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug75250-expected.png: Added.
        * platform/gtk/tables/mozilla/bugs/bug75250-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug8032-1-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug82946-1-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug82946-1-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug8361-expected.png: Copied from LayoutTests/platform/gtk/tables/mozilla/bugs/bug3309-2-expected.png.
        * platform/gtk/tables/mozilla/bugs/bug8361-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug83786-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug8381-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug8381-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug9072-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug9271-1-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug9271-1-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug93363-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug96343-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug965-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug965-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug97138-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug97138-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug99923-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug99923-expected.txt:
        * platform/gtk/tables/mozilla/bugs/bug99948-expected.png:
        * platform/gtk/tables/mozilla/bugs/bug99948-expected.txt:
        * platform/gtk/tables/mozilla/collapsing_borders/bug127040-expected.txt:
        * platform/gtk/tables/mozilla/collapsing_borders/bug41262-4-expected.png:
        * platform/gtk/tables/mozilla/collapsing_borders/bug41262-4-expected.txt:
        * platform/gtk/tables/mozilla/core/captions-expected.png:
        * platform/gtk/tables/mozilla/core/captions-expected.txt:
        * platform/gtk/tables/mozilla/core/col_widths_auto_auto-expected.png:
        * platform/gtk/tables/mozilla/core/col_widths_auto_auto-expected.txt:
        * platform/gtk/tables/mozilla/core/col_widths_auto_autoPer-expected.png:
        * platform/gtk/tables/mozilla/core/col_widths_auto_autoPer-expected.txt:
        * platform/gtk/tables/mozilla/core/col_widths_fix_autoPer-expected.png:
        * platform/gtk/tables/mozilla/core/col_widths_fix_autoPer-expected.txt:
        * platform/gtk/tables/mozilla/core/row_span-expected.png:
        * platform/gtk/tables/mozilla/core/row_span-expected.txt:
        * platform/gtk/tables/mozilla/dom/appendCol2-expected.png:
        * platform/gtk/tables/mozilla/dom/appendCol2-expected.txt:
        * platform/gtk/tables/mozilla/dom/appendRowsExpand1-expected.png:
        * platform/gtk/tables/mozilla/dom/appendRowsExpand1-expected.txt:
        * platform/gtk/tables/mozilla/dom/appendTbodyExpand1-expected.png:
        * platform/gtk/tables/mozilla/dom/appendTbodyExpand1-expected.txt:
        * platform/gtk/tables/mozilla/dom/deleteCellsRebuild1-expected.png:
        * platform/gtk/tables/mozilla/dom/deleteCellsRebuild1-expected.txt:
        * platform/gtk/tables/mozilla/dom/deleteCellsShrink1-expected.png:
        * platform/gtk/tables/mozilla/dom/deleteCellsShrink1-expected.txt:
        * platform/gtk/tables/mozilla/dom/deleteCellsShrink2-expected.png:
        * platform/gtk/tables/mozilla/dom/deleteCellsShrink2-expected.txt:
        * platform/gtk/tables/mozilla/dom/deleteCol1-expected.png:
        * platform/gtk/tables/mozilla/dom/deleteCol1-expected.txt:
        * platform/gtk/tables/mozilla/dom/deleteCol2-expected.png:
        * platform/gtk/tables/mozilla/dom/deleteCol2-expected.txt:
        * platform/gtk/tables/mozilla/dom/deleteCol3-expected.png:
        * platform/gtk/tables/mozilla/dom/deleteCol3-expected.txt:
        * platform/gtk/tables/mozilla/dom/deleteColGroup1-expected.png:
        * platform/gtk/tables/mozilla/dom/deleteColGroup1-expected.txt:
        * platform/gtk/tables/mozilla/dom/deleteColGroup2-expected.png:
        * platform/gtk/tables/mozilla/dom/deleteColGroup2-expected.txt:
        * platform/gtk/tables/mozilla/dom/deleteRowsRebuild1-expected.png:
        * platform/gtk/tables/mozilla/dom/deleteRowsRebuild1-expected.txt:
        * platform/gtk/tables/mozilla/dom/deleteRowsShrink1-expected.png:
        * platform/gtk/tables/mozilla/dom/deleteRowsShrink1-expected.txt:
        * platform/gtk/tables/mozilla/dom/deleteTbodyExpand1-expected.png:
        * platform/gtk/tables/mozilla/dom/deleteTbodyExpand1-expected.txt:
        * platform/gtk/tables/mozilla/dom/deleteTbodyRebuild1-expected.png:
        * platform/gtk/tables/mozilla/dom/deleteTbodyRebuild1-expected.txt:
        * platform/gtk/tables/mozilla/dom/insertCellsExpand1-expected.png:
        * platform/gtk/tables/mozilla/dom/insertCellsExpand1-expected.txt:
        * platform/gtk/tables/mozilla/dom/insertCellsExpand2-expected.png:
        * platform/gtk/tables/mozilla/dom/insertCellsExpand2-expected.txt:
        * platform/gtk/tables/mozilla/dom/insertCellsRebuild1-expected.png:
        * platform/gtk/tables/mozilla/dom/insertCellsRebuild1-expected.txt:
        * platform/gtk/tables/mozilla/dom/insertCellsRebuild2-expected.png:
        * platform/gtk/tables/mozilla/dom/insertCellsRebuild2-expected.txt:
        * platform/gtk/tables/mozilla/dom/insertRowsExpand1-expected.png:
        * platform/gtk/tables/mozilla/dom/insertRowsExpand1-expected.txt:
        * platform/gtk/tables/mozilla/dom/insertRowsRebuild1-expected.png:
        * platform/gtk/tables/mozilla/dom/insertRowsRebuild1-expected.txt:
        * platform/gtk/tables/mozilla/dom/tableDom-expected.txt:
        * platform/gtk/tables/mozilla/marvin/body_col-expected.png:
        * platform/gtk/tables/mozilla/marvin/body_col-expected.txt:
        * platform/gtk/tables/mozilla/marvin/body_tbody-expected.txt:
        * platform/gtk/tables/mozilla/marvin/body_tfoot-expected.png:
        * platform/gtk/tables/mozilla/marvin/body_tfoot-expected.txt:
        * platform/gtk/tables/mozilla/marvin/col_span-expected.png:
        * platform/gtk/tables/mozilla/marvin/col_span-expected.txt:
        * platform/gtk/tables/mozilla/marvin/table_frame_border-expected.png:
        * platform/gtk/tables/mozilla/marvin/table_frame_border-expected.txt:
        * platform/gtk/tables/mozilla/marvin/table_frame_box-expected.png:
        * platform/gtk/tables/mozilla/marvin/table_frame_box-expected.txt:
        * platform/gtk/tables/mozilla/marvin/table_rules_all-expected.png:
        * platform/gtk/tables/mozilla/marvin/table_rules_all-expected.txt:
        * platform/gtk/tables/mozilla/marvin/table_rules_none-expected.png:
        * platform/gtk/tables/mozilla/marvin/table_rules_none-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tables_align_center-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tables_align_left-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tables_align_right-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tables_border_0-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tables_border_1-expected.png:
        * platform/gtk/tables/mozilla/marvin/tables_border_1-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tables_border_2-expected.png:
        * platform/gtk/tables/mozilla/marvin/tables_border_2-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tables_border_3-expected.png:
        * platform/gtk/tables/mozilla/marvin/tables_border_3-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tables_caption_align_bot-expected.png:
        * platform/gtk/tables/mozilla/marvin/tables_caption_align_bot-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tables_caption_align_top-expected.png:
        * platform/gtk/tables/mozilla/marvin/tables_caption_align_top-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tables_cellpadding-expected.png:
        * platform/gtk/tables/mozilla/marvin/tables_cellpadding-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tables_cellspacing-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tables_default-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tables_id-expected.png:
        * platform/gtk/tables/mozilla/marvin/tables_id-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tables_row_th_nowrap-expected.png:
        * platform/gtk/tables/mozilla/marvin/tables_row_th_nowrap-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tables_td_align_center-expected.png:
        * platform/gtk/tables/mozilla/marvin/tables_td_align_center-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tables_td_align_left-expected.png:
        * platform/gtk/tables/mozilla/marvin/tables_td_align_left-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tables_td_align_right-expected.png:
        * platform/gtk/tables/mozilla/marvin/tables_td_align_right-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tables_td_colspan-expected.png:
        * platform/gtk/tables/mozilla/marvin/tables_td_colspan-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tables_td_height-expected.png:
        * platform/gtk/tables/mozilla/marvin/tables_td_height-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tables_td_nowrap-expected.png:
        * platform/gtk/tables/mozilla/marvin/tables_td_nowrap-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tables_td_rowspan-expected.png:
        * platform/gtk/tables/mozilla/marvin/tables_td_rowspan-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tables_th_align_center-expected.png:
        * platform/gtk/tables/mozilla/marvin/tables_th_align_center-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tables_th_align_left-expected.png:
        * platform/gtk/tables/mozilla/marvin/tables_th_align_left-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tables_th_align_right-expected.png:
        * platform/gtk/tables/mozilla/marvin/tables_th_align_right-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tables_th_height-expected.png:
        * platform/gtk/tables/mozilla/marvin/tables_th_height-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tables_th_rowspan-expected.png:
        * platform/gtk/tables/mozilla/marvin/tables_th_rowspan-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tbody_align_center-expected.png:
        * platform/gtk/tables/mozilla/marvin/tbody_align_center-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tbody_align_char-expected.png:
        * platform/gtk/tables/mozilla/marvin/tbody_align_char-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tbody_align_justify-expected.png:
        * platform/gtk/tables/mozilla/marvin/tbody_align_justify-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tbody_align_left-expected.png:
        * platform/gtk/tables/mozilla/marvin/tbody_align_left-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tbody_align_right-expected.png:
        * platform/gtk/tables/mozilla/marvin/tbody_align_right-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tbody_char-expected.png:
        * platform/gtk/tables/mozilla/marvin/tbody_char-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tfoot_align_center-expected.png:
        * platform/gtk/tables/mozilla/marvin/tfoot_align_center-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tfoot_align_char-expected.png:
        * platform/gtk/tables/mozilla/marvin/tfoot_align_char-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tfoot_align_justify-expected.png:
        * platform/gtk/tables/mozilla/marvin/tfoot_align_justify-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tfoot_align_left-expected.png:
        * platform/gtk/tables/mozilla/marvin/tfoot_align_left-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tfoot_align_right-expected.png:
        * platform/gtk/tables/mozilla/marvin/tfoot_align_right-expected.txt:
        * platform/gtk/tables/mozilla/marvin/tfoot_char-expected.png:
        * platform/gtk/tables/mozilla/marvin/tfoot_char-expected.txt:
        * platform/gtk/tables/mozilla/marvin/thead_align_center-expected.png:
        * platform/gtk/tables/mozilla/marvin/thead_align_center-expected.txt:
        * platform/gtk/tables/mozilla/marvin/thead_align_char-expected.png:
        * platform/gtk/tables/mozilla/marvin/thead_align_char-expected.txt:
        * platform/gtk/tables/mozilla/marvin/thead_align_justify-expected.png:
        * platform/gtk/tables/mozilla/marvin/thead_align_justify-expected.txt:
        * platform/gtk/tables/mozilla/marvin/thead_align_left-expected.png:
        * platform/gtk/tables/mozilla/marvin/thead_align_left-expected.txt:
        * platform/gtk/tables/mozilla/marvin/thead_align_right-expected.png:
        * platform/gtk/tables/mozilla/marvin/thead_align_right-expected.txt:
        * platform/gtk/tables/mozilla/marvin/thead_char-expected.png:
        * platform/gtk/tables/mozilla/marvin/thead_char-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_caption_align_bottom-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_caption_align_bottom-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_caption_align_top-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_caption_align_top-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_table-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_table_align_center-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_table_align_center-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_table_align_left-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_table_align_left-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_table_align_right-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_table_align_right-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_table_bgcolor_name-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_table_bgcolor_name-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_table_bgcolor_rgb-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_table_bgcolor_rgb-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_table_border-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_table_border-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_table_border_none-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_table_border_px-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_table_border_px-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_table_cellpadding-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_table_cellpadding-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_table_cellpadding_pct-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_table_cellpadding_pct-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_table_cellspacing-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_table_cellspacing-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_table_cellspacing_pct-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_table_cellspacing_pct-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_table_frame_void-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_table_rules_groups-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_table_rules_none-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_table_style-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_tbody_align_center-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_tbody_align_center-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_tbody_align_char-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_tbody_align_char-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_tbody_align_left-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_tbody_align_left-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_tbody_align_right-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_tbody_align_right-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_tbody_class-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_tbody_class-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_tbody_id-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_tbody_id-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_tbody_style-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_tbody_style-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_td_bgcolor_name-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_td_bgcolor_name-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_td_bgcolor_rgb-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_td_bgcolor_rgb-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_td_class-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_td_class-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_td_colspan-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_td_colspan-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_td_height-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_td_height-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_td_id-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_td_id-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_td_nowrap-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_td_nowrap-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_td_rowspan-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_td_rowspan-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_td_style-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_td_style-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_tfoot_align_center-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_tfoot_align_center-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_tfoot_align_char-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_tfoot_align_char-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_tfoot_align_left-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_tfoot_align_left-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_tfoot_align_right-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_tfoot_align_right-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_tfoot_class-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_tfoot_class-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_tfoot_id-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_tfoot_id-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_tfoot_style-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_tfoot_style-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_th_bgcolor_name-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_th_bgcolor_name-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_th_bgcolor_rgb-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_th_bgcolor_rgb-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_th_class-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_th_class-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_th_colspan-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_th_colspan-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_th_height-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_th_height-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_th_id-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_th_id-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_th_nowrap-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_th_nowrap-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_th_style-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_th_style-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_thead_align_center-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_thead_align_center-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_thead_align_char-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_thead_align_char-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_thead_align_left-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_thead_align_left-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_thead_align_right-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_thead_align_right-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_thead_class-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_thead_class-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_thead_id-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_thead_id-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_thead_style-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_thead_style-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_tr_bgcolor_name-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_tr_bgcolor_name-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_tr_bgcolor_rgb-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_tr_bgcolor_rgb-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_tr_class-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_tr_class-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_tr_id-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_tr_id-expected.txt:
        * platform/gtk/tables/mozilla/marvin/x_tr_style-expected.png:
        * platform/gtk/tables/mozilla/marvin/x_tr_style-expected.txt:
        * platform/gtk/tables/mozilla/other/body_col-expected.png:
        * platform/gtk/tables/mozilla/other/body_col-expected.txt:
        * platform/gtk/tables/mozilla/other/cellspacing-expected.png:
        * platform/gtk/tables/mozilla/other/cellspacing-expected.txt:
        * platform/gtk/tables/mozilla/other/move_row-expected.png:
        * platform/gtk/tables/mozilla/other/move_row-expected.txt:
        * platform/gtk/tables/mozilla/other/padding-expected.png:
        * platform/gtk/tables/mozilla/other/padding-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug10140-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug101759-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug101759-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug10216-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug10216-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug104898-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug104898-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug106336-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug106336-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug11945-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug11945-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug131020-3-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug131020-3-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug178855-expected.png: Copied from LayoutTests/platform/gtk/tables/mozilla/bugs/bug12384-expected.png.
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug178855-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug18770-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug18770-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug24880-1-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug24880-1-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug25707-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug25707-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug3166-11-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug3166-12-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug3166-13-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug3166-14-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug3166-14-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug3166-16-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug3166-17-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug3166-17-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug3166-18-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug32205-1-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug32205-1-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug32205-4-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug32205-4-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug4294-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug4294-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug46268-4-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug46268-4-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug51000-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug51000-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug58402-2-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug58402-2-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug65372-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug65372-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug6933-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug6933-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug7113-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug7113-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug73629-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug73629-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug92647-1-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug92868_1-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/collapsing_borders/bug41262-5-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/collapsing_borders/bug41262-5-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/collapsing_borders/bug41262-6-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/collapsing_borders/bug41262-6-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/core/backgrounds-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/core/backgrounds-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/core/captions3-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/core/conflicts-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/core/conflicts-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/dom/appendCells1-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/dom/appendCells1-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/dom/appendCellsRebuild1-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/dom/appendCellsRebuild1-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/dom/appendCol1-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/dom/appendCol1-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/dom/insertTbodyExpand1-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/dom/insertTbodyExpand1-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/dom/insertTbodyRebuild1-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/dom/insertTbodyRebuild1-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_frame_above-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_frame_above-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_frame_below-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_frame_below-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_frame_hsides-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_frame_hsides-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_frame_lhs-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_frame_lhs-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_frame_rhs-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_frame_rhs-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_frame_void-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_frame_void-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_frame_vsides-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_frame_vsides-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_row-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_row-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_rules_cols-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_rules_cols-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_rules_rows-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_rules_rows-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/marvin/tables_caption_align_left-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/marvin/tables_caption_align_left-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/marvin/tables_caption_align_right-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/marvin/tables_caption_align_right-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/marvin/x_caption_align_left-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/marvin/x_caption_align_left-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/marvin/x_caption_align_right-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/marvin/x_caption_align_right-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/marvin/x_colgroup_width_px-expected.png:
        * platform/gtk/tables/mozilla_expected_failures/marvin/x_colgroup_width_px-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/marvin/x_table_frame_above-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/marvin/x_table_frame_below-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/marvin/x_table_frame_border-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/marvin/x_table_frame_box-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/marvin/x_table_frame_hsides-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/marvin/x_table_frame_lhs-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/marvin/x_table_frame_rhs-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/marvin/x_table_frame_vsides-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/marvin/x_table_rules_all-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/marvin/x_table_rules_cols-expected.txt:
        * platform/gtk/tables/mozilla_expected_failures/marvin/x_table_rules_rows-expected.txt:

2016-01-29  Ryan Haddad  <ryanhaddad@apple.com>

        Marking 3 displaylist tests as flaky on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=153656

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-01-29  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline fast/forms/auto-fill-button/input-contacts-auto-fill-button.html for ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=153567

        Unreviewed test gardening.

        * platform/ios-simulator/fast/forms/auto-fill-button/input-contacts-auto-fill-button-expected.txt:

2016-01-29  Brady Eidson  <beidson@apple.com>

        Unreviewed test gardening.

        * platform/mac-wk1/TestExpectations: This one still crashes, just flakily. *sigh*

2016-01-29  Brady Eidson  <beidson@apple.com>

        Unreviewed test gardening.

        * platform/mac-wk1/TestExpectations: Enable some IndexedDB tests that pass.

2016-01-29  ChangSeok Oh  <changseok.oh@collabora.com>

        [GStreamer] built-in media player doesn't update
        https://bugs.webkit.org/show_bug.cgi?id=151816

        Reviewed by Xabier Rodriguez-Calvar.

        * media/audio-controls-timeline-in-media-document-expected.txt: Added.
        * media/audio-controls-timeline-in-media-document.html: Added.

2016-01-28  Brady Eidson  <beidson@apple.com>

        Modern IDB: SQLite backend mismanages key generator values.
        https://bugs.webkit.org/show_bug.cgi?id=153625

        Reviewed by Andy Estes.

        * platform/mac-wk1/TestExpectations:

2016-01-28  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: InspectorTimelineAgent doesn't need to recompile functions because it now uses the sampling profiler
        https://bugs.webkit.org/show_bug.cgi?id=153500
        <rdar://problem/24352458>

        Reviewed by Timothy Hatcher.

        * fast/profiler/*.html
        Be more explicit about enabling legacy profiling.

        * inspector/sampling-profiler/eval-source-url.html
        Remove an inner loop that was causing tail call optimizations
        to eliminate the sourceURL we were expecting.

2016-01-28  Brady Eidson  <beidson@apple.com>

        Modern IDB: Enabled all of the imported IndexedDB tests that pass in the SQLite backing store.
        https://bugs.webkit.org/show_bug.cgi?id=153623

        Reviewed by Andy Estes.

        * platform/mac-wk1/TestExpectations: TONS of these now pass. List of failing tests is now small.

2016-01-28  Zalan Bujtas  <zalan@apple.com>

        [Win] gardening after r195740. (more to follow)

        Unreviewed.

        * platform/win/css1/box_properties/padding_left-expected.txt:
        * platform/win/fast/dom/HTMLTableElement/colSpan-expected.txt:
        * platform/win/fast/encoding/utf-16-big-endian-expected.txt:
        * platform/win/fast/encoding/utf-16-little-endian-expected.txt:
        * platform/win/fast/forms/001-expected.txt:
        * platform/win/fast/forms/005-expected.txt:
        * platform/win/fast/forms/auto-fill-button/input-contacts-auto-fill-button-expected.txt:
        * platform/win/fast/forms/basic-buttons-expected.txt:
        * platform/win/fast/forms/button-white-space-expected.txt:
        * platform/win/fast/forms/file/file-input-direction-expected.txt:
        * platform/win/fast/forms/form-added-to-table-expected.txt:
        * platform/win/fast/forms/form-element-geometry-expected.txt:
        * platform/win/fast/forms/form-hides-table-expected.txt:
        * platform/win/fast/forms/form-in-malformed-markup-expected.txt:
        * platform/win/fast/forms/formmove3-expected.txt:
        * platform/win/fast/forms/input-appearance-spinbutton-expected.txt:
        * platform/win/fast/forms/input-double-click-selection-gap-bug-expected.txt:
        * platform/win/fast/forms/input-table-expected.txt:
        * platform/win/fast/forms/input-value-expected.txt:
        * platform/win/fast/forms/listbox-bidi-align-expected.txt:
        * platform/win/fast/forms/preserveFormDuringResidualStyle-expected.txt:
        * platform/win/fast/forms/select-dirty-parent-pref-widths-expected.txt:
        * platform/win/fast/html/details-writing-mode-expected.txt:
        * platform/win/fast/inline-block/001-expected.txt:
        * platform/win/fast/inline-block/overflow-clip-expected.txt:
        * platform/win/fast/invalid/012-expected.txt:
        * platform/win/fast/invalid/018-expected.txt:
        * platform/win/fast/invalid/table-inside-stray-table-content-expected.txt:
        * platform/win/fast/invalid/td-inside-object-expected.txt:
        * platform/win/fast/lists/004-expected.txt:
        * platform/win/fast/lists/list-marker-before-content-table-expected.txt:
        * platform/win/fast/lists/ordered-list-with-no-ol-tag-expected.txt:
        * platform/win/fast/multicol/span/before-child-anonymous-column-block-expected.txt:
        * platform/win/fast/overflow/002-expected.txt:
        * platform/win/fast/overflow/overflow-auto-table-expected.txt:
        * platform/win/fast/overflow/overflow-rtl-expected.txt:
        * platform/win/fast/overflow/overflow-rtl-vertical-expected.txt:
        * platform/win/fast/overflow/table-overflow-float-expected.txt:
        * platform/win/fast/reflections/table-cell-expected.txt:
        * platform/win/fast/repaint/block-selection-gap-in-table-cell-expected.txt:
        * platform/win/fast/repaint/float-overflow-expected.txt:
        * platform/win/fast/repaint/float-overflow-right-expected.txt:
        * platform/win/fast/repaint/subtree-root-clip-3-expected.txt:
        * platform/win/fast/repaint/table-cell-collapsed-border-expected.txt:
        * platform/win/fast/repaint/table-cell-collapsed-border-scroll-expected.txt:
        * platform/win/fast/repaint/table-cell-move-expected.txt:
        * platform/win/fast/repaint/table-cell-overflow-expected.txt:
        * platform/win/fast/repaint/table-cell-vertical-overflow-expected.txt:
        * platform/win/fast/repaint/table-col-background-expected.txt:
        * platform/win/fast/repaint/table-collapsed-border-expected.txt:
        * platform/win/fast/repaint/table-extra-bottom-grow-expected.txt:
        * platform/win/fast/repaint/table-outer-border-expected.txt:
        * platform/win/fast/repaint/table-row-expected.txt:
        * platform/win/fast/repaint/table-section-overflow-expected.txt:
        * platform/win/fast/repaint/table-section-repaint-expected.txt:
        * platform/win/fast/repaint/table-two-pass-layout-overpaint-expected.txt:
        * platform/win/fast/repaint/table-writing-modes-h-expected.txt:
        * platform/win/fast/repaint/table-writing-modes-v-expected.txt:
        * platform/win/fast/replaced/005-expected.txt:
        * platform/win/fast/replaced/percent-height-in-anonymous-block-in-table-expected.txt:
        * platform/win/fast/replaced/selection-rect-in-table-cell-expected.txt:
        * platform/win/fast/replaced/table-percent-height-positioned-expected.txt:
        * platform/win/fast/replaced/width100percent-button-expected.txt:
        * platform/win/fast/replaced/width100percent-checkbox-expected.txt:
        * platform/win/fast/replaced/width100percent-image-expected.txt:
        * platform/win/fast/replaced/width100percent-menulist-expected.txt:
        * platform/win/fast/replaced/width100percent-radio-expected.txt:
        * platform/win/fast/ruby/ruby-inline-table-expected.txt:
        * platform/win/fast/selectors/018-expected.txt:
        * platform/win/fast/selectors/018b-expected.txt:
        * platform/win/fast/selectors/032-expected.txt:
        * platform/win/fast/selectors/043-expected.txt:
        * platform/win/fast/selectors/043b-expected.txt:
        * platform/win/fast/selectors/044-expected.txt:
        * platform/win/fast/selectors/044b-expected.txt:
        * platform/win/fast/selectors/077-expected.txt:
        * platform/win/fast/selectors/077b-expected.txt:
        * platform/win/fast/selectors/078b-expected.txt:
        * platform/win/fast/table/001-expected.txt:
        * platform/win/fast/table/002-expected.txt:
        * platform/win/fast/table/003-expected.txt:
        * platform/win/fast/table/004-expected.txt:
        * platform/win/fast/table/005-expected.txt:
        * platform/win/fast/table/006-expected.txt:
        * platform/win/fast/table/007-expected.txt:
        * platform/win/fast/table/008-expected.txt:
        * platform/win/fast/table/009-expected.txt:
        * platform/win/fast/table/010-expected.txt:
        * platform/win/fast/table/011-expected.txt:
        * platform/win/fast/table/012-expected.txt:
        * platform/win/fast/table/013-expected.txt:
        * platform/win/fast/table/015-expected.txt:
        * platform/win/fast/table/016-expected.txt:
        * platform/win/fast/table/021-expected.txt:
        * platform/win/fast/table/022-expected.txt:
        * platform/win/fast/table/023-expected.txt:
        * platform/win/fast/table/024-expected.txt:
        * platform/win/fast/table/025-expected.txt:
        * platform/win/fast/table/026-expected.txt:
        * platform/win/fast/table/028-expected.txt:
        * platform/win/fast/table/028-vertical-expected.txt:
        * platform/win/fast/table/029-expected.txt:
        * platform/win/fast/table/031-expected.txt:
        * platform/win/fast/table/032-expected.txt:
        * platform/win/fast/table/033-expected.txt:
        * platform/win/fast/table/034-expected.txt:
        * platform/win/fast/table/035-expected.txt:
        * platform/win/fast/table/035-vertical-expected.txt:
        * platform/win/fast/table/037-expected.txt:
        * platform/win/fast/table/038-expected.txt:
        * platform/win/fast/table/038-vertical-expected.txt:
        * platform/win/fast/table/039-expected.txt:
        * platform/win/fast/table/040-expected.txt:
        * platform/win/fast/table/040-vertical-expected.txt:
        * platform/win/fast/table/041-expected.txt:
        * platform/win/fast/table/100-percent-cell-width-expected.txt:
        * platform/win/fast/table/add-before-anonymous-child-expected.txt:
        * platform/win/fast/table/auto-with-percent-height-expected.txt:
        * platform/win/fast/table/auto-with-percent-height-vertical-expected.txt:
        * platform/win/fast/table/border-collapsing/001-expected.txt:
        * platform/win/fast/table/border-collapsing/001-vertical-expected.txt:
        * platform/win/fast/table/border-collapsing/002-expected.txt:
        * platform/win/fast/table/border-collapsing/002-vertical-expected.txt:
        * platform/win/fast/table/border-collapsing/003-expected.txt:
        * platform/win/fast/table/border-collapsing/003-vertical-expected.txt:
        * platform/win/fast/table/border-collapsing/004-expected.txt:
        * platform/win/fast/table/border-collapsing/004-vertical-expected.txt:
        * platform/win/fast/table/border-collapsing/border-collapsing-head-foot-expected.txt:
        * platform/win/fast/table/border-collapsing/border-collapsing-head-foot-vertical-expected.txt:
        * platform/win/fast/table/border-collapsing/bug14274-expected.txt:
        * platform/win/fast/table/border-collapsing/cached-69296-expected.txt:
        * platform/win/fast/table/border-collapsing/cached-cell-append-expected.txt:
        * platform/win/fast/table/border-collapsing/cached-cell-remove-expected.txt:
        * platform/win/fast/table/border-collapsing/cached-change-cell-border-color-expected.txt:
        * platform/win/fast/table/border-collapsing/cached-change-cell-border-width-expected.txt:
        * platform/win/fast/table/border-collapsing/cached-change-cell-sl-border-color-expected.txt:
        * platform/win/fast/table/border-collapsing/cached-change-col-border-color-expected.txt:
        * platform/win/fast/table/border-collapsing/cached-change-col-border-width-expected.txt:
        * platform/win/fast/table/border-collapsing/cached-change-colgroup-border-color-expected.txt:
        * platform/win/fast/table/border-collapsing/cached-change-colgroup-border-width-expected.txt:
        * platform/win/fast/table/border-collapsing/cached-change-row-border-width-expected.txt:
        * platform/win/fast/table/border-collapsing/cached-change-table-border-color-expected.txt:
        * platform/win/fast/table/border-collapsing/cached-change-table-border-width-expected.txt:
        * platform/win/fast/table/border-collapsing/cached-change-tbody-border-color-expected.txt:
        * platform/win/fast/table/border-collapsing/collapsed-borders-adjoining-sections-vertical-rl-expected.txt:
        * platform/win/fast/table/border-collapsing/collapsed-borders-painted-once-on-inner-cells-expected.txt:
        * platform/win/fast/table/border-collapsing/equal-precedence-resolution-expected.txt:
        * platform/win/fast/table/border-collapsing/equal-precedence-resolution-vertical-expected.txt:
        * platform/win/fast/table/border-collapsing/rtl-border-collapsing-expected.txt:
        * platform/win/fast/table/border-collapsing/rtl-border-collapsing-vertical-expected.txt:
        * platform/win/fast/table/caption-relayout-expected.txt:
        * platform/win/fast/table/cell-absolute-child-expected.txt:
        * platform/win/fast/table/cell-coalescing-expected.txt:
        * platform/win/fast/table/cell-width-auto-expected.txt:
        * platform/win/fast/table/cellindex-expected.txt:
        * platform/win/fast/table/click-near-anonymous-table-expected.txt:
        * platform/win/fast/table/colgroup-preceded-by-caption-expected.txt:
        * platform/win/fast/table/colgroup-spanning-groups-rules-expected.txt:
        * platform/win/fast/table/colspan-with-all-percent-cells-expected.txt:
        * platform/win/fast/table/colspanMinWidth-expected.txt:
        * platform/win/fast/table/colspanMinWidth-vertical-expected.txt:
        * platform/win/fast/table/dynamic-cellpadding-expected.txt:
        * platform/win/fast/table/dynamic-descendant-percentage-height-expected.txt:
        * platform/win/fast/table/edge-offsets-expected.txt:
        * platform/win/fast/table/empty-cells-expected.txt:
        * platform/win/fast/table/floating-th-expected.txt:
        * platform/win/fast/table/frame-and-rules-expected.txt:
        * platform/win/fast/table/generated-caption-expected.txt:
        * platform/win/fast/table/giantRowspan-expected.txt:
        * platform/win/fast/table/growCellForImageQuirk-expected.txt:
        * platform/win/fast/table/growCellForImageQuirk-vertical-expected.txt:
        * platform/win/fast/table/height-percent-test-expected.txt:
        * platform/win/fast/table/height-percent-test-vertical-expected.txt:
        * platform/win/fast/table/insert-before-anonymous-ancestors-expected.txt:
        * platform/win/fast/table/insert-cell-before-form-expected.txt:
        * platform/win/fast/table/insert-row-before-form-expected.txt:
        * platform/win/fast/table/invisible-cell-background-expected.txt:
        * platform/win/fast/table/large-width-expected.txt:
        * platform/win/fast/table/max-width-integer-overflow-expected.txt:
        * platform/win/fast/table/mozilla-bug10296-vertical-align-1-expected.txt:
        * platform/win/fast/table/mozilla-bug10296-vertical-align-2-expected.txt:
        * platform/win/fast/table/multiple-captions-display-expected.txt:
        * platform/win/fast/table/nested-percent-height-table-expected.txt:
        * platform/win/fast/table/nobr-expected.txt:
        * platform/win/fast/table/overflowHidden-expected.txt:
        * platform/win/fast/table/percent-heights-expected.txt:
        * platform/win/fast/table/percent-widths-stretch-expected.txt:
        * platform/win/fast/table/percent-widths-stretch-vertical-expected.txt:
        * platform/win/fast/table/prepend-in-anonymous-table-expected.txt:
        * platform/win/fast/table/quote-text-around-iframe-expected.txt:
        * platform/win/fast/table/relative-position-containment-expected.txt:
        * platform/win/fast/table/relative-position-offsets-expected.txt:
        * platform/win/fast/table/relative-position-stacking-expected.txt:
        * platform/win/fast/table/replaced-percent-height-expected.txt:
        * platform/win/fast/table/row-height-recalc-expected.txt:
        * platform/win/fast/table/rowspan-paint-order-expected.txt:
        * platform/win/fast/table/rowspan-paint-order-vertical-expected.txt:
        * platform/win/fast/table/rtl-cell-display-none-assert-expected.txt:
        * platform/win/fast/table/rules-attr-dynchange1-expected.txt:
        * platform/win/fast/table/rules-attr-dynchange2-expected.txt:
        * platform/win/fast/table/simple_paint-expected.txt:
        * platform/win/fast/table/spanOverlapRepaint-expected.txt:
        * platform/win/fast/table/stale-grid-crash-expected.txt:
        * platform/win/fast/table/table-after-child-in-table-expected.txt:
        * platform/win/fast/table/table-and-parts-outline-expected.txt:
        * platform/win/fast/table/table-anonymous-cell-bug-expected.txt:
        * platform/win/fast/table/table-anonymous-row-bug-expected.txt:
        * platform/win/fast/table/table-anonymous-section-bug-expected.txt:
        * platform/win/fast/table/table-before-child-in-table-expected.txt:
        * platform/win/fast/table/table-before-child-style-update-expected.txt:
        * platform/win/fast/table/table-cell-after-child-in-block-expected.txt:
        * platform/win/fast/table/table-cell-after-child-in-table-expected.txt:
        * platform/win/fast/table/table-cell-before-after-content-around-table-block-expected.txt:
        * platform/win/fast/table/table-cell-before-after-content-around-table-expected.txt:
        * platform/win/fast/table/table-cell-before-after-content-around-table-row-expected.txt:
        * platform/win/fast/table/table-cell-before-child-in-block-expected.txt:
        * platform/win/fast/table/table-cell-before-child-in-table-expected.txt:
        * platform/win/fast/table/table-cell-split-expected.txt:
        * platform/win/fast/table/table-continuation-outline-paint-crash-expected.txt:
        * platform/win/fast/table/table-display-types-expected.txt:
        * platform/win/fast/table/table-display-types-strict-expected.txt:
        * platform/win/fast/table/table-display-types-vertical-expected.txt:
        * platform/win/fast/table/table-hspace-align-center-expected.txt:
        * platform/win/fast/table/table-insert-before-non-anonymous-block-expected.txt:
        * platform/win/fast/table/table-row-after-child-in-block-expected.txt:
        * platform/win/fast/table/table-row-after-child-in-table-expected.txt:
        * platform/win/fast/table/table-row-before-after-content-around-block-expected.txt:
        * platform/win/fast/table/table-row-before-after-content-around-table-cell-expected.txt:
        * platform/win/fast/table/table-row-before-after-content-around-table-expected.txt:
        * platform/win/fast/table/table-row-before-child-in-block-expected.txt:
        * platform/win/fast/table/table-row-before-child-in-table-expected.txt:
        * platform/win/fast/table/table-row-before-child-style-update-expected.txt:
        * platform/win/fast/table/table-row-outline-paint-expected.txt:
        * platform/win/fast/table/table-row-split2-expected.txt:
        * platform/win/fast/table/table-row-style-not-updated-expected.txt:
        * platform/win/fast/table/table-row-style-not-updated-with-after-content-expected.txt:
        * platform/win/fast/table/table-row-style-not-updated-with-before-content-expected.txt:
        * platform/win/fast/table/table-section-split2-expected.txt:
        * platform/win/fast/table/table-split-expected.txt:
        * platform/win/fast/table/table-split2-expected.txt:
        * platform/win/fast/table/table-style-not-updated-expected.txt:
        * platform/win/fast/table/tableInsideCaption-expected.txt:
        * platform/win/fast/table/text-field-baseline-expected.txt:
        * platform/win/fast/table/unbreakable-images-quirk-expected.txt:
        * platform/win/fast/table/vertical-align-baseline-expected.txt:
        * platform/win/fast/table/wide-colspan-expected.txt:
        * platform/win/fast/table/wide-column-expected.txt:
        * platform/win/fast/text/atsui-negative-spacing-features-expected.txt:
        * platform/win/fast/text/atsui-spacing-features-expected.txt:
        * platform/win/fast/text/basic/001-expected.txt:
        * platform/win/fast/text/basic/006-expected.txt:
        * platform/win/fast/text/basic/007-expected.txt:
        * platform/win/fast/text/basic/generic-family-reset-expected.txt:
        * platform/win/fast/text/capitalize-boundaries-expected.txt:
        * platform/win/fast/text/international/bidi-LDB-2-CSS-expected.txt:
        * platform/win/fast/text/international/bidi-LDB-2-HTML-expected.txt:
        * platform/win/fast/text/international/bidi-LDB-2-formatting-characters-expected.txt:
        * platform/win/fast/text/international/bidi-override-expected.txt:
        * platform/win/fast/text/textIteratorNilRenderer-expected.txt:
        * platform/win/fast/text/wbr-expected.txt:
        * platform/win/fast/text/whitespace/002-expected.txt:
        * platform/win/fast/text/whitespace/003-expected.txt:
        * platform/win/fast/text/whitespace/004-expected.txt:
        * platform/win/fast/text/whitespace/005-expected.txt:
        * platform/win/fast/text/whitespace/010-expected.txt:
        * platform/win/fast/text/whitespace/011-expected.txt:
        * platform/win/fast/text/whitespace/013-expected.txt:
        * platform/win/fast/text/whitespace/014-expected.txt:
        * platform/win/fast/text/whitespace/015-expected.txt:
        * platform/win/fast/text/whitespace/016-expected.txt:
        * platform/win/fast/text/whitespace/024-expected.txt:
        * platform/win/fast/text/whitespace/025-expected.txt:
        * platform/win/fast/text/whitespace/026-expected.txt:
        * platform/win/fast/text/whitespace/027-expected.txt:
        * platform/win/fast/text/word-break-expected.txt:
        * platform/win/fast/transforms/transform-table-row-expected.txt:
        * platform/win/fast/writing-mode/table-percent-width-quirk-expected.txt:
        * platform/win/fast/writing-mode/vertical-align-table-baseline-expected.txt:
        * platform/win/http/tests/misc/acid2-expected.txt:
        * platform/win/http/tests/misc/acid2-pixel-expected.txt:
        * platform/win/http/tests/misc/generated-content-inside-table-expected.txt:
        * platform/win/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.txt:
        * platform/win/svg/as-background-image/background-image-preserveaspectRatio-support-expected.txt:
        * platform/win/tables/layering/paint-test-layering-1-expected.txt:
        * platform/win/tables/layering/paint-test-layering-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug10009-expected.txt:
        * platform/win/tables/mozilla/bugs/bug10036-expected.txt:
        * platform/win/tables/mozilla/bugs/bug10269-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug10269-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug10296-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug10296-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug1055-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug10565-expected.txt:
        * platform/win/tables/mozilla/bugs/bug10633-expected.txt:
        * platform/win/tables/mozilla/bugs/bug1067-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug1067-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug11321-expected.txt:
        * platform/win/tables/mozilla/bugs/bug1163-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug1188-expected.txt:
        * platform/win/tables/mozilla/bugs/bug11944-expected.txt:
        * platform/win/tables/mozilla/bugs/bug12008-expected.txt:
        * platform/win/tables/mozilla/bugs/bug1224-expected.txt:
        * platform/win/tables/mozilla/bugs/bug12268-expected.txt:
        * platform/win/tables/mozilla/bugs/bug12384-expected.txt:
        * platform/win/tables/mozilla/bugs/bug1261-expected.txt:
        * platform/win/tables/mozilla/bugs/bug12709-expected.txt:
        * platform/win/tables/mozilla/bugs/bug1271-expected.txt:
        * platform/win/tables/mozilla/bugs/bug12908-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug12908-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug12910-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug1296-expected.txt:
        * platform/win/tables/mozilla/bugs/bug1302-expected.txt:
        * platform/win/tables/mozilla/bugs/bug13105-expected.txt:
        * platform/win/tables/mozilla/bugs/bug13118-expected.txt:
        * platform/win/tables/mozilla/bugs/bug13169-expected.txt:
        * platform/win/tables/mozilla/bugs/bug1318-expected.txt:
        * platform/win/tables/mozilla/bugs/bug13484-expected.txt:
        * platform/win/tables/mozilla/bugs/bug13526-expected.txt:
        * platform/win/tables/mozilla/bugs/bug14159-3-expected.txt:
        * platform/win/tables/mozilla/bugs/bug1430-expected.txt:
        * platform/win/tables/mozilla/bugs/bug14323-expected.txt:
        * platform/win/tables/mozilla/bugs/bug14929-expected.txt:
        * platform/win/tables/mozilla/bugs/bug15247-expected.txt:
        * platform/win/tables/mozilla/bugs/bug15544-expected.txt:
        * platform/win/tables/mozilla/bugs/bug15933-expected.txt:
        * platform/win/tables/mozilla/bugs/bug16012-expected.txt:
        * platform/win/tables/mozilla/bugs/bug16252-expected.txt:
        * platform/win/tables/mozilla/bugs/bug17130-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug17138-expected.txt:
        * platform/win/tables/mozilla/bugs/bug17548-expected.txt:
        * platform/win/tables/mozilla/bugs/bug17587-expected.txt:
        * platform/win/tables/mozilla/bugs/bug1800-expected.txt:
        * platform/win/tables/mozilla/bugs/bug1802-expected.txt:
        * platform/win/tables/mozilla/bugs/bug1802s-expected.txt:
        * platform/win/tables/mozilla/bugs/bug1809-expected.txt:
        * platform/win/tables/mozilla/bugs/bug1828-expected.txt:
        * platform/win/tables/mozilla/bugs/bug18359-expected.txt:
        * platform/win/tables/mozilla/bugs/bug18440-expected.txt:
        * platform/win/tables/mozilla/bugs/bug18558-expected.txt:
        * platform/win/tables/mozilla/bugs/bug18664-expected.txt:
        * platform/win/tables/mozilla/bugs/bug18955-expected.txt:
        * platform/win/tables/mozilla/bugs/bug19061-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug19061-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug19356-expected.txt:
        * platform/win/tables/mozilla/bugs/bug2050-expected.txt:
        * platform/win/tables/mozilla/bugs/bug2123-expected.txt:
        * platform/win/tables/mozilla/bugs/bug2267-expected.txt:
        * platform/win/tables/mozilla/bugs/bug2296-expected.txt:
        * platform/win/tables/mozilla/bugs/bug2469-expected.txt:
        * platform/win/tables/mozilla/bugs/bug2479-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug2479-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug2479-3-expected.txt:
        * platform/win/tables/mozilla/bugs/bug2516-expected.txt:
        * platform/win/tables/mozilla/bugs/bug2585-expected.txt:
        * platform/win/tables/mozilla/bugs/bug2684-expected.txt:
        * platform/win/tables/mozilla/bugs/bug2757-expected.txt:
        * platform/win/tables/mozilla/bugs/bug2773-expected.txt:
        * platform/win/tables/mozilla/bugs/bug2886-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug2886-expected.txt:
        * platform/win/tables/mozilla/bugs/bug2954-expected.txt:
        * platform/win/tables/mozilla/bugs/bug2973-expected.txt:
        * platform/win/tables/mozilla/bugs/bug2981-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug2981-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug2997-expected.txt:
        * platform/win/tables/mozilla/bugs/bug3037-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug3037-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug3103-expected.txt:
        * platform/win/tables/mozilla/bugs/bug3191-expected.txt:
        * platform/win/tables/mozilla/bugs/bug3260-expected.txt:
        * platform/win/tables/mozilla/bugs/bug3263-expected.txt:
        * platform/win/tables/mozilla/bugs/bug3309-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug3454-expected.txt:
        * platform/win/tables/mozilla/bugs/bug3718-expected.txt:
        * platform/win/tables/mozilla/bugs/bug3977-expected.txt:
        * platform/win/tables/mozilla/bugs/bug4093-expected.txt:
        * platform/win/tables/mozilla/bugs/bug4284-expected.txt:
        * platform/win/tables/mozilla/bugs/bug4385-expected.txt:
        * platform/win/tables/mozilla/bugs/bug4427-expected.txt:
        * platform/win/tables/mozilla/bugs/bug4429-expected.txt:
        * platform/win/tables/mozilla/bugs/bug4501-expected.txt:
        * platform/win/tables/mozilla/bugs/bug4520-expected.txt:
        * platform/win/tables/mozilla/bugs/bug4527-expected.txt:
        * platform/win/tables/mozilla/bugs/bug4576-expected.txt:
        * platform/win/tables/mozilla/bugs/bug4739-expected.txt:
        * platform/win/tables/mozilla/bugs/bug4803-expected.txt:
        * platform/win/tables/mozilla/bugs/bug4849-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug4849-expected.txt:
        * platform/win/tables/mozilla/bugs/bug5188-expected.txt:
        * platform/win/tables/mozilla/bugs/bug5538-expected.txt:
        * platform/win/tables/mozilla/bugs/bug5797-expected.txt:
        * platform/win/tables/mozilla/bugs/bug5798-expected.txt:
        * platform/win/tables/mozilla/bugs/bug5799-expected.txt:
        * platform/win/tables/mozilla/bugs/bug5835-expected.txt:
        * platform/win/tables/mozilla/bugs/bug5838-expected.txt:
        * platform/win/tables/mozilla/bugs/bug6184-expected.txt:
        * platform/win/tables/mozilla/bugs/bug6304-expected.txt:
        * platform/win/tables/mozilla/bugs/bug6404-expected.txt:
        * platform/win/tables/mozilla/bugs/bug647-expected.txt:
        * platform/win/tables/mozilla/bugs/bug650-expected.txt:
        * platform/win/tables/mozilla/bugs/bug6674-expected.txt:
        * platform/win/tables/mozilla/bugs/bug709-expected.txt:
        * platform/win/tables/mozilla/bugs/bug7112-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug7112-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug7342-expected.txt:
        * platform/win/tables/mozilla/bugs/bug7714-expected.txt:
        * platform/win/tables/mozilla/bugs/bug8032-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug8361-expected.txt:
        * platform/win/tables/mozilla/bugs/bug8381-expected.txt:
        * platform/win/tables/mozilla/bugs/bug8950-expected.txt:
        * platform/win/tables/mozilla/bugs/bug9072-expected.txt:
        * platform/win/tables/mozilla/bugs/bug9123-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug9123-2-expected.txt:
        * platform/win/tables/mozilla/bugs/bug9271-1-expected.txt:
        * platform/win/tables/mozilla/bugs/bug963-expected.txt:
        * platform/win/tables/mozilla/bugs/bug965-expected.txt:
        * platform/win/tables/mozilla/bugs/bug9879-1-expected.txt:

2016-01-28  Brady Eidson  <beidson@apple.com>

        Modern IDB: Fix several more problems with object store changes during cursor iteration in SQLite backend.
        https://bugs.webkit.org/show_bug.cgi?id=153616

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2016-01-28  Brady Eidson  <beidson@apple.com>

        Modern IDB: SQLite backend doesn't handle mutation during cursor iteration.
        https://bugs.webkit.org/show_bug.cgi?id=153614

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2016-01-28  Brady Eidson  <beidson@apple.com>

        Modern IDB: SQLite backend doesn't support deleting ranges with more than one key.
        https://bugs.webkit.org/show_bug.cgi?id=153604

        Reviewed by Andy Estes.

        * platform/mac-wk1/TestExpectations:

2016-01-28  Carlos Alberto Lopez Perez  <clopez@igalia.com>

        [GTK] Unreviewed gardening after r195740.

        * platform/gtk/TestExpectations
        * platform/gtk/accessibility/table-detection-expected.txt
        * platform/gtk/css1/basic/containment-expected.png
        * platform/gtk/css1/basic/containment-expected.txt
        * platform/gtk/css1/basic/contextual_selectors-expected.png
        * platform/gtk/css1/basic/contextual_selectors-expected.txt
        * platform/gtk/css1/basic/grouping-expected.png
        * platform/gtk/css1/basic/grouping-expected.txt
        * platform/gtk/css1/basic/id_as_selector-expected.png
        * platform/gtk/css1/basic/id_as_selector-expected.txt
        * platform/gtk/css1/basic/inheritance-expected.png
        * platform/gtk/css1/basic/inheritance-expected.txt
        * platform/gtk/css1/box_properties/border-expected.png
        * platform/gtk/css1/box_properties/border-expected.txt
        * platform/gtk/css1/box_properties/border_bottom-expected.png
        * platform/gtk/css1/box_properties/border_bottom-expected.txt
        * platform/gtk/css1/box_properties/border_bottom_inline-expected.png
        * platform/gtk/css1/box_properties/border_bottom_inline-expected.txt
        * platform/gtk/css1/box_properties/border_bottom_width-expected.png
        * platform/gtk/css1/box_properties/border_bottom_width-expected.txt
        * platform/gtk/css1/box_properties/border_bottom_width_inline-expected.png
        * platform/gtk/css1/box_properties/border_bottom_width_inline-expected.txt
        * platform/gtk/css1/box_properties/border_color-expected.png
        * platform/gtk/css1/box_properties/border_color-expected.txt
        * platform/gtk/css1/box_properties/border_color_inline-expected.png
        * platform/gtk/css1/box_properties/border_color_inline-expected.txt
        * platform/gtk/css1/box_properties/border_inline-expected.png
        * platform/gtk/css1/box_properties/border_inline-expected.txt
        * platform/gtk/css1/box_properties/border_left-expected.png
        * platform/gtk/css1/box_properties/border_left-expected.txt
        * platform/gtk/css1/box_properties/border_left_inline-expected.png
        * platform/gtk/css1/box_properties/border_left_inline-expected.txt
        * platform/gtk/css1/box_properties/border_left_width-expected.png
        * platform/gtk/css1/box_properties/border_left_width-expected.txt
        * platform/gtk/css1/box_properties/border_left_width_inline-expected.png
        * platform/gtk/css1/box_properties/border_left_width_inline-expected.txt
        * platform/gtk/css1/box_properties/border_right-expected.png
        * platform/gtk/css1/box_properties/border_right-expected.txt
        * platform/gtk/css1/box_properties/border_right_inline-expected.png
        * platform/gtk/css1/box_properties/border_right_inline-expected.txt
        * platform/gtk/css1/box_properties/border_right_width-expected.png
        * platform/gtk/css1/box_properties/border_right_width-expected.txt
        * platform/gtk/css1/box_properties/border_right_width_inline-expected.png
        * platform/gtk/css1/box_properties/border_right_width_inline-expected.txt
        * platform/gtk/css1/box_properties/border_style-expected.png
        * platform/gtk/css1/box_properties/border_style-expected.txt
        * platform/gtk/css1/box_properties/border_style_inline-expected.png
        * platform/gtk/css1/box_properties/border_style_inline-expected.txt
        * platform/gtk/css1/box_properties/border_top-expected.png
        * platform/gtk/css1/box_properties/border_top-expected.txt
        * platform/gtk/css1/box_properties/border_top_inline-expected.png
        * platform/gtk/css1/box_properties/border_top_inline-expected.txt
        * platform/gtk/css1/box_properties/border_top_width-expected.png
        * platform/gtk/css1/box_properties/border_top_width-expected.txt
        * platform/gtk/css1/box_properties/border_top_width_inline-expected.png
        * platform/gtk/css1/box_properties/border_top_width_inline-expected.txt
        * platform/gtk/css1/box_properties/border_width-expected.png
        * platform/gtk/css1/box_properties/border_width-expected.txt
        * platform/gtk/css1/box_properties/border_width_inline-expected.png
        * platform/gtk/css1/box_properties/border_width_inline-expected.txt
        * platform/gtk/css1/box_properties/clear-expected.png
        * platform/gtk/css1/box_properties/clear-expected.txt
        * platform/gtk/css1/box_properties/clear_float-expected.png
        * platform/gtk/css1/box_properties/clear_float-expected.txt
        * platform/gtk/css1/box_properties/float-expected.png
        * platform/gtk/css1/box_properties/float-expected.txt
        * platform/gtk/css1/box_properties/float_elements_in_series-expected.png
        * platform/gtk/css1/box_properties/float_elements_in_series-expected.txt
        * platform/gtk/css1/box_properties/float_margin-expected.png
        * platform/gtk/css1/box_properties/float_margin-expected.txt
        * platform/gtk/css1/box_properties/float_on_text_elements-expected.png
        * platform/gtk/css1/box_properties/float_on_text_elements-expected.txt
        * platform/gtk/css1/box_properties/height-expected.png
        * platform/gtk/css1/box_properties/height-expected.txt
        * platform/gtk/css1/box_properties/margin-expected.png
        * platform/gtk/css1/box_properties/margin-expected.txt
        * platform/gtk/css1/box_properties/margin_bottom-expected.png
        * platform/gtk/css1/box_properties/margin_bottom-expected.txt
        * platform/gtk/css1/box_properties/margin_bottom_inline-expected.png
        * platform/gtk/css1/box_properties/margin_bottom_inline-expected.txt
        * platform/gtk/css1/box_properties/margin_inline-expected.png
        * platform/gtk/css1/box_properties/margin_inline-expected.txt
        * platform/gtk/css1/box_properties/margin_left-expected.png
        * platform/gtk/css1/box_properties/margin_left-expected.txt
        * platform/gtk/css1/box_properties/margin_left_inline-expected.png
        * platform/gtk/css1/box_properties/margin_left_inline-expected.txt
        * platform/gtk/css1/box_properties/margin_right-expected.png
        * platform/gtk/css1/box_properties/margin_right-expected.txt
        * platform/gtk/css1/box_properties/margin_right_inline-expected.png
        * platform/gtk/css1/box_properties/margin_right_inline-expected.txt
        * platform/gtk/css1/box_properties/margin_top-expected.png
        * platform/gtk/css1/box_properties/margin_top-expected.txt
        * platform/gtk/css1/box_properties/margin_top_inline-expected.png
        * platform/gtk/css1/box_properties/margin_top_inline-expected.txt
        * platform/gtk/css1/box_properties/padding-expected.txt
        * platform/gtk/css1/box_properties/padding_bottom-expected.png
        * platform/gtk/css1/box_properties/padding_bottom-expected.txt
        * platform/gtk/css1/box_properties/padding_bottom_inline-expected.png
        * platform/gtk/css1/box_properties/padding_bottom_inline-expected.txt
        * platform/gtk/css1/box_properties/padding_inline-expected.png
        * platform/gtk/css1/box_properties/padding_inline-expected.txt
        * platform/gtk/css1/box_properties/padding_left-expected.png
        * platform/gtk/css1/box_properties/padding_left-expected.txt
        * platform/gtk/css1/box_properties/padding_left_inline-expected.png
        * platform/gtk/css1/box_properties/padding_left_inline-expected.txt
        * platform/gtk/css1/box_properties/padding_right-expected.png
        * platform/gtk/css1/box_properties/padding_right-expected.txt
        * platform/gtk/css1/box_properties/padding_right_inline-expected.png
        * platform/gtk/css1/box_properties/padding_right_inline-expected.txt
        * platform/gtk/css1/box_properties/padding_top-expected.txt
        * platform/gtk/css1/box_properties/padding_top_inline-expected.png
        * platform/gtk/css1/box_properties/padding_top_inline-expected.txt
        * platform/gtk/css1/box_properties/width-expected.png
        * platform/gtk/css1/box_properties/width-expected.txt
        * platform/gtk/css1/cascade/cascade_order-expected.png
        * platform/gtk/css1/cascade/cascade_order-expected.txt
        * platform/gtk/css1/cascade/important-expected.png
        * platform/gtk/css1/cascade/important-expected.txt
        * platform/gtk/css1/classification/display-expected.png
        * platform/gtk/css1/classification/display-expected.txt
        * platform/gtk/css1/classification/list_style-expected.png
        * platform/gtk/css1/classification/list_style-expected.txt
        * platform/gtk/css1/classification/list_style_image-expected.png
        * platform/gtk/css1/classification/list_style_image-expected.txt
        * platform/gtk/css1/classification/list_style_position-expected.png
        * platform/gtk/css1/classification/list_style_position-expected.txt
        * platform/gtk/css1/classification/list_style_type-expected.png
        * platform/gtk/css1/classification/list_style_type-expected.txt
        * platform/gtk/css1/classification/white_space-expected.png
        * platform/gtk/css1/classification/white_space-expected.txt
        * platform/gtk/css1/color_and_background/background-expected.png
        * platform/gtk/css1/color_and_background/background-expected.txt
        * platform/gtk/css1/color_and_background/background_attachment-expected.png
        * platform/gtk/css1/color_and_background/background_attachment-expected.txt
        * platform/gtk/css1/color_and_background/background_color-expected.png
        * platform/gtk/css1/color_and_background/background_color-expected.txt
        * platform/gtk/css1/color_and_background/background_image-expected.png
        * platform/gtk/css1/color_and_background/background_image-expected.txt
        * platform/gtk/css1/color_and_background/background_position-expected.png
        * platform/gtk/css1/color_and_background/background_position-expected.txt
        * platform/gtk/css1/color_and_background/background_repeat-expected.png
        * platform/gtk/css1/color_and_background/background_repeat-expected.txt
        * platform/gtk/css1/color_and_background/color-expected.png
        * platform/gtk/css1/color_and_background/color-expected.txt
        * platform/gtk/css1/conformance/forward_compatible_parsing-expected.txt
        * platform/gtk/css1/font_properties/font-expected.png
        * platform/gtk/css1/font_properties/font-expected.txt
        * platform/gtk/css1/font_properties/font_family-expected.png
        * platform/gtk/css1/font_properties/font_family-expected.txt
        * platform/gtk/css1/font_properties/font_size-expected.png
        * platform/gtk/css1/font_properties/font_size-expected.txt
        * platform/gtk/css1/font_properties/font_style-expected.png
        * platform/gtk/css1/font_properties/font_style-expected.txt
        * platform/gtk/css1/font_properties/font_variant-expected.png
        * platform/gtk/css1/font_properties/font_variant-expected.txt
        * platform/gtk/css1/font_properties/font_weight-expected.png
        * platform/gtk/css1/font_properties/font_weight-expected.txt
        * platform/gtk/css1/formatting_model/canvas-expected.png
        * platform/gtk/css1/formatting_model/canvas-expected.txt
        * platform/gtk/css1/formatting_model/floating_elements-expected.png
        * platform/gtk/css1/formatting_model/floating_elements-expected.txt
        * platform/gtk/css1/formatting_model/height_of_lines-expected.png
        * platform/gtk/css1/formatting_model/height_of_lines-expected.txt
        * platform/gtk/css1/formatting_model/inline_elements-expected.png
        * platform/gtk/css1/formatting_model/inline_elements-expected.txt
        * platform/gtk/css1/formatting_model/replaced_elements-expected.png
        * platform/gtk/css1/formatting_model/replaced_elements-expected.txt
        * platform/gtk/css1/formatting_model/vertical_formatting-expected.txt
        * platform/gtk/css1/pseudo/anchor-expected.png
        * platform/gtk/css1/pseudo/anchor-expected.txt
        * platform/gtk/css1/pseudo/firstletter-expected.png
        * platform/gtk/css1/pseudo/firstletter-expected.txt
        * platform/gtk/css1/pseudo/firstline-expected.png
        * platform/gtk/css1/pseudo/firstline-expected.txt
        * platform/gtk/css1/pseudo/multiple_pseudo_elements-expected.png
        * platform/gtk/css1/pseudo/multiple_pseudo_elements-expected.txt
        * platform/gtk/css1/pseudo/pseudo_elements_in_selectors-expected.png
        * platform/gtk/css1/pseudo/pseudo_elements_in_selectors-expected.txt
        * platform/gtk/css1/text_properties/letter_spacing-expected.txt
        * platform/gtk/css1/text_properties/line_height-expected.png
        * platform/gtk/css1/text_properties/line_height-expected.txt
        * platform/gtk/css1/text_properties/text_align-expected.png
        * platform/gtk/css1/text_properties/text_align-expected.txt
        * platform/gtk/css1/text_properties/text_decoration-expected.png
        * platform/gtk/css1/text_properties/text_decoration-expected.txt
        * platform/gtk/css1/text_properties/text_indent-expected.png
        * platform/gtk/css1/text_properties/text_indent-expected.txt
        * platform/gtk/css1/text_properties/text_transform-expected.png
        * platform/gtk/css1/text_properties/text_transform-expected.txt
        * platform/gtk/css1/text_properties/vertical_align-expected.png
        * platform/gtk/css1/text_properties/vertical_align-expected.txt
        * platform/gtk/css1/text_properties/word_spacing-expected.png
        * platform/gtk/css1/text_properties/word_spacing-expected.txt
        * platform/gtk/css1/units/color_units-expected.png
        * platform/gtk/css1/units/color_units-expected.txt
        * platform/gtk/css1/units/length_units-expected.png
        * platform/gtk/css1/units/length_units-expected.txt
        * platform/gtk/css1/units/percentage_units-expected.png
        * platform/gtk/css1/units/percentage_units-expected.txt
        * platform/gtk/css1/units/urls-expected.png
        * platform/gtk/css1/units/urls-expected.txt
        * platform/gtk/css2.1/20110323/border-collapse-offset-002-expected.png
        * platform/gtk/css2.1/20110323/border-collapse-offset-002-expected.txt
        * platform/gtk/css2.1/20110323/border-conflict-style-079-expected.png
        * platform/gtk/css2.1/20110323/border-conflict-style-079-expected.txt
        * platform/gtk/css2.1/20110323/border-conflict-style-088-expected.png
        * platform/gtk/css2.1/20110323/border-conflict-style-088-expected.txt
        * platform/gtk/css2.1/20110323/dynamic-top-change-002-expected.txt
        * platform/gtk/css2.1/20110323/dynamic-top-change-003-expected.txt
        * platform/gtk/css2.1/20110323/inline-table-001-expected.txt
        * platform/gtk/css2.1/20110323/inline-table-003-expected.txt
        * platform/gtk/css2.1/20110323/margin-applies-to-001-expected.txt
        * platform/gtk/css2.1/20110323/margin-applies-to-002-expected.txt
        * platform/gtk/css2.1/20110323/margin-applies-to-003-expected.txt
        * platform/gtk/css2.1/20110323/margin-applies-to-004-expected.txt
        * platform/gtk/css2.1/20110323/margin-applies-to-005-expected.txt
        * platform/gtk/css2.1/20110323/margin-applies-to-006-expected.txt
        * platform/gtk/css2.1/20110323/margin-applies-to-007-expected.txt
        * platform/gtk/css2.1/20110323/margin-applies-to-013-expected.txt
        * platform/gtk/css2.1/20110323/margin-applies-to-014-expected.txt
        * platform/gtk/css2.1/20110323/margin-applies-to-015-expected.txt
        * platform/gtk/css2.1/20110323/replaced-intrinsic-ratio-001-expected.png
        * platform/gtk/css2.1/20110323/replaced-intrinsic-ratio-001-expected.txt
        * platform/gtk/css2.1/20110323/table-caption-001-expected.txt
        * platform/gtk/css2.1/20110323/table-caption-optional-001-expected.txt
        * platform/gtk/css2.1/20110323/table-caption-optional-002-expected.txt
        * platform/gtk/css2.1/t040302-c61-ex-len-00-b-a-expected.txt
        * platform/gtk/css2.1/t0803-c5501-mrgn-t-00-b-a-expected.txt
        * platform/gtk/css2.1/t0803-c5503-mrgn-b-00-b-a-expected.txt
        * platform/gtk/css2.1/t080301-c411-vt-mrgn-00-b-expected.txt
        * platform/gtk/css2.1/t0804-c5506-padn-t-00-b-a-expected.txt
        * platform/gtk/css2.1/t0804-c5508-ipadn-b-03-b-a-expected.txt
        * platform/gtk/css2.1/t090402-c42-ibx-pad-00-d-ag-expected.txt
        * platform/gtk/css2.1/t0905-c5525-fltmult-00-d-g-expected.txt
        * platform/gtk/css2.1/t170602-bdr-conflct-w-04-d-expected.png
        * platform/gtk/css2.1/t170602-bdr-conflct-w-04-d-expected.txt
        * platform/gtk/css2.1/t170602-bdr-conflct-w-06-d-expected.png
        * platform/gtk/css2.1/t170602-bdr-conflct-w-06-d-expected.txt
        * platform/gtk/css2.1/t170602-bdr-conflct-w-08-d-expected.png
        * platform/gtk/css2.1/t170602-bdr-conflct-w-08-d-expected.txt
        * platform/gtk/css2.1/t170602-bdr-conflct-w-13-d-expected.png
        * platform/gtk/css2.1/t170602-bdr-conflct-w-13-d-expected.txt
        * platform/gtk/css2.1/t170602-bdr-conflct-w-14-d-expected.png
        * platform/gtk/css2.1/t170602-bdr-conflct-w-14-d-expected.txt
        * platform/gtk/css2.1/t170602-bdr-conflct-w-16-d-expected.png
        * platform/gtk/css2.1/t170602-bdr-conflct-w-16-d-expected.txt
        * platform/gtk/css2.1/t170602-bdr-conflct-w-17-d-expected.png
        * platform/gtk/css2.1/t170602-bdr-conflct-w-17-d-expected.txt
        * platform/gtk/css2.1/t170602-bdr-conflct-w-18-d-expected.png
        * platform/gtk/css2.1/t170602-bdr-conflct-w-18-d-expected.txt
        * platform/gtk/css2.1/t170602-bdr-conflct-w-24-d-expected.png
        * platform/gtk/css2.1/t170602-bdr-conflct-w-24-d-expected.txt
        * platform/gtk/css2.1/t170602-bdr-conflct-w-25-d-expected.png
        * platform/gtk/css2.1/t170602-bdr-conflct-w-25-d-expected.txt
        * platform/gtk/css2.1/t170602-bdr-conflct-w-30-d-expected.png
        * platform/gtk/css2.1/t170602-bdr-conflct-w-30-d-expected.txt
        * platform/gtk/css2.1/t170602-bdr-conflct-w-31-d-expected.png
        * platform/gtk/css2.1/t170602-bdr-conflct-w-31-d-expected.txt
        * platform/gtk/css2.1/t170602-bdr-conflct-w-34-d-expected.png
        * platform/gtk/css2.1/t170602-bdr-conflct-w-34-d-expected.txt
        * platform/gtk/css2.1/t170602-bdr-conflct-w-44-d-expected.png
        * platform/gtk/css2.1/t170602-bdr-conflct-w-44-d-expected.txt
        * platform/gtk/css2.1/t170602-bdr-conflct-w-52-d-expected.png
        * platform/gtk/css2.1/t170602-bdr-conflct-w-52-d-expected.txt
        * platform/gtk/css2.1/t170602-bdr-conflct-w-54-d-expected.png
        * platform/gtk/css2.1/t170602-bdr-conflct-w-54-d-expected.txt
        * platform/gtk/css2.1/t170602-bdr-conflct-w-59-d-expected.png
        * platform/gtk/css2.1/t170602-bdr-conflct-w-59-d-expected.txt
        * platform/gtk/css2.1/t170602-bdr-conflct-w-64-d-expected.png
        * platform/gtk/css2.1/t170602-bdr-conflct-w-64-d-expected.txt
        * platform/gtk/css2.1/t170602-bdr-conflct-w-65-d-expected.png
        * platform/gtk/css2.1/t170602-bdr-conflct-w-65-d-expected.txt
        * platform/gtk/css2.1/t170602-bdr-conflct-w-70-d-expected.png
        * platform/gtk/css2.1/t170602-bdr-conflct-w-70-d-expected.txt
        * platform/gtk/css2.1/t170602-bdr-conflct-w-71-d-expected.png
        * platform/gtk/css2.1/t170602-bdr-conflct-w-71-d-expected.txt
        * platform/gtk/css2.1/t170602-bdr-conflct-w-74-d-expected.png
        * platform/gtk/css2.1/t170602-bdr-conflct-w-74-d-expected.txt
        * platform/gtk/css2.1/t170602-bdr-conflct-w-84-d-expected.png
        * platform/gtk/css2.1/t170602-bdr-conflct-w-84-d-expected.txt
        * platform/gtk/css2.1/t170602-bdr-conflct-w-85-d-expected.png
        * platform/gtk/css2.1/t170602-bdr-conflct-w-85-d-expected.txt
        * platform/gtk/css2.1/t170602-bdr-conflct-w-94-d-expected.png
        * platform/gtk/css2.1/t170602-bdr-conflct-w-94-d-expected.txt
        * platform/gtk/css2.1/tables/table-anonymous-objects-177-expected.txt
        * platform/gtk/css2.1/tables/table-anonymous-objects-178-expected.txt
        * platform/gtk/css2.1/tables/table-anonymous-objects-179-expected.txt
        * platform/gtk/css2.1/tables/table-anonymous-objects-180-expected.txt
        * platform/gtk/css2.1/tables/table-anonymous-objects-181-expected.txt
        * platform/gtk/css2.1/tables/table-anonymous-objects-189-expected.txt
        * platform/gtk/css2.1/tables/table-anonymous-objects-190-expected.txt
        * platform/gtk/css2.1/tables/table-anonymous-objects-191-expected.txt
        * platform/gtk/css2.1/tables/table-anonymous-objects-192-expected.txt
        * platform/gtk/css2.1/tables/table-anonymous-objects-193-expected.txt
        * platform/gtk/css2.1/tables/table-anonymous-objects-194-expected.txt
        * platform/gtk/css2.1/tables/table-anonymous-objects-195-expected.txt
        * platform/gtk/css2.1/tables/table-anonymous-objects-196-expected.txt
        * platform/gtk/css2.1/tables/table-anonymous-objects-205-expected.txt
        * platform/gtk/css2.1/tables/table-anonymous-objects-206-expected.txt
        * platform/gtk/css3/css3-modsel-33-expected.png
        * platform/gtk/css3/css3-modsel-33-expected.txt
        * platform/gtk/css3/selectors3/html/css3-modsel-18-expected.png
        * platform/gtk/css3/selectors3/html/css3-modsel-18-expected.txt
        * platform/gtk/css3/selectors3/html/css3-modsel-29-expected.png
        * platform/gtk/css3/selectors3/html/css3-modsel-29-expected.txt
        * platform/gtk/css3/selectors3/html/css3-modsel-29b-expected.png
        * platform/gtk/css3/selectors3/html/css3-modsel-29b-expected.txt
        * platform/gtk/css3/selectors3/html/css3-modsel-33-expected.png
        * platform/gtk/css3/selectors3/html/css3-modsel-33-expected.txt
        * platform/gtk/css3/selectors3/html/css3-modsel-73-expected.png
        * platform/gtk/css3/selectors3/html/css3-modsel-73-expected.txt
        * platform/gtk/css3/selectors3/html/css3-modsel-73b-expected.png
        * platform/gtk/css3/selectors3/html/css3-modsel-73b-expected.txt
        * platform/gtk/css3/selectors3/html/css3-modsel-77-expected.png
        * platform/gtk/css3/selectors3/html/css3-modsel-77-expected.txt
        * platform/gtk/css3/selectors3/html/css3-modsel-77b-expected.png
        * platform/gtk/css3/selectors3/html/css3-modsel-77b-expected.txt
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-18-expected.png
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-18-expected.txt
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-29-expected.png
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-29-expected.txt
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-29b-expected.png
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-29b-expected.txt
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-33-expected.png
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-33-expected.txt
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-73-expected.png
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-73-expected.txt
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-73b-expected.png
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-73b-expected.txt
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-77-expected.png
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-77-expected.txt
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-77b-expected.png
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-77b-expected.txt
        * platform/gtk/css3/selectors3/xml/css3-modsel-18-expected.png
        * platform/gtk/css3/selectors3/xml/css3-modsel-18-expected.txt
        * platform/gtk/css3/selectors3/xml/css3-modsel-29-expected.png
        * platform/gtk/css3/selectors3/xml/css3-modsel-29-expected.txt
        * platform/gtk/css3/selectors3/xml/css3-modsel-29b-expected.png
        * platform/gtk/css3/selectors3/xml/css3-modsel-29b-expected.txt
        * platform/gtk/css3/selectors3/xml/css3-modsel-33-expected.png
        * platform/gtk/css3/selectors3/xml/css3-modsel-33-expected.txt
        * platform/gtk/css3/selectors3/xml/css3-modsel-73-expected.png
        * platform/gtk/css3/selectors3/xml/css3-modsel-73-expected.txt
        * platform/gtk/css3/selectors3/xml/css3-modsel-73b-expected.png
        * platform/gtk/css3/selectors3/xml/css3-modsel-73b-expected.txt
        * platform/gtk/css3/selectors3/xml/css3-modsel-77-expected.png
        * platform/gtk/css3/selectors3/xml/css3-modsel-77-expected.txt
        * platform/gtk/css3/selectors3/xml/css3-modsel-77b-expected.png
        * platform/gtk/css3/selectors3/xml/css3-modsel-77b-expected.txt
        * platform/gtk/editing/deleting/4922367-expected.txt
        * platform/gtk/editing/deleting/5126166-expected.png
        * platform/gtk/editing/deleting/5126166-expected.txt
        * platform/gtk/editing/deleting/5144139-2-expected.png
        * platform/gtk/editing/deleting/5144139-2-expected.txt
        * platform/gtk/editing/deleting/5206311-1-expected.png
        * platform/gtk/editing/deleting/5206311-1-expected.txt
        * platform/gtk/editing/deleting/5433862-2-expected.png
        * platform/gtk/editing/deleting/5433862-2-expected.txt
        * platform/gtk/editing/inserting/paragraph-separator-in-table-1-expected.png
        * platform/gtk/editing/inserting/paragraph-separator-in-table-1-expected.txt
        * platform/gtk/editing/pasteboard/innerText-inline-table-expected.png
        * platform/gtk/editing/pasteboard/innerText-inline-table-expected.txt
        * platform/gtk/editing/selection/3690703-2-expected.png
        * platform/gtk/editing/selection/3690703-2-expected.txt
        * platform/gtk/editing/selection/3690703-expected.png
        * platform/gtk/editing/selection/3690703-expected.txt
        * platform/gtk/editing/selection/3690719-expected.png
        * platform/gtk/editing/selection/3690719-expected.txt
        * platform/gtk/editing/selection/5057506-2-expected.png
        * platform/gtk/editing/selection/5057506-2-expected.txt
        * platform/gtk/editing/selection/5057506-expected.png
        * platform/gtk/editing/selection/5057506-expected.txt
        * platform/gtk/editing/selection/5131716-1-expected.txt
        * platform/gtk/editing/selection/5131716-2-expected.txt
        * platform/gtk/editing/selection/5131716-3-expected.txt
        * platform/gtk/editing/selection/5131716-4-expected.txt
        * platform/gtk/editing/selection/move-by-line-001-expected.png
        * platform/gtk/editing/selection/move-by-line-001-expected.txt
        * platform/gtk/editing/selection/select-all-004-expected.png
        * platform/gtk/editing/selection/select-all-004-expected.txt
        * platform/gtk/editing/unsupported-content/table-type-after-expected.png
        * platform/gtk/editing/unsupported-content/table-type-after-expected.txt
        * platform/gtk/editing/unsupported-content/table-type-before-expected.png
        * platform/gtk/editing/unsupported-content/table-type-before-expected.txt
        * platform/gtk/fast/block/basic/016-expected.txt
        * platform/gtk/fast/block/basic/quirk-percent-height-table-cell-expected.png
        * platform/gtk/fast/block/basic/quirk-percent-height-table-cell-expected.txt
        * platform/gtk/fast/block/float/015-expected.png
        * platform/gtk/fast/block/float/015-expected.txt
        * platform/gtk/fast/block/margin-collapse/006-expected.txt
        * platform/gtk/fast/block/margin-collapse/010-expected.txt
        * platform/gtk/fast/block/margin-collapse/011-expected.txt
        * platform/gtk/fast/block/margin-collapse/012-expected.txt
        * platform/gtk/fast/block/margin-collapse/015-expected.txt
        * platform/gtk/fast/block/margin-collapse/016-expected.txt
        * platform/gtk/fast/block/margin-collapse/017-expected.txt
        * platform/gtk/fast/block/margin-collapse/018-expected.txt
        * platform/gtk/fast/block/margin-collapse/019-expected.png
        * platform/gtk/fast/block/margin-collapse/019-expected.txt
        * platform/gtk/fast/block/margin-collapse/020-expected.png
        * platform/gtk/fast/block/margin-collapse/020-expected.txt
        * platform/gtk/fast/block/margin-collapse/021-expected.txt
        * platform/gtk/fast/block/margin-collapse/022-expected.txt
        * platform/gtk/fast/block/margin-collapse/025-expected.txt
        * platform/gtk/fast/block/margin-collapse/032-expected.txt
        * platform/gtk/fast/block/margin-collapse/033-expected.txt
        * platform/gtk/fast/block/margin-collapse/034-expected.txt
        * platform/gtk/fast/block/margin-collapse/041-expected.txt
        * platform/gtk/fast/block/margin-collapse/042-expected.txt
        * platform/gtk/fast/block/margin-collapse/055-expected.txt
        * platform/gtk/fast/block/margin-collapse/056-expected.txt
        * platform/gtk/fast/block/margin-collapse/057-expected.txt
        * platform/gtk/fast/block/margin-collapse/058-expected.txt
        * platform/gtk/fast/block/margin-collapse/059-expected.txt
        * platform/gtk/fast/block/margin-collapse/block-inside-inline/006-expected.txt
        * platform/gtk/fast/block/margin-collapse/block-inside-inline/010-expected.txt
        * platform/gtk/fast/block/margin-collapse/block-inside-inline/011-expected.txt
        * platform/gtk/fast/block/margin-collapse/block-inside-inline/012-expected.txt
        * platform/gtk/fast/block/margin-collapse/block-inside-inline/015-expected.txt
        * platform/gtk/fast/block/margin-collapse/block-inside-inline/016-expected.txt
        * platform/gtk/fast/block/margin-collapse/block-inside-inline/017-expected.txt
        * platform/gtk/fast/block/margin-collapse/block-inside-inline/018-expected.txt
        * platform/gtk/fast/block/margin-collapse/block-inside-inline/019-expected.png
        * platform/gtk/fast/block/margin-collapse/block-inside-inline/019-expected.txt
        * platform/gtk/fast/block/margin-collapse/block-inside-inline/020-expected.png
        * platform/gtk/fast/block/margin-collapse/block-inside-inline/020-expected.txt
        * platform/gtk/fast/block/margin-collapse/block-inside-inline/021-expected.txt
        * platform/gtk/fast/block/margin-collapse/block-inside-inline/022-expected.txt
        * platform/gtk/fast/block/margin-collapse/block-inside-inline/025-expected.txt
        * platform/gtk/fast/block/positioning/table-cell-static-position-expected.txt
        * platform/gtk/fast/borders/border-antialiasing-expected.png
        * platform/gtk/fast/borders/border-antialiasing-expected.txt
        * platform/gtk/fast/borders/border-radius-different-width-001-expected.png
        * platform/gtk/fast/borders/border-radius-different-width-001-expected.txt
        * platform/gtk/fast/borders/table-borders-expected.png
        * platform/gtk/fast/borders/table-borders-expected.txt
        * platform/gtk/fast/css-generated-content/first-letter-in-nested-before-expected.txt
        * platform/gtk/fast/css-generated-content/first-letter-in-nested-before-table-expected.txt
        * platform/gtk/fast/css-generated-content/nested-tables-with-before-after-content-crash-expected.txt
        * platform/gtk/fast/css-generated-content/table-cell-before-after-child-add-expected.txt
        * platform/gtk/fast/css-generated-content/table-parts-before-and-after-expected.txt
        * platform/gtk/fast/css-generated-content/table-row-group-with-before-expected.png
        * platform/gtk/fast/css-generated-content/table-row-group-with-before-expected.txt
        * platform/gtk/fast/css-generated-content/table-row-with-before-expected.png
        * platform/gtk/fast/css-generated-content/table-row-with-before-expected.txt
        * platform/gtk/fast/css-generated-content/table-with-before-expected.png
        * platform/gtk/fast/css-generated-content/table-with-before-expected.txt
        * platform/gtk/fast/css/003-expected.txt
        * platform/gtk/fast/css/absolute-poition-in-rtl-parent-expected.txt
        * platform/gtk/fast/css/acid2-expected.png
        * platform/gtk/fast/css/acid2-expected.txt
        * platform/gtk/fast/css/acid2-pixel-expected.png
        * platform/gtk/fast/css/acid2-pixel-expected.txt
        * platform/gtk/fast/css/bidi-override-in-anonymous-block-expected.png
        * platform/gtk/fast/css/bidi-override-in-anonymous-block-expected.txt
        * platform/gtk/fast/css/box-shadow-and-border-radius-expected.png
        * platform/gtk/fast/css/box-shadow-and-border-radius-expected.txt
        * platform/gtk/fast/css/caption-width-absolute-position-expected.txt
        * platform/gtk/fast/css/caption-width-absolute-position-offset-top-expected.txt
        * platform/gtk/fast/css/caption-width-fixed-position-expected.txt
        * platform/gtk/fast/css/caption-width-fixed-position-offset-top-expected.txt
        * platform/gtk/fast/css/caption-width-relative-position-expected.txt
        * platform/gtk/fast/css/caption-width-relative-position-offset-top-expected.txt
        * platform/gtk/fast/css/css3-nth-child-expected.png
        * platform/gtk/fast/css/css3-nth-child-expected.txt
        * platform/gtk/fast/css/focus-ring-detached-expected.png
        * platform/gtk/fast/css/focus-ring-detached-expected.txt
        * platform/gtk/fast/css/focus-ring-multiline-expected.png
        * platform/gtk/fast/css/focus-ring-multiline-expected.txt
        * platform/gtk/fast/css/h1-in-section-elements-expected.png
        * platform/gtk/fast/css/h1-in-section-elements-expected.txt
        * platform/gtk/fast/css/min-width-with-spanned-cell-expected.txt
        * platform/gtk/fast/css/percentage-non-integer-expected.png
        * platform/gtk/fast/css/percentage-non-integer-expected.txt
        * platform/gtk/fast/css/table-text-align-quirk-expected.txt
        * platform/gtk/fast/css/table-text-align-strict-expected.txt
        * platform/gtk/fast/dom/34176-expected.png
        * platform/gtk/fast/dom/34176-expected.txt
        * platform/gtk/fast/dom/HTMLTableElement/colSpan-expected.png
        * platform/gtk/fast/dom/HTMLTableElement/colSpan-expected.txt
        * platform/gtk/fast/dom/HTMLTableElement/createCaption-expected.png
        * platform/gtk/fast/dom/HTMLTableElement/createCaption-expected.txt
        * platform/gtk/fast/dom/row-inner-text-expected.png
        * platform/gtk/fast/dom/row-inner-text-expected.txt
        * platform/gtk/fast/dynamic/001-expected.txt
        * platform/gtk/fast/dynamic/containing-block-change-expected.png
        * platform/gtk/fast/dynamic/containing-block-change-expected.txt
        * platform/gtk/fast/dynamic/float-withdrawal-expected.png
        * platform/gtk/fast/dynamic/float-withdrawal-expected.txt
        * platform/gtk/fast/dynamic/insert-before-table-part-in-continuation-expected.png
        * platform/gtk/fast/dynamic/insert-before-table-part-in-continuation-expected.txt
        * platform/gtk/fast/dynamic/subtree-table-cell-height-expected.txt
        * platform/gtk/fast/encoding/utf-16-big-endian-expected.png
        * platform/gtk/fast/encoding/utf-16-big-endian-expected.txt
        * platform/gtk/fast/encoding/utf-16-little-endian-expected.png
        * platform/gtk/fast/encoding/utf-16-little-endian-expected.txt
        * platform/gtk/fast/forms/001-expected.png
        * platform/gtk/fast/forms/001-expected.txt
        * platform/gtk/fast/forms/005-expected.txt
        * platform/gtk/fast/forms/basic-buttons-expected.png
        * platform/gtk/fast/forms/basic-buttons-expected.txt
        * platform/gtk/fast/forms/form-element-geometry-expected.png
        * platform/gtk/fast/forms/form-element-geometry-expected.txt
        * platform/gtk/fast/forms/form-hides-table-expected.png
        * platform/gtk/fast/forms/form-hides-table-expected.txt
        * platform/gtk/fast/forms/form-in-malformed-markup-expected.txt
        * platform/gtk/fast/forms/formmove3-expected.png
        * platform/gtk/fast/forms/formmove3-expected.txt
        * platform/gtk/fast/forms/input-table-expected.png
        * platform/gtk/fast/forms/input-table-expected.txt
        * platform/gtk/fast/forms/listbox-bidi-align-expected.png
        * platform/gtk/fast/forms/listbox-bidi-align-expected.txt
        * platform/gtk/fast/forms/preserveFormDuringResidualStyle-expected.txt
        * platform/gtk/fast/forms/select-dirty-parent-pref-widths-expected.png
        * platform/gtk/fast/forms/select-dirty-parent-pref-widths-expected.txt
        * platform/gtk/fast/html/details-writing-mode-expected.png
        * platform/gtk/fast/html/details-writing-mode-expected.txt
        * platform/gtk/fast/inline-block/001-expected.txt
        * platform/gtk/fast/inline-block/overflow-clip-expected.png
        * platform/gtk/fast/inline-block/overflow-clip-expected.txt
        * platform/gtk/fast/invalid/012-expected.txt
        * platform/gtk/fast/invalid/018-expected.txt
        * platform/gtk/fast/lists/004-expected.png
        * platform/gtk/fast/lists/004-expected.txt
        * platform/gtk/fast/lists/list-marker-before-content-table-expected.png
        * platform/gtk/fast/lists/list-marker-before-content-table-expected.txt
        * platform/gtk/fast/multicol/span/before-child-anonymous-column-block-expected.txt
        * platform/gtk/fast/multicol/table-vertical-align-expected.png
        * platform/gtk/fast/overflow/002-expected.png
        * platform/gtk/fast/overflow/002-expected.txt
        * platform/gtk/fast/overflow/overflow-rtl-expected.png
        * platform/gtk/fast/overflow/overflow-rtl-expected.txt
        * platform/gtk/fast/overflow/overflow-rtl-vertical-expected.png
        * platform/gtk/fast/overflow/overflow-rtl-vertical-expected.txt
        * platform/gtk/fast/overflow/table-overflow-float-expected.txt
        * platform/gtk/fast/reflections/table-cell-expected.txt
        * platform/gtk/fast/repaint/block-selection-gap-in-table-cell-expected.txt
        * platform/gtk/fast/repaint/float-overflow-expected.png
        * platform/gtk/fast/repaint/float-overflow-expected.txt
        * platform/gtk/fast/repaint/float-overflow-right-expected.png
        * platform/gtk/fast/repaint/float-overflow-right-expected.txt
        * platform/gtk/fast/repaint/subtree-root-clip-3-expected.txt
        * platform/gtk/fast/repaint/table-cell-collapsed-border-expected.png
        * platform/gtk/fast/repaint/table-cell-collapsed-border-expected.txt
        * platform/gtk/fast/repaint/table-cell-collapsed-border-scroll-expected.txt
        * platform/gtk/fast/repaint/table-cell-move-expected.png
        * platform/gtk/fast/repaint/table-cell-move-expected.txt
        * platform/gtk/fast/repaint/table-cell-overflow-expected.txt
        * platform/gtk/fast/repaint/table-cell-vertical-overflow-expected.png
        * platform/gtk/fast/repaint/table-cell-vertical-overflow-expected.txt
        * platform/gtk/fast/repaint/table-col-background-expected.txt
        * platform/gtk/fast/repaint/table-collapsed-border-expected.txt
        * platform/gtk/fast/repaint/table-extra-bottom-grow-expected.png
        * platform/gtk/fast/repaint/table-extra-bottom-grow-expected.txt
        * platform/gtk/fast/repaint/table-outer-border-expected.txt
        * platform/gtk/fast/repaint/table-row-expected.txt
        * platform/gtk/fast/repaint/table-section-overflow-expected.txt
        * platform/gtk/fast/repaint/table-section-repaint-expected.txt
        * platform/gtk/fast/repaint/table-two-pass-layout-overpaint-expected.png
        * platform/gtk/fast/repaint/table-two-pass-layout-overpaint-expected.txt
        * platform/gtk/fast/repaint/table-writing-modes-h-expected.txt
        * platform/gtk/fast/repaint/table-writing-modes-v-expected.txt
        * platform/gtk/fast/replaced/005-expected.png
        * platform/gtk/fast/replaced/005-expected.txt
        * platform/gtk/fast/replaced/percent-height-in-anonymous-block-in-table-expected.png
        * platform/gtk/fast/replaced/percent-height-in-anonymous-block-in-table-expected.txt
        * platform/gtk/fast/replaced/selection-rect-in-table-cell-expected.png
        * platform/gtk/fast/replaced/selection-rect-in-table-cell-expected.txt
        * platform/gtk/fast/replaced/table-percent-height-positioned-expected.txt
        * platform/gtk/fast/replaced/width100percent-checkbox-expected.png
        * platform/gtk/fast/replaced/width100percent-checkbox-expected.txt
        * platform/gtk/fast/replaced/width100percent-image-expected.png
        * platform/gtk/fast/replaced/width100percent-image-expected.txt
        * platform/gtk/fast/replaced/width100percent-menulist-expected.png
        * platform/gtk/fast/replaced/width100percent-menulist-expected.txt
        * platform/gtk/fast/replaced/width100percent-radio-expected.png
        * platform/gtk/fast/replaced/width100percent-radio-expected.txt
        * platform/gtk/fast/replaced/width100percent-searchfield-expected.png
        * platform/gtk/fast/replaced/width100percent-searchfield-expected.txt
        * platform/gtk/fast/replaced/width100percent-textarea-expected.png
        * platform/gtk/fast/replaced/width100percent-textarea-expected.txt
        * platform/gtk/fast/replaced/width100percent-textfield-expected.png
        * platform/gtk/fast/replaced/width100percent-textfield-expected.txt
        * platform/gtk/fast/selectors/077-expected.png
        * platform/gtk/fast/selectors/077-expected.txt
        * platform/gtk/fast/selectors/077b-expected.png
        * platform/gtk/fast/selectors/077b-expected.txt
        * platform/gtk/fast/table/002-expected.png
        * platform/gtk/fast/table/002-expected.txt
        * platform/gtk/fast/table/005-expected.png
        * platform/gtk/fast/table/005-expected.txt
        * platform/gtk/fast/table/007-expected.png
        * platform/gtk/fast/table/007-expected.txt
        * platform/gtk/fast/table/008-expected.txt
        * platform/gtk/fast/table/009-expected.png
        * platform/gtk/fast/table/009-expected.txt
        * platform/gtk/fast/table/012-expected.txt
        * platform/gtk/fast/table/013-expected.png
        * platform/gtk/fast/table/013-expected.txt
        * platform/gtk/fast/table/021-expected.png
        * platform/gtk/fast/table/021-expected.txt
        * platform/gtk/fast/table/023-expected.png
        * platform/gtk/fast/table/023-expected.txt
        * platform/gtk/fast/table/024-expected.txt
        * platform/gtk/fast/table/025-expected.png
        * platform/gtk/fast/table/025-expected.txt
        * platform/gtk/fast/table/028-expected.png
        * platform/gtk/fast/table/028-expected.txt
        * platform/gtk/fast/table/028-vertical-expected.png
        * platform/gtk/fast/table/028-vertical-expected.txt
        * platform/gtk/fast/table/029-expected.png
        * platform/gtk/fast/table/029-expected.txt
        * platform/gtk/fast/table/031-expected.txt
        * platform/gtk/fast/table/032-expected.txt
        * platform/gtk/fast/table/034-expected.txt
        * platform/gtk/fast/table/038-expected.png
        * platform/gtk/fast/table/038-expected.txt
        * platform/gtk/fast/table/038-vertical-expected.png
        * platform/gtk/fast/table/038-vertical-expected.txt
        * platform/gtk/fast/table/039-expected.png
        * platform/gtk/fast/table/039-expected.txt
        * platform/gtk/fast/table/040-expected.png
        * platform/gtk/fast/table/040-expected.txt
        * platform/gtk/fast/table/040-vertical-expected.png
        * platform/gtk/fast/table/040-vertical-expected.txt
        * platform/gtk/fast/table/100-percent-cell-width-expected.png
        * platform/gtk/fast/table/100-percent-cell-width-expected.txt
        * platform/gtk/fast/table/add-before-anonymous-child-expected.png
        * platform/gtk/fast/table/add-before-anonymous-child-expected.txt
        * platform/gtk/fast/table/border-collapsing/001-expected.png
        * platform/gtk/fast/table/border-collapsing/001-expected.txt
        * platform/gtk/fast/table/border-collapsing/001-vertical-expected.png
        * platform/gtk/fast/table/border-collapsing/001-vertical-expected.txt
        * platform/gtk/fast/table/border-collapsing/002-expected.png
        * platform/gtk/fast/table/border-collapsing/002-expected.txt
        * platform/gtk/fast/table/border-collapsing/002-vertical-expected.png
        * platform/gtk/fast/table/border-collapsing/002-vertical-expected.txt
        * platform/gtk/fast/table/border-collapsing/003-expected.txt
        * platform/gtk/fast/table/border-collapsing/003-vertical-expected.txt
        * platform/gtk/fast/table/border-collapsing/004-expected.png
        * platform/gtk/fast/table/border-collapsing/004-expected.txt
        * platform/gtk/fast/table/border-collapsing/004-vertical-expected.png
        * platform/gtk/fast/table/border-collapsing/004-vertical-expected.txt
        * platform/gtk/fast/table/border-collapsing/border-collapsing-head-foot-expected.png
        * platform/gtk/fast/table/border-collapsing/border-collapsing-head-foot-expected.txt
        * platform/gtk/fast/table/border-collapsing/border-collapsing-head-foot-vertical-expected.png
        * platform/gtk/fast/table/border-collapsing/border-collapsing-head-foot-vertical-expected.txt
        * platform/gtk/fast/table/border-collapsing/bug14274-expected.txt
        * platform/gtk/fast/table/border-collapsing/cached-69296-expected.png
        * platform/gtk/fast/table/border-collapsing/cached-69296-expected.txt
        * platform/gtk/fast/table/border-collapsing/cached-cell-append-expected.png
        * platform/gtk/fast/table/border-collapsing/cached-cell-append-expected.txt
        * platform/gtk/fast/table/border-collapsing/cached-cell-remove-expected.png
        * platform/gtk/fast/table/border-collapsing/cached-cell-remove-expected.txt
        * platform/gtk/fast/table/border-collapsing/cached-change-cell-border-color-expected.txt
        * platform/gtk/fast/table/border-collapsing/cached-change-cell-border-width-expected.png
        * platform/gtk/fast/table/border-collapsing/cached-change-cell-border-width-expected.txt
        * platform/gtk/fast/table/border-collapsing/cached-change-cell-sl-border-color-expected.txt
        * platform/gtk/fast/table/border-collapsing/cached-change-col-border-color-expected.txt
        * platform/gtk/fast/table/border-collapsing/cached-change-col-border-width-expected.png
        * platform/gtk/fast/table/border-collapsing/cached-change-col-border-width-expected.txt
        * platform/gtk/fast/table/border-collapsing/cached-change-colgroup-border-color-expected.png
        * platform/gtk/fast/table/border-collapsing/cached-change-colgroup-border-color-expected.txt
        * platform/gtk/fast/table/border-collapsing/cached-change-colgroup-border-width-expected.png
        * platform/gtk/fast/table/border-collapsing/cached-change-colgroup-border-width-expected.txt
        * platform/gtk/fast/table/border-collapsing/cached-change-row-border-color-expected.png
        * platform/gtk/fast/table/border-collapsing/cached-change-row-border-color-expected.txt
        * platform/gtk/fast/table/border-collapsing/cached-change-row-border-width-expected.txt
        * platform/gtk/fast/table/border-collapsing/cached-change-table-border-color-expected.txt
        * platform/gtk/fast/table/border-collapsing/cached-change-table-border-width-expected.txt
        * platform/gtk/fast/table/border-collapsing/cached-change-tbody-border-color-expected.png
        * platform/gtk/fast/table/border-collapsing/cached-change-tbody-border-color-expected.txt
        * platform/gtk/fast/table/border-collapsing/cached-change-tbody-border-width-expected.txt
        * platform/gtk/fast/table/border-collapsing/collapsed-borders-adjoining-sections-vertical-rl-expected.txt
        * platform/gtk/fast/table/border-collapsing/collapsed-borders-painted-once-on-inner-cells-expected.txt
        * platform/gtk/fast/table/border-collapsing/equal-precedence-resolution-expected.txt
        * platform/gtk/fast/table/border-collapsing/equal-precedence-resolution-vertical-expected.txt
        * platform/gtk/fast/table/border-collapsing/rtl-border-collapsing-expected.png
        * platform/gtk/fast/table/border-collapsing/rtl-border-collapsing-expected.txt
        * platform/gtk/fast/table/border-collapsing/rtl-border-collapsing-vertical-expected.png
        * platform/gtk/fast/table/border-collapsing/rtl-border-collapsing-vertical-expected.txt
        * platform/gtk/fast/table/caption-relayout-expected.txt
        * platform/gtk/fast/table/cell-absolute-child-expected.png
        * platform/gtk/fast/table/cell-absolute-child-expected.txt
        * platform/gtk/fast/table/cell-width-auto-expected.txt
        * platform/gtk/fast/table/colspan-with-all-percent-cells-expected.png
        * platform/gtk/fast/table/colspan-with-all-percent-cells-expected.txt
        * platform/gtk/fast/table/colspanMinWidth-expected.png
        * platform/gtk/fast/table/colspanMinWidth-expected.txt
        * platform/gtk/fast/table/colspanMinWidth-vertical-expected.png
        * platform/gtk/fast/table/colspanMinWidth-vertical-expected.txt
        * platform/gtk/fast/table/dynamic-cellpadding-expected.png
        * platform/gtk/fast/table/dynamic-cellpadding-expected.txt
        * platform/gtk/fast/table/edge-offsets-expected.png
        * platform/gtk/fast/table/edge-offsets-expected.txt
        * platform/gtk/fast/table/empty-cells-expected.png
        * platform/gtk/fast/table/empty-cells-expected.txt
        * platform/gtk/fast/table/frame-and-rules-expected.png
        * platform/gtk/fast/table/frame-and-rules-expected.txt
        * platform/gtk/fast/table/giantRowspan-expected.png
        * platform/gtk/fast/table/giantRowspan-expected.txt
        * platform/gtk/fast/table/growCellForImageQuirk-expected.txt
        * platform/gtk/fast/table/growCellForImageQuirk-vertical-expected.txt
        * platform/gtk/fast/table/height-percent-test-expected.txt
        * platform/gtk/fast/table/height-percent-test-vertical-expected.txt
        * platform/gtk/fast/table/invisible-cell-background-expected.txt
        * platform/gtk/fast/table/large-width-expected.png
        * platform/gtk/fast/table/large-width-expected.txt
        * platform/gtk/fast/table/max-width-integer-overflow-expected.txt
        * platform/gtk/fast/table/mozilla-bug10296-vertical-align-1-expected.txt
        * platform/gtk/fast/table/mozilla-bug10296-vertical-align-2-expected.txt
        * platform/gtk/fast/table/nobr-expected.png
        * platform/gtk/fast/table/nobr-expected.txt
        * platform/gtk/fast/table/overflowHidden-expected.png
        * platform/gtk/fast/table/overflowHidden-expected.txt
        * platform/gtk/fast/table/percent-heights-expected.png
        * platform/gtk/fast/table/percent-heights-expected.txt
        * platform/gtk/fast/table/percent-widths-stretch-expected.png
        * platform/gtk/fast/table/percent-widths-stretch-expected.txt
        * platform/gtk/fast/table/percent-widths-stretch-vertical-expected.txt
        * platform/gtk/fast/table/prepend-in-anonymous-table-expected.png
        * platform/gtk/fast/table/prepend-in-anonymous-table-expected.txt
        * platform/gtk/fast/table/relative-position-containment-expected.txt
        * platform/gtk/fast/table/relative-position-offsets-expected.txt
        * platform/gtk/fast/table/relative-position-stacking-expected.txt
        * platform/gtk/fast/table/replaced-percent-height-expected.png
        * platform/gtk/fast/table/replaced-percent-height-expected.txt
        * platform/gtk/fast/table/row-height-recalc-expected.png
        * platform/gtk/fast/table/row-height-recalc-expected.txt
        * platform/gtk/fast/table/rowspan-paint-order-expected.png
        * platform/gtk/fast/table/rowspan-paint-order-expected.txt
        * platform/gtk/fast/table/rowspan-paint-order-vertical-expected.png
        * platform/gtk/fast/table/rowspan-paint-order-vertical-expected.txt
        * platform/gtk/fast/table/simple_paint-expected.txt
        * platform/gtk/fast/table/spanOverlapRepaint-expected.png
        * platform/gtk/fast/table/spanOverlapRepaint-expected.txt
        * platform/gtk/fast/table/stale-grid-crash-expected.png
        * platform/gtk/fast/table/stale-grid-crash-expected.txt
        * platform/gtk/fast/table/table-anonymous-cell-bug-expected.txt
        * platform/gtk/fast/table/table-anonymous-row-bug-expected.txt
        * platform/gtk/fast/table/table-anonymous-section-bug-expected.txt
        * platform/gtk/fast/table/table-before-child-style-update-expected.txt
        * platform/gtk/fast/table/table-cell-before-after-content-around-table-block-expected.txt
        * platform/gtk/fast/table/table-cell-before-after-content-around-table-expected.txt
        * platform/gtk/fast/table/table-cell-before-after-content-around-table-row-expected.txt
        * platform/gtk/fast/table/table-cell-before-child-in-table-expected.txt
        * platform/gtk/fast/table/table-cell-split-expected.txt
        * platform/gtk/fast/table/table-display-types-expected.txt
        * platform/gtk/fast/table/table-display-types-strict-expected.txt
        * platform/gtk/fast/table/table-display-types-vertical-expected.txt
        * platform/gtk/fast/table/table-insert-before-non-anonymous-block-expected.txt
        * platform/gtk/fast/table/table-row-before-after-content-around-block-expected.txt
        * platform/gtk/fast/table/table-row-before-after-content-around-table-cell-expected.txt
        * platform/gtk/fast/table/table-row-before-after-content-around-table-expected.txt
        * platform/gtk/fast/table/table-row-before-child-style-update-expected.txt
        * platform/gtk/fast/table/table-row-outline-paint-expected.png
        * platform/gtk/fast/table/table-row-outline-paint-expected.txt
        * platform/gtk/fast/table/table-row-split2-expected.txt
        * platform/gtk/fast/table/table-row-style-not-updated-expected.txt
        * platform/gtk/fast/table/table-row-style-not-updated-with-after-content-expected.txt
        * platform/gtk/fast/table/table-row-style-not-updated-with-before-content-expected.txt
        * platform/gtk/fast/table/table-section-split2-expected.txt
        * platform/gtk/fast/table/table-split-expected.txt
        * platform/gtk/fast/table/table-split2-expected.txt
        * platform/gtk/fast/table/table-style-not-updated-expected.txt
        * platform/gtk/fast/table/wide-colspan-expected.txt
        * platform/gtk/fast/table/wide-column-expected.txt
        * platform/gtk/fast/text/atsui-negative-spacing-features-expected.png
        * platform/gtk/fast/text/atsui-negative-spacing-features-expected.txt
        * platform/gtk/fast/text/atsui-spacing-features-expected.png
        * platform/gtk/fast/text/atsui-spacing-features-expected.txt
        * platform/gtk/fast/text/basic/generic-family-reset-expected.png
        * platform/gtk/fast/text/basic/generic-family-reset-expected.txt
        * platform/gtk/fast/text/international/003-expected.png
        * platform/gtk/fast/text/international/003-expected.txt
        * platform/gtk/fast/text/international/bidi-LDB-2-CSS-expected.png
        * platform/gtk/fast/text/international/bidi-LDB-2-CSS-expected.txt
        * platform/gtk/fast/text/international/bidi-LDB-2-HTML-expected.png
        * platform/gtk/fast/text/international/bidi-LDB-2-HTML-expected.txt
        * platform/gtk/fast/text/international/bidi-LDB-2-formatting-characters-expected.png
        * platform/gtk/fast/text/international/bidi-LDB-2-formatting-characters-expected.txt
        * platform/gtk/fast/text/international/bidi-override-expected.txt
        * platform/gtk/fast/text/wbr-expected.txt
        * platform/gtk/fast/text/whitespace/002-expected.txt
        * platform/gtk/fast/text/whitespace/003-expected.txt
        * platform/gtk/fast/text/whitespace/004-expected.txt
        * platform/gtk/fast/text/whitespace/005-expected.txt
        * platform/gtk/fast/text/whitespace/010-expected.txt
        * platform/gtk/fast/text/whitespace/011-expected.txt
        * platform/gtk/fast/text/whitespace/013-expected.txt
        * platform/gtk/fast/text/whitespace/014-expected.txt
        * platform/gtk/fast/text/whitespace/015-expected.txt
        * platform/gtk/fast/text/whitespace/016-expected.txt
        * platform/gtk/fast/text/whitespace/025-expected.txt
        * platform/gtk/fast/text/whitespace/026-expected.txt
        * platform/gtk/fast/writing-mode/table-percent-width-quirk-expected.txt
        * platform/gtk/fast/writing-mode/vertical-align-table-baseline-expected.png
        * platform/gtk/fast/writing-mode/vertical-align-table-baseline-expected.txt
        * platform/gtk/http/tests/misc/acid2-expected.png
        * platform/gtk/http/tests/misc/acid2-pixel-expected.png
        * platform/gtk/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.png
        * platform/gtk/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.txt
        * platform/gtk/ietestcenter/css3/bordersbackgrounds/background_properties_greater_than_images-expected.txt
        * platform/gtk/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-006-expected.png
        * platform/gtk/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-006-expected.txt
        * platform/gtk/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-007-expected.png
        * platform/gtk/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-007-expected.txt
        * platform/gtk/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-008-expected.png
        * platform/gtk/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-008-expected.txt
        * platform/gtk/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-009-expected.txt
        * platform/gtk/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-011-expected.png
        * platform/gtk/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-011-expected.txt
        * platform/gtk/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-012-expected.txt
        * platform/gtk/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-013-expected.txt
        * platform/gtk/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-014-expected.txt
        * platform/gtk/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-015-expected.txt
        * platform/gtk/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-016-expected.txt
        * platform/gtk/ietestcenter/css3/bordersbackgrounds/border-radius-different-width-001-expected.png
        * platform/gtk/ietestcenter/css3/bordersbackgrounds/border-radius-different-width-001-expected.txt
        * platform/gtk/ietestcenter/css3/bordersbackgrounds/border-radius-shorthand-001-expected.png
        * platform/gtk/ietestcenter/css3/bordersbackgrounds/border-radius-shorthand-001-expected.txt
        * platform/gtk/ietestcenter/css3/bordersbackgrounds/border-radius-sum-of-radii-001-expected.png
        * platform/gtk/ietestcenter/css3/bordersbackgrounds/border-radius-sum-of-radii-001-expected.txt
        * platform/gtk/ietestcenter/css3/bordersbackgrounds/border-radius-sum-of-radii-002-expected.png
        * platform/gtk/ietestcenter/css3/bordersbackgrounds/border-radius-sum-of-radii-002-expected.txt
        * platform/gtk/ietestcenter/css3/bordersbackgrounds/border-top-left-radius-values-004-expected.png
        * platform/gtk/ietestcenter/css3/bordersbackgrounds/border-top-left-radius-values-004-expected.txt
        * platform/gtk/ietestcenter/css3/bordersbackgrounds/border-top-right-radius-values-004-expected.png
        * platform/gtk/ietestcenter/css3/bordersbackgrounds/border-top-right-radius-values-004-expected.txt
        * platform/gtk/ietestcenter/css3/bordersbackgrounds/none-as-image-layer-expected.txt
        * platform/gtk/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.png
        * platform/gtk/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.txt
        * platform/gtk/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.png
        * platform/gtk/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.txt
        * platform/gtk/svg/zoom/page/zoom-svg-through-object-with-absolute-size-expected.png
        * platform/gtk/svg/zoom/page/zoom-svg-through-object-with-absolute-size-expected.txt
        * platform/gtk/tables/layering/paint-test-layering-1-expected.png
        * platform/gtk/tables/layering/paint-test-layering-1-expected.txt
        * platform/gtk/tables/layering/paint-test-layering-2-expected.png
        * platform/gtk/tables/layering/paint-test-layering-2-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug10009-expected.png
        * platform/gtk/tables/mozilla/bugs/bug10009-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug101201-expected.png
        * platform/gtk/tables/mozilla/bugs/bug101201-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug101674-expected.png
        * platform/gtk/tables/mozilla/bugs/bug101674-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug10296-1-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug1055-1-expected.png
        * platform/gtk/tables/mozilla/bugs/bug1055-1-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug10565-expected.png
        * platform/gtk/tables/mozilla/bugs/bug10565-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug10633-expected.png
        * platform/gtk/tables/mozilla/bugs/bug10633-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug1067-1-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug1067-2-expected.png
        * platform/gtk/tables/mozilla/bugs/bug1067-2-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug106795-expected.png
        * platform/gtk/tables/mozilla/bugs/bug106795-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug106816-expected.png
        * platform/gtk/tables/mozilla/bugs/bug106816-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug113235-1-expected.png
        * platform/gtk/tables/mozilla/bugs/bug113235-1-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug113424-expected.png
        * platform/gtk/tables/mozilla/bugs/bug113424-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug1163-1-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug1188-expected.png
        * platform/gtk/tables/mozilla/bugs/bug1188-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug12008-expected.png
        * platform/gtk/tables/mozilla/bugs/bug12008-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug120107-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug120364-expected.png
        * platform/gtk/tables/mozilla/bugs/bug120364-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug1224-expected.png
        * platform/gtk/tables/mozilla/bugs/bug1224-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug12268-expected.png
        * platform/gtk/tables/mozilla/bugs/bug12268-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug12709-expected.png
        * platform/gtk/tables/mozilla/bugs/bug12709-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug1271-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug12908-1-expected.png
        * platform/gtk/tables/mozilla/bugs/bug12908-1-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug12908-2-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug12910-2-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug1296-expected.png
        * platform/gtk/tables/mozilla/bugs/bug1296-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug1302-expected.png
        * platform/gtk/tables/mozilla/bugs/bug1302-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug13169-expected.png
        * platform/gtk/tables/mozilla/bugs/bug13169-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug1318-expected.png
        * platform/gtk/tables/mozilla/bugs/bug1318-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug137388-1-expected.png
        * platform/gtk/tables/mozilla/bugs/bug137388-1-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug137388-2-expected.png
        * platform/gtk/tables/mozilla/bugs/bug137388-2-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug137388-3-expected.png
        * platform/gtk/tables/mozilla/bugs/bug137388-3-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug139524-1-expected.png
        * platform/gtk/tables/mozilla/bugs/bug139524-1-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug139524-2-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug139524-3-expected.png
        * platform/gtk/tables/mozilla/bugs/bug139524-3-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug139524-4-expected.png
        * platform/gtk/tables/mozilla/bugs/bug139524-4-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug1430-expected.png
        * platform/gtk/tables/mozilla/bugs/bug1430-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug14323-expected.png
        * platform/gtk/tables/mozilla/bugs/bug14323-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug1474-expected.png
        * platform/gtk/tables/mozilla/bugs/bug14929-expected.png
        * platform/gtk/tables/mozilla/bugs/bug14929-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug15247-expected.png
        * platform/gtk/tables/mozilla/bugs/bug15247-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug154780-expected.png
        * platform/gtk/tables/mozilla/bugs/bug154780-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug15544-expected.png
        * platform/gtk/tables/mozilla/bugs/bug15544-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug159108-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug15933-expected.png
        * platform/gtk/tables/mozilla/bugs/bug15933-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug16012-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug16252-expected.png
        * platform/gtk/tables/mozilla/bugs/bug16252-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug17138-expected.png
        * platform/gtk/tables/mozilla/bugs/bug17138-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug175455-4-expected.png
        * platform/gtk/tables/mozilla/bugs/bug175455-4-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug17548-expected.png
        * platform/gtk/tables/mozilla/bugs/bug17548-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug17587-expected.png
        * platform/gtk/tables/mozilla/bugs/bug17587-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug1800-expected.png
        * platform/gtk/tables/mozilla/bugs/bug1800-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug1802-expected.png
        * platform/gtk/tables/mozilla/bugs/bug1802-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug1802s-expected.png
        * platform/gtk/tables/mozilla/bugs/bug1802s-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug1809-expected.png
        * platform/gtk/tables/mozilla/bugs/bug1809-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug18440-expected.png
        * platform/gtk/tables/mozilla/bugs/bug18440-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug18664-expected.png
        * platform/gtk/tables/mozilla/bugs/bug18664-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug18955-expected.png
        * platform/gtk/tables/mozilla/bugs/bug18955-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug19061-1-expected.png
        * platform/gtk/tables/mozilla/bugs/bug19061-1-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug19061-2-expected.png
        * platform/gtk/tables/mozilla/bugs/bug19061-2-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug19356-expected.png
        * platform/gtk/tables/mozilla/bugs/bug19356-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug20804-expected.png
        * platform/gtk/tables/mozilla/bugs/bug20804-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug2123-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug215629-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug219693-1-expected.png
        * platform/gtk/tables/mozilla/bugs/bug219693-1-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug219693-2-expected.png
        * platform/gtk/tables/mozilla/bugs/bug219693-2-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug22019-expected.png
        * platform/gtk/tables/mozilla/bugs/bug22019-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug220536-expected.png
        * platform/gtk/tables/mozilla/bugs/bug220536-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug222336-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug22246-2-expected.png
        * platform/gtk/tables/mozilla/bugs/bug22246-2-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug22246-2a-expected.png
        * platform/gtk/tables/mozilla/bugs/bug22246-2a-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug22246-3-expected.png
        * platform/gtk/tables/mozilla/bugs/bug22246-3-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug22246-3a-expected.png
        * platform/gtk/tables/mozilla/bugs/bug22246-3a-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug22513-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug2296-expected.png
        * platform/gtk/tables/mozilla/bugs/bug2296-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug23235-expected.png
        * platform/gtk/tables/mozilla/bugs/bug23235-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug24200-expected.png
        * platform/gtk/tables/mozilla/bugs/bug24200-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug2479-2-expected.png
        * platform/gtk/tables/mozilla/bugs/bug2479-2-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug2479-3-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug25004-expected.png
        * platform/gtk/tables/mozilla/bugs/bug25004-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug25074-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug25663-expected.png
        * platform/gtk/tables/mozilla/bugs/bug25663-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug26553-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug2684-expected.png
        * platform/gtk/tables/mozilla/bugs/bug2684-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug269566-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug277062-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug2773-expected.png
        * platform/gtk/tables/mozilla/bugs/bug2773-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug27993-1-expected.png
        * platform/gtk/tables/mozilla/bugs/bug27993-1-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug2886-expected.png
        * platform/gtk/tables/mozilla/bugs/bug2886-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug28933-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug29058-1-expected.png
        * platform/gtk/tables/mozilla/bugs/bug29058-1-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug29314-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug29429-expected.png
        * platform/gtk/tables/mozilla/bugs/bug29429-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug2954-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug2981-1-expected.png
        * platform/gtk/tables/mozilla/bugs/bug2981-1-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug2981-2-expected.png
        * platform/gtk/tables/mozilla/bugs/bug2981-2-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug2997-expected.png
        * platform/gtk/tables/mozilla/bugs/bug2997-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug30273-expected.png
        * platform/gtk/tables/mozilla/bugs/bug30273-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug30559-expected.png
        * platform/gtk/tables/mozilla/bugs/bug30559-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug3103-expected.png
        * platform/gtk/tables/mozilla/bugs/bug3103-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug32205-3-expected.png
        * platform/gtk/tables/mozilla/bugs/bug32205-3-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug3260-expected.png
        * platform/gtk/tables/mozilla/bugs/bug3260-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug32841-expected.png
        * platform/gtk/tables/mozilla/bugs/bug33137-expected.png
        * platform/gtk/tables/mozilla/bugs/bug33137-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug33855-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug3454-expected.png
        * platform/gtk/tables/mozilla/bugs/bug3454-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug38916-expected.png
        * platform/gtk/tables/mozilla/bugs/bug38916-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug3977-expected.png
        * platform/gtk/tables/mozilla/bugs/bug3977-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug4093-expected.png
        * platform/gtk/tables/mozilla/bugs/bug4093-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug42187-expected.png
        * platform/gtk/tables/mozilla/bugs/bug42187-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug4385-expected.png
        * platform/gtk/tables/mozilla/bugs/bug4385-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug4427-expected.png
        * platform/gtk/tables/mozilla/bugs/bug4427-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug44505-expected.png
        * platform/gtk/tables/mozilla/bugs/bug44505-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug4501-expected.png
        * platform/gtk/tables/mozilla/bugs/bug4501-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug4527-expected.png
        * platform/gtk/tables/mozilla/bugs/bug4527-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug45350-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug45486-expected.png
        * platform/gtk/tables/mozilla/bugs/bug45486-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug4576-expected.png
        * platform/gtk/tables/mozilla/bugs/bug4576-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug46268-1-expected.png
        * platform/gtk/tables/mozilla/bugs/bug46268-1-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug46268-2-expected.png
        * platform/gtk/tables/mozilla/bugs/bug46268-2-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug46368-1-expected.png
        * platform/gtk/tables/mozilla/bugs/bug46368-1-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug46623-1-expected.png
        * platform/gtk/tables/mozilla/bugs/bug46623-1-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug46623-2-expected.png
        * platform/gtk/tables/mozilla/bugs/bug46623-2-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug47432-expected.png
        * platform/gtk/tables/mozilla/bugs/bug47432-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug4803-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug4849-2-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug4849-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug51727-expected.png
        * platform/gtk/tables/mozilla/bugs/bug51727-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug5188-expected.png
        * platform/gtk/tables/mozilla/bugs/bug5188-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug52505-expected.png
        * platform/gtk/tables/mozilla/bugs/bug52505-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug52506-expected.png
        * platform/gtk/tables/mozilla/bugs/bug52506-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug53690-1-expected.png
        * platform/gtk/tables/mozilla/bugs/bug53690-1-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug53690-2-expected.png
        * platform/gtk/tables/mozilla/bugs/bug53690-2-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug53891-expected.png
        * platform/gtk/tables/mozilla/bugs/bug53891-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug5538-expected.png
        * platform/gtk/tables/mozilla/bugs/bug5538-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug55789-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug56201-expected.png
        * platform/gtk/tables/mozilla/bugs/bug56201-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug57828-2-expected.png
        * platform/gtk/tables/mozilla/bugs/bug57828-2-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug5797-expected.png
        * platform/gtk/tables/mozilla/bugs/bug5797-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug5835-expected.png
        * platform/gtk/tables/mozilla/bugs/bug5835-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug59354-expected.png
        * platform/gtk/tables/mozilla/bugs/bug59354-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug60804-expected.png
        * platform/gtk/tables/mozilla/bugs/bug60804-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug60807-expected.png
        * platform/gtk/tables/mozilla/bugs/bug60807-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug6184-expected.png
        * platform/gtk/tables/mozilla/bugs/bug6184-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug6304-expected.png
        * platform/gtk/tables/mozilla/bugs/bug6304-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug6404-expected.png
        * platform/gtk/tables/mozilla/bugs/bug6404-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug647-expected.png
        * platform/gtk/tables/mozilla/bugs/bug647-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug6674-expected.png
        * platform/gtk/tables/mozilla/bugs/bug6674-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug68998-expected.png
        * platform/gtk/tables/mozilla/bugs/bug68998-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug69382-1-expected.png
        * platform/gtk/tables/mozilla/bugs/bug69382-1-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug69382-2-expected.png
        * platform/gtk/tables/mozilla/bugs/bug69382-2-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug72359-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug7342-expected.png
        * platform/gtk/tables/mozilla/bugs/bug7342-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug7714-expected.png
        * platform/gtk/tables/mozilla/bugs/bug7714-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug78162-expected.png
        * platform/gtk/tables/mozilla/bugs/bug78162-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug82946-2-expected.png
        * platform/gtk/tables/mozilla/bugs/bug82946-2-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug86708-expected.png
        * platform/gtk/tables/mozilla/bugs/bug86708-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug8950-expected.png
        * platform/gtk/tables/mozilla/bugs/bug8950-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug9123-1-expected.png
        * platform/gtk/tables/mozilla/bugs/bug9123-1-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug9123-2-expected.png
        * platform/gtk/tables/mozilla/bugs/bug9123-2-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug92143-expected.png
        * platform/gtk/tables/mozilla/bugs/bug92143-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug92647-2-expected.png
        * platform/gtk/tables/mozilla/bugs/bug92647-2-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug963-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug96334-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug97383-expected.png
        * platform/gtk/tables/mozilla/bugs/bug97383-expected.txt
        * platform/gtk/tables/mozilla/bugs/bug9879-1-expected.png
        * platform/gtk/tables/mozilla/bugs/bug9879-1-expected.txt
        * platform/gtk/tables/mozilla/collapsing_borders/bug41262-3-expected.png
        * platform/gtk/tables/mozilla/collapsing_borders/bug41262-3-expected.txt
        * platform/gtk/tables/mozilla/core/bloomberg-expected.png
        * platform/gtk/tables/mozilla/core/bloomberg-expected.txt
        * platform/gtk/tables/mozilla/core/borders-expected.png
        * platform/gtk/tables/mozilla/core/borders-expected.txt
        * platform/gtk/tables/mozilla/core/cell_heights-expected.png
        * platform/gtk/tables/mozilla/core/cell_heights-expected.txt
        * platform/gtk/tables/mozilla/core/col_span-expected.png
        * platform/gtk/tables/mozilla/core/col_span-expected.txt
        * platform/gtk/tables/mozilla/core/col_widths_auto_autoFix-expected.png
        * platform/gtk/tables/mozilla/core/col_widths_auto_autoFix-expected.txt
        * platform/gtk/tables/mozilla/core/col_widths_auto_autoFixPer-expected.png
        * platform/gtk/tables/mozilla/core/col_widths_auto_autoFixPer-expected.txt
        * platform/gtk/tables/mozilla/core/col_widths_auto_fix-expected.png
        * platform/gtk/tables/mozilla/core/col_widths_auto_fix-expected.txt
        * platform/gtk/tables/mozilla/core/col_widths_auto_fixPer-expected.png
        * platform/gtk/tables/mozilla/core/col_widths_auto_fixPer-expected.txt
        * platform/gtk/tables/mozilla/core/col_widths_auto_per-expected.png
        * platform/gtk/tables/mozilla/core/col_widths_auto_per-expected.txt
        * platform/gtk/tables/mozilla/core/col_widths_fix_autoFix-expected.png
        * platform/gtk/tables/mozilla/core/col_widths_fix_autoFix-expected.txt
        * platform/gtk/tables/mozilla/core/col_widths_fix_fix-expected.png
        * platform/gtk/tables/mozilla/core/col_widths_fix_fix-expected.txt
        * platform/gtk/tables/mozilla/core/col_widths_fix_fixPer-expected.png
        * platform/gtk/tables/mozilla/core/col_widths_fix_fixPer-expected.txt
        * platform/gtk/tables/mozilla/core/col_widths_fix_per-expected.png
        * platform/gtk/tables/mozilla/core/col_widths_fix_per-expected.txt
        * platform/gtk/tables/mozilla/core/margins-expected.txt
        * platform/gtk/tables/mozilla/core/misc-expected.png
        * platform/gtk/tables/mozilla/core/misc-expected.txt
        * platform/gtk/tables/mozilla/core/nested1-expected.png
        * platform/gtk/tables/mozilla/core/nested1-expected.txt
        * platform/gtk/tables/mozilla/core/one_row-expected.png
        * platform/gtk/tables/mozilla/core/one_row-expected.txt
        * platform/gtk/tables/mozilla/core/table_frame-expected.png
        * platform/gtk/tables/mozilla/core/table_frame-expected.txt
        * platform/gtk/tables/mozilla/core/table_heights-expected.png
        * platform/gtk/tables/mozilla/core/table_heights-expected.txt
        * platform/gtk/tables/mozilla/core/table_rules-expected.txt
        * platform/gtk/tables/mozilla/core/table_widths-expected.png
        * platform/gtk/tables/mozilla/core/table_widths-expected.txt
        * platform/gtk/tables/mozilla/dom/insertColGroups1-expected.png
        * platform/gtk/tables/mozilla/dom/insertColGroups1-expected.txt
        * platform/gtk/tables/mozilla/dom/insertColGroups2-expected.png
        * platform/gtk/tables/mozilla/dom/insertColGroups2-expected.txt
        * platform/gtk/tables/mozilla/dom/insertCols1-expected.png
        * platform/gtk/tables/mozilla/dom/insertCols1-expected.txt
        * platform/gtk/tables/mozilla/dom/insertCols2-expected.png
        * platform/gtk/tables/mozilla/dom/insertCols2-expected.txt
        * platform/gtk/tables/mozilla/dom/insertCols3-expected.png
        * platform/gtk/tables/mozilla/dom/insertCols3-expected.txt
        * platform/gtk/tables/mozilla/dom/insertCols4-expected.png
        * platform/gtk/tables/mozilla/dom/insertCols4-expected.txt
        * platform/gtk/tables/mozilla/dom/insertCols5-expected.png
        * platform/gtk/tables/mozilla/dom/insertCols5-expected.txt
        * platform/gtk/tables/mozilla/marvin/backgr_layers-opacity-expected.png
        * platform/gtk/tables/mozilla/marvin/backgr_layers-opacity-expected.txt
        * platform/gtk/tables/mozilla/marvin/backgr_position-table-expected.png
        * platform/gtk/tables/mozilla/marvin/backgr_position-table-expected.txt
        * platform/gtk/tables/mozilla/marvin/backgr_simple-table-cell-expected.png
        * platform/gtk/tables/mozilla/marvin/backgr_simple-table-cell-expected.txt
        * platform/gtk/tables/mozilla/marvin/backgr_simple-table-column-expected.png
        * platform/gtk/tables/mozilla/marvin/backgr_simple-table-column-expected.txt
        * platform/gtk/tables/mozilla/marvin/backgr_simple-table-column-group-expected.png
        * platform/gtk/tables/mozilla/marvin/backgr_simple-table-column-group-expected.txt
        * platform/gtk/tables/mozilla/marvin/backgr_simple-table-expected.png
        * platform/gtk/tables/mozilla/marvin/backgr_simple-table-expected.txt
        * platform/gtk/tables/mozilla/marvin/backgr_simple-table-row-expected.png
        * platform/gtk/tables/mozilla/marvin/backgr_simple-table-row-expected.txt
        * platform/gtk/tables/mozilla/marvin/backgr_simple-table-row-group-expected.png
        * platform/gtk/tables/mozilla/marvin/backgr_simple-table-row-group-expected.txt
        * platform/gtk/tables/mozilla/marvin/body_thead-expected.txt
        * platform/gtk/tables/mozilla/marvin/colgroup_align_center-expected.png
        * platform/gtk/tables/mozilla/marvin/colgroup_align_center-expected.txt
        * platform/gtk/tables/mozilla/marvin/colgroup_align_justify-expected.png
        * platform/gtk/tables/mozilla/marvin/colgroup_align_justify-expected.txt
        * platform/gtk/tables/mozilla/marvin/colgroup_align_left-expected.png
        * platform/gtk/tables/mozilla/marvin/colgroup_align_left-expected.txt
        * platform/gtk/tables/mozilla/marvin/colgroup_align_right-expected.png
        * platform/gtk/tables/mozilla/marvin/colgroup_align_right-expected.txt
        * platform/gtk/tables/mozilla/marvin/colgroup_span-expected.png
        * platform/gtk/tables/mozilla/marvin/colgroup_span-expected.txt
        * platform/gtk/tables/mozilla/marvin/colgroup_valign_baseline-expected.png
        * platform/gtk/tables/mozilla/marvin/colgroup_valign_baseline-expected.txt
        * platform/gtk/tables/mozilla/marvin/colgroup_valign_bottom-expected.png
        * platform/gtk/tables/mozilla/marvin/colgroup_valign_bottom-expected.txt
        * platform/gtk/tables/mozilla/marvin/colgroup_valign_middle-expected.png
        * platform/gtk/tables/mozilla/marvin/colgroup_valign_middle-expected.txt
        * platform/gtk/tables/mozilla/marvin/colgroup_valign_top-expected.png
        * platform/gtk/tables/mozilla/marvin/colgroup_valign_top-expected.txt
        * platform/gtk/tables/mozilla/marvin/colgroup_width_pct-expected.png
        * platform/gtk/tables/mozilla/marvin/colgroup_width_pct-expected.txt
        * platform/gtk/tables/mozilla/marvin/colgroup_width_px-expected.png
        * platform/gtk/tables/mozilla/marvin/colgroup_width_px-expected.txt
        * platform/gtk/tables/mozilla/marvin/table_overflow_hidden_td-expected.png
        * platform/gtk/tables/mozilla/marvin/table_overflow_hidden_td-expected.txt
        * platform/gtk/tables/mozilla/marvin/table_overflow_td_dynamic_deactivate-expected.png
        * platform/gtk/tables/mozilla/marvin/table_overflow_td_dynamic_deactivate-expected.txt
        * platform/gtk/tables/mozilla/marvin/table_row_align_center-expected.png
        * platform/gtk/tables/mozilla/marvin/table_row_align_center-expected.txt
        * platform/gtk/tables/mozilla/marvin/table_row_align_left-expected.png
        * platform/gtk/tables/mozilla/marvin/table_row_align_left-expected.txt
        * platform/gtk/tables/mozilla/marvin/table_row_align_right-expected.png
        * platform/gtk/tables/mozilla/marvin/table_row_align_right-expected.txt
        * platform/gtk/tables/mozilla/marvin/table_rules_groups-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_aqua-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_aqua-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_aqua_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_aqua_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_black-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_black-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_black_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_black_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_blue-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_blue-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_blue_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_blue_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_fuchsia-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_fuchsia-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_fuchsia_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_fuchsia_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_gray-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_gray-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_gray_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_gray_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_green-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_green-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_green_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_green_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_lime-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_lime-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_lime_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_lime_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_maroon-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_maroon-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_maroon_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_maroon_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_navy-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_navy-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_navy_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_navy_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_olive-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_olive-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_olive_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_olive_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_purple-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_purple-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_purple_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_purple_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_red-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_red-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_red_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_red_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_silver-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_silver-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_silver_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_silver_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_teal-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_teal-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_teal_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_teal_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_white-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_white-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_white_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_white_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_yellow-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_yellow-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_yellow_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_bgcolor_yellow_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_cellpadding_pct-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_cellpadding_pct-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_td_width-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_td_width-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_th_colspan-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_th_colspan-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_th_width-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_th_width-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_width_percent-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_width_percent-expected.txt
        * platform/gtk/tables/mozilla/marvin/tables_width_px-expected.png
        * platform/gtk/tables/mozilla/marvin/tables_width_px-expected.txt
        * platform/gtk/tables/mozilla/marvin/tbody_valign_baseline-expected.png
        * platform/gtk/tables/mozilla/marvin/tbody_valign_baseline-expected.txt
        * platform/gtk/tables/mozilla/marvin/tbody_valign_bottom-expected.png
        * platform/gtk/tables/mozilla/marvin/tbody_valign_bottom-expected.txt
        * platform/gtk/tables/mozilla/marvin/tbody_valign_middle-expected.png
        * platform/gtk/tables/mozilla/marvin/tbody_valign_middle-expected.txt
        * platform/gtk/tables/mozilla/marvin/tbody_valign_top-expected.png
        * platform/gtk/tables/mozilla/marvin/tbody_valign_top-expected.txt
        * platform/gtk/tables/mozilla/marvin/td_valign_baseline-expected.png
        * platform/gtk/tables/mozilla/marvin/td_valign_baseline-expected.txt
        * platform/gtk/tables/mozilla/marvin/td_valign_bottom-expected.png
        * platform/gtk/tables/mozilla/marvin/td_valign_bottom-expected.txt
        * platform/gtk/tables/mozilla/marvin/td_valign_middle-expected.png
        * platform/gtk/tables/mozilla/marvin/td_valign_middle-expected.txt
        * platform/gtk/tables/mozilla/marvin/td_valign_top-expected.png
        * platform/gtk/tables/mozilla/marvin/td_valign_top-expected.txt
        * platform/gtk/tables/mozilla/marvin/tfoot_valign_baseline-expected.png
        * platform/gtk/tables/mozilla/marvin/tfoot_valign_baseline-expected.txt
        * platform/gtk/tables/mozilla/marvin/tfoot_valign_bottom-expected.png
        * platform/gtk/tables/mozilla/marvin/tfoot_valign_bottom-expected.txt
        * platform/gtk/tables/mozilla/marvin/tfoot_valign_middle-expected.png
        * platform/gtk/tables/mozilla/marvin/tfoot_valign_middle-expected.txt
        * platform/gtk/tables/mozilla/marvin/tfoot_valign_top-expected.png
        * platform/gtk/tables/mozilla/marvin/tfoot_valign_top-expected.txt
        * platform/gtk/tables/mozilla/marvin/th_valign_baseline-expected.png
        * platform/gtk/tables/mozilla/marvin/th_valign_baseline-expected.txt
        * platform/gtk/tables/mozilla/marvin/th_valign_bottom-expected.png
        * platform/gtk/tables/mozilla/marvin/th_valign_bottom-expected.txt
        * platform/gtk/tables/mozilla/marvin/th_valign_middle-expected.png
        * platform/gtk/tables/mozilla/marvin/th_valign_middle-expected.txt
        * platform/gtk/tables/mozilla/marvin/th_valign_top-expected.png
        * platform/gtk/tables/mozilla/marvin/th_valign_top-expected.txt
        * platform/gtk/tables/mozilla/marvin/thead_valign_baseline-expected.png
        * platform/gtk/tables/mozilla/marvin/thead_valign_baseline-expected.txt
        * platform/gtk/tables/mozilla/marvin/thead_valign_bottom-expected.png
        * platform/gtk/tables/mozilla/marvin/thead_valign_bottom-expected.txt
        * platform/gtk/tables/mozilla/marvin/thead_valign_middle-expected.png
        * platform/gtk/tables/mozilla/marvin/thead_valign_middle-expected.txt
        * platform/gtk/tables/mozilla/marvin/thead_valign_top-expected.png
        * platform/gtk/tables/mozilla/marvin/thead_valign_top-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_aqua_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_aqua_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_black-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_black-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_black_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_black_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_blue-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_blue-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_blue_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_blue_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_fuchsia-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_fuchsia-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_fuchsia_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_fuchsia_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_gray-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_gray-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_gray_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_gray_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_green-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_green-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_green_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_green_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_lime-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_lime-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_lime_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_lime_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_maroon-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_maroon-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_maroon_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_maroon_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_navy-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_navy-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_navy_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_navy_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_olive-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_olive-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_olive_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_olive_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_purple-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_purple-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_purple_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_purple_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_red-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_red-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_red_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_red_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_silver-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_silver-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_silver_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_silver_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_teal-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_teal-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_teal_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_teal_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_white-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_white-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_white_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_white_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_yellow-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_yellow-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_yellow_rgb-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_bgcolor_yellow_rgb-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_valign_baseline-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_valign_baseline-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_valign_bottom-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_valign_bottom-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_valign_middle-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_valign_middle-expected.txt
        * platform/gtk/tables/mozilla/marvin/tr_valign_top-expected.png
        * platform/gtk/tables/mozilla/marvin/tr_valign_top-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_col_align_char-expected.png
        * platform/gtk/tables/mozilla/marvin/x_col_align_char-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_col_span-expected.png
        * platform/gtk/tables/mozilla/marvin/x_col_span-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_col_valign_baseline-expected.png
        * platform/gtk/tables/mozilla/marvin/x_col_valign_baseline-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_col_valign_bottom-expected.png
        * platform/gtk/tables/mozilla/marvin/x_col_valign_bottom-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_col_valign_middle-expected.png
        * platform/gtk/tables/mozilla/marvin/x_col_valign_middle-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_col_valign_top-expected.png
        * platform/gtk/tables/mozilla/marvin/x_col_valign_top-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_col_width_px-expected.png
        * platform/gtk/tables/mozilla/marvin/x_col_width_px-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_col_width_rel-expected.png
        * platform/gtk/tables/mozilla/marvin/x_col_width_rel-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_colgroup_align_char-expected.png
        * platform/gtk/tables/mozilla/marvin/x_colgroup_align_char-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_colgroup_span-expected.png
        * platform/gtk/tables/mozilla/marvin/x_colgroup_span-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_colgroup_valign_baseline-expected.png
        * platform/gtk/tables/mozilla/marvin/x_colgroup_valign_baseline-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_colgroup_valign_bottom-expected.png
        * platform/gtk/tables/mozilla/marvin/x_colgroup_valign_bottom-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_colgroup_valign_middle-expected.png
        * platform/gtk/tables/mozilla/marvin/x_colgroup_valign_middle-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_colgroup_valign_top-expected.png
        * platform/gtk/tables/mozilla/marvin/x_colgroup_valign_top-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_colgroup_width_rel-expected.png
        * platform/gtk/tables/mozilla/marvin/x_colgroup_width_rel-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_tbody_valign_baseline-expected.png
        * platform/gtk/tables/mozilla/marvin/x_tbody_valign_baseline-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_tbody_valign_bottom-expected.png
        * platform/gtk/tables/mozilla/marvin/x_tbody_valign_bottom-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_tbody_valign_middle-expected.png
        * platform/gtk/tables/mozilla/marvin/x_tbody_valign_middle-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_tbody_valign_top-expected.png
        * platform/gtk/tables/mozilla/marvin/x_tbody_valign_top-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_td_align_center-expected.png
        * platform/gtk/tables/mozilla/marvin/x_td_align_center-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_td_align_char-expected.png
        * platform/gtk/tables/mozilla/marvin/x_td_align_char-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_td_align_justify-expected.png
        * platform/gtk/tables/mozilla/marvin/x_td_align_justify-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_td_align_left-expected.png
        * platform/gtk/tables/mozilla/marvin/x_td_align_left-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_td_align_right-expected.png
        * platform/gtk/tables/mozilla/marvin/x_td_align_right-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_td_valign_baseline-expected.png
        * platform/gtk/tables/mozilla/marvin/x_td_valign_baseline-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_td_valign_bottom-expected.png
        * platform/gtk/tables/mozilla/marvin/x_td_valign_bottom-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_td_valign_middle-expected.png
        * platform/gtk/tables/mozilla/marvin/x_td_valign_middle-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_td_valign_top-expected.png
        * platform/gtk/tables/mozilla/marvin/x_td_valign_top-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_td_width-expected.png
        * platform/gtk/tables/mozilla/marvin/x_td_width-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_tfoot_valign_baseline-expected.png
        * platform/gtk/tables/mozilla/marvin/x_tfoot_valign_baseline-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_tfoot_valign_bottom-expected.png
        * platform/gtk/tables/mozilla/marvin/x_tfoot_valign_bottom-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_tfoot_valign_middle-expected.png
        * platform/gtk/tables/mozilla/marvin/x_tfoot_valign_middle-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_tfoot_valign_top-expected.png
        * platform/gtk/tables/mozilla/marvin/x_tfoot_valign_top-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_th_align_center-expected.png
        * platform/gtk/tables/mozilla/marvin/x_th_align_center-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_th_align_char-expected.png
        * platform/gtk/tables/mozilla/marvin/x_th_align_char-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_th_align_justify-expected.png
        * platform/gtk/tables/mozilla/marvin/x_th_align_justify-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_th_align_left-expected.png
        * platform/gtk/tables/mozilla/marvin/x_th_align_left-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_th_align_right-expected.png
        * platform/gtk/tables/mozilla/marvin/x_th_align_right-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_th_rowspan-expected.png
        * platform/gtk/tables/mozilla/marvin/x_th_rowspan-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_th_valign_baseline-expected.png
        * platform/gtk/tables/mozilla/marvin/x_th_valign_baseline-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_th_valign_bottom-expected.png
        * platform/gtk/tables/mozilla/marvin/x_th_valign_bottom-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_th_valign_middle-expected.png
        * platform/gtk/tables/mozilla/marvin/x_th_valign_middle-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_th_valign_top-expected.png
        * platform/gtk/tables/mozilla/marvin/x_th_valign_top-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_th_width-expected.png
        * platform/gtk/tables/mozilla/marvin/x_th_width-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_thead_valign_baseline-expected.png
        * platform/gtk/tables/mozilla/marvin/x_thead_valign_baseline-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_thead_valign_bottom-expected.png
        * platform/gtk/tables/mozilla/marvin/x_thead_valign_bottom-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_thead_valign_middle-expected.png
        * platform/gtk/tables/mozilla/marvin/x_thead_valign_middle-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_thead_valign_top-expected.png
        * platform/gtk/tables/mozilla/marvin/x_thead_valign_top-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_tr_align_char-expected.png
        * platform/gtk/tables/mozilla/marvin/x_tr_align_char-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_tr_valign_baseline-expected.png
        * platform/gtk/tables/mozilla/marvin/x_tr_valign_baseline-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_tr_valign_bottom-expected.png
        * platform/gtk/tables/mozilla/marvin/x_tr_valign_bottom-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_tr_valign_middle-expected.png
        * platform/gtk/tables/mozilla/marvin/x_tr_valign_middle-expected.txt
        * platform/gtk/tables/mozilla/marvin/x_tr_valign_top-expected.png
        * platform/gtk/tables/mozilla/marvin/x_tr_valign_top-expected.txt
        * platform/gtk/tables/mozilla/other/cell_widths-expected.png
        * platform/gtk/tables/mozilla/other/cell_widths-expected.txt
        * platform/gtk/tables/mozilla/other/ms-expected.png
        * platform/gtk/tables/mozilla/other/ms-expected.txt
        * platform/gtk/tables/mozilla/other/nested2-expected.png
        * platform/gtk/tables/mozilla/other/nested2-expected.txt
        * platform/gtk/tables/mozilla/other/nestedTables-expected.png
        * platform/gtk/tables/mozilla/other/nestedTables-expected.txt
        * platform/gtk/tables/mozilla/other/slashlogo-expected.png
        * platform/gtk/tables/mozilla/other/slashlogo-expected.txt
        * platform/gtk/tables/mozilla/other/test3-expected.png
        * platform/gtk/tables/mozilla/other/test3-expected.txt
        * platform/gtk/tables/mozilla/other/test6-expected.png
        * platform/gtk/tables/mozilla/other/test6-expected.txt
        * platform/gtk/tables/mozilla/other/wa_table_thtd_rowspan-expected.png
        * platform/gtk/tables/mozilla/other/wa_table_thtd_rowspan-expected.txt
        * platform/gtk/tables/mozilla/other/wa_table_tr_align-expected.png
        * platform/gtk/tables/mozilla/other/wa_table_tr_align-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/bugs/97619-expected.png
        * platform/gtk/tables/mozilla_expected_failures/bugs/97619-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug1010-expected.png
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug1010-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug1055-2-expected.png
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug1055-2-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug1128-expected.png
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug1128-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug1164-expected.png
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug1164-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug128876-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug14007-1-expected.png
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug14007-1-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug14007-2-expected.png
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug14007-2-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug14159-2-expected.png
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug14159-2-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug1647-expected.png
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug1647-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug1725-expected.png
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug1725-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug17826-expected.png
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug17826-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug21518-expected.png
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug21518-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug22122-expected.png
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug22122-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug23847-expected.png
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug23847-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug2479-5-expected.png
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug2479-5-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug27993-2-expected.png
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug27993-2-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug29058-2-expected.png
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug29058-2-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug3105-expected.png
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug3105-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug56024-expected.png
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug56024-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug59252-expected.png
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug59252-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug7121-2-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug72393-expected.png
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug72393-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug7243-expected.png
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug7243-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug80762-2-expected.png
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug80762-2-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug8499-expected.png
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug8499-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug85016-expected.png
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug85016-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug91057-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug9879-1-expected.png
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug9879-1-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/collapsing_borders/bug41262-1-expected.png
        * platform/gtk/tables/mozilla_expected_failures/collapsing_borders/bug41262-1-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/core/captions1-expected.png
        * platform/gtk/tables/mozilla_expected_failures/core/captions1-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/core/captions2-expected.png
        * platform/gtk/tables/mozilla_expected_failures/core/captions2-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/core/col_span2-expected.png
        * platform/gtk/tables/mozilla_expected_failures/core/col_span2-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/core/cols1-expected.png
        * platform/gtk/tables/mozilla_expected_failures/core/cols1-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/core/columns-expected.png
        * platform/gtk/tables/mozilla_expected_failures/core/columns-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/core/standards1-expected.png
        * platform/gtk/tables/mozilla_expected_failures/core/standards1-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/dom/appendColGroup1-expected.png
        * platform/gtk/tables/mozilla_expected_failures/dom/appendColGroup1-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/backgr_border-table-cell-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/backgr_border-table-cell-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/backgr_border-table-column-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/backgr_border-table-column-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/backgr_border-table-column-group-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/backgr_border-table-column-group-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/backgr_border-table-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/backgr_border-table-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/backgr_border-table-quirks-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/backgr_border-table-quirks-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/backgr_border-table-row-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/backgr_border-table-row-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/backgr_border-table-row-group-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/backgr_border-table-row-group-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/backgr_fixed-bg-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/backgr_fixed-bg-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/backgr_layers-hide-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/backgr_layers-hide-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/backgr_layers-show-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/backgr_layers-show-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/backgr_position-table-cell-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/backgr_position-table-cell-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/backgr_position-table-column-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/backgr_position-table-column-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/backgr_position-table-column-group-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/backgr_position-table-column-group-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/backgr_position-table-row-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/backgr_position-table-row-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/backgr_position-table-row-group-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/backgr_position-table-row-group-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_caption-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_caption-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_caption_bottom-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_caption_bottom-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_caption_hidden-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_caption_hidden-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_caption_hidden_table-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_caption_hidden_table-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_caption_left-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_caption_left-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_caption_right-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_caption_right-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_caption_top-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_caption_top-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_table-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_table-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_hidden_table-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_hidden_table-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_hidden_tbody-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_hidden_tbody-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_hidden_tr-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_hidden_tr-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell_sibling-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell_sibling-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row_sibling-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row_sibling-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table_caption-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table_caption-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody_sibling-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody_sibling-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_td_align_right-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_td_align_right-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_td_dynamic_deactivate-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_td_dynamic_deactivate-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_td_valign_bottom-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_td_valign_bottom-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_td_valign_middle-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_td_valign_middle-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_td_valign_top-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/table_overflow_td_valign_top-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/marvin/tables_cellspacing_pct-expected.png
        * platform/gtk/tables/mozilla_expected_failures/marvin/tables_cellspacing_pct-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/other/empty_cells-expected.png
        * platform/gtk/tables/mozilla_expected_failures/other/empty_cells-expected.txt
        * platform/gtk/tables/mozilla_expected_failures/other/test4-expected.png
        * platform/gtk/tables/mozilla_expected_failures/other/test4-expected.txt

2016-01-28  Chris Dumez  <cdumez@apple.com>

        EventHandler IDL attributes should be enumerable
        https://bugs.webkit.org/show_bug.cgi?id=153595

        Reviewed by Sam Weinig.

        Rebaseline test now that more EventHandler attributes are enumerable.

        * js/dom/dom-static-property-for-in-iteration-expected.txt:

2016-01-28  Brady Eidson  <beidson@apple.com>

        Modern IDB: Index uniqueness broken in the SQLite backend.
        https://bugs.webkit.org/show_bug.cgi?id=153596

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2016-01-28  Zalan Bujtas  <zalan@apple.com>

        [Win] gardening after r195740. (more to follow)

        Unreviewed.

        * platform/win/css1/basic/containment-expected.txt:
        * platform/win/css1/basic/contextual_selectors-expected.txt:
        * platform/win/css1/basic/grouping-expected.txt:
        * platform/win/css1/basic/id_as_selector-expected.txt:
        * platform/win/css1/basic/inheritance-expected.txt:
        * platform/win/css1/box_properties/border-expected.txt:
        * platform/win/css1/box_properties/border_bottom-expected.txt:
        * platform/win/css1/box_properties/border_bottom_inline-expected.txt:
        * platform/win/css1/box_properties/border_bottom_width-expected.txt:
        * platform/win/css1/box_properties/border_bottom_width_inline-expected.txt:
        * platform/win/css1/box_properties/border_color-expected.txt:
        * platform/win/css1/box_properties/border_color_inline-expected.txt:
        * platform/win/css1/box_properties/border_inline-expected.txt:
        * platform/win/css1/box_properties/border_left-expected.txt:
        * platform/win/css1/box_properties/border_left_inline-expected.txt:
        * platform/win/css1/box_properties/border_left_width-expected.txt:
        * platform/win/css1/box_properties/border_left_width_inline-expected.txt:
        * platform/win/css1/box_properties/border_right-expected.txt:
        * platform/win/css1/box_properties/border_right_inline-expected.txt:
        * platform/win/css1/box_properties/border_right_width-expected.txt:
        * platform/win/css1/box_properties/border_right_width_inline-expected.txt:
        * platform/win/css1/box_properties/border_style-expected.txt:
        * platform/win/css1/box_properties/border_style_inline-expected.txt:
        * platform/win/css1/box_properties/border_top-expected.txt:
        * platform/win/css1/box_properties/border_top_inline-expected.txt:
        * platform/win/css1/box_properties/border_top_width-expected.txt:
        * platform/win/css1/box_properties/border_top_width_inline-expected.txt:
        * platform/win/css1/box_properties/border_width-expected.txt:
        * platform/win/css1/box_properties/border_width_inline-expected.txt:
        * platform/win/css1/box_properties/clear-expected.txt:
        * platform/win/css1/box_properties/clear_float-expected.txt:
        * platform/win/css1/box_properties/float-expected.txt:
        * platform/win/css1/box_properties/float_elements_in_series-expected.txt:
        * platform/win/css1/box_properties/float_margin-expected.txt:
        * platform/win/css1/box_properties/float_on_text_elements-expected.txt:
        * platform/win/css1/box_properties/height-expected.txt:
        * platform/win/css1/box_properties/margin-expected.txt:
        * platform/win/css1/box_properties/margin_bottom-expected.txt:
        * platform/win/css1/box_properties/margin_bottom_inline-expected.txt:
        * platform/win/css1/box_properties/margin_inline-expected.txt:
        * platform/win/css1/box_properties/margin_left-expected.txt:
        * platform/win/css1/box_properties/margin_left_inline-expected.txt:
        * platform/win/css1/box_properties/margin_right-expected.txt:
        * platform/win/css1/box_properties/margin_right_inline-expected.txt:
        * platform/win/css1/box_properties/margin_top-expected.txt:
        * platform/win/css1/box_properties/margin_top_inline-expected.txt:
        * platform/win/css1/box_properties/padding-expected.txt:
        * platform/win/css1/box_properties/padding_bottom-expected.txt:
        * platform/win/css1/box_properties/padding_bottom_inline-expected.txt:
        * platform/win/css1/box_properties/padding_inline-expected.txt:
        * platform/win/css1/box_properties/padding_left_inline-expected.txt:
        * platform/win/css1/box_properties/padding_right-expected.txt:
        * platform/win/css1/box_properties/padding_right_inline-expected.txt:
        * platform/win/css1/box_properties/padding_top-expected.txt:
        * platform/win/css1/box_properties/padding_top_inline-expected.txt:
        * platform/win/css1/box_properties/width-expected.txt:
        * platform/win/css1/cascade/cascade_order-expected.txt:
        * platform/win/css1/cascade/important-expected.txt:
        * platform/win/css1/classification/display-expected.txt:
        * platform/win/css1/classification/list_style-expected.txt:
        * platform/win/css1/classification/list_style_image-expected.txt:
        * platform/win/css1/classification/list_style_position-expected.txt:
        * platform/win/css1/classification/list_style_type-expected.txt:
        * platform/win/css1/classification/white_space-expected.txt:
        * platform/win/css1/color_and_background/background-expected.txt:
        * platform/win/css1/color_and_background/background_attachment-expected.txt:
        * platform/win/css1/color_and_background/background_color-expected.txt:
        * platform/win/css1/color_and_background/background_image-expected.txt:
        * platform/win/css1/color_and_background/background_position-expected.txt:
        * platform/win/css1/color_and_background/background_repeat-expected.txt:
        * platform/win/css1/color_and_background/color-expected.txt:
        * platform/win/css1/conformance/forward_compatible_parsing-expected.txt:
        * platform/win/css1/font_properties/font-expected.txt:
        * platform/win/css1/font_properties/font_family-expected.txt:
        * platform/win/css1/font_properties/font_size-expected.txt:
        * platform/win/css1/font_properties/font_style-expected.txt:
        * platform/win/css1/font_properties/font_variant-expected.txt:
        * platform/win/css1/font_properties/font_weight-expected.txt:
        * platform/win/css1/formatting_model/canvas-expected.txt:
        * platform/win/css1/formatting_model/floating_elements-expected.txt:
        * platform/win/css1/formatting_model/height_of_lines-expected.txt:
        * platform/win/css1/formatting_model/inline_elements-expected.txt:
        * platform/win/css1/formatting_model/replaced_elements-expected.txt:
        * platform/win/css1/formatting_model/vertical_formatting-expected.txt:
        * platform/win/css1/pseudo/anchor-expected.txt:
        * platform/win/css1/pseudo/firstletter-expected.txt:
        * platform/win/css1/pseudo/firstline-expected.txt:
        * platform/win/css1/pseudo/multiple_pseudo_elements-expected.txt:
        * platform/win/css1/pseudo/pseudo_elements_in_selectors-expected.txt:
        * platform/win/css1/text_properties/letter_spacing-expected.txt:
        * platform/win/css1/text_properties/line_height-expected.txt:
        * platform/win/css1/text_properties/text_align-expected.txt:
        * platform/win/css1/text_properties/text_decoration-expected.txt:
        * platform/win/css1/text_properties/text_indent-expected.txt:
        * platform/win/css1/text_properties/text_transform-expected.txt:
        * platform/win/css1/text_properties/vertical_align-expected.txt:
        * platform/win/css1/text_properties/word_spacing-expected.txt:
        * platform/win/css1/units/color_units-expected.txt:
        * platform/win/css1/units/length_units-expected.txt:
        * platform/win/css1/units/percentage_units-expected.txt:
        * platform/win/css1/units/urls-expected.txt:
        * platform/win/css2.1/20110323/border-collapse-offset-002-expected.txt:
        * platform/win/css2.1/20110323/border-conflict-style-079-expected.txt:
        * platform/win/css2.1/20110323/border-conflict-style-088-expected.txt:
        * platform/win/css2.1/20110323/dynamic-top-change-002-expected.txt:
        * platform/win/css2.1/20110323/dynamic-top-change-003-expected.txt:
        * platform/win/css2.1/20110323/inline-table-001-expected.txt:
        * platform/win/css2.1/20110323/inline-table-002a-expected.txt:
        * platform/win/css2.1/20110323/inline-table-003-expected.txt:
        * platform/win/css2.1/20110323/margin-applies-to-001-expected.txt:
        * platform/win/css2.1/20110323/margin-applies-to-002-expected.txt:
        * platform/win/css2.1/20110323/margin-applies-to-003-expected.txt:
        * platform/win/css2.1/20110323/margin-applies-to-004-expected.txt:
        * platform/win/css2.1/20110323/margin-applies-to-005-expected.txt:
        * platform/win/css2.1/20110323/margin-applies-to-006-expected.txt:
        * platform/win/css2.1/20110323/margin-applies-to-007-expected.txt:
        * platform/win/css2.1/20110323/margin-applies-to-013-expected.txt:
        * platform/win/css2.1/20110323/margin-applies-to-014-expected.txt:
        * platform/win/css2.1/20110323/margin-applies-to-015-expected.txt:
        * platform/win/css2.1/20110323/replaced-intrinsic-ratio-001-expected.txt:
        * platform/win/css2.1/20110323/table-caption-001-expected.txt:
        * platform/win/css2.1/20110323/table-caption-optional-001-expected.txt:
        * platform/win/css2.1/20110323/table-caption-optional-002-expected.txt:
        * platform/win/css2.1/20110323/table-height-algorithm-023-expected.txt:
        * platform/win/css2.1/20110323/table-height-algorithm-024-expected.txt:
        * platform/win/css2.1/t040302-c61-ex-len-00-b-a-expected.txt:
        * platform/win/css2.1/t0803-c5501-mrgn-t-00-b-a-expected.txt:
        * platform/win/css2.1/t0803-c5503-mrgn-b-00-b-a-expected.txt:
        * platform/win/css2.1/t080301-c411-vt-mrgn-00-b-expected.txt:
        * platform/win/css2.1/t0804-c5506-padn-t-00-b-a-expected.txt:
        * platform/win/css2.1/t0804-c5508-ipadn-b-03-b-a-expected.txt:
        * platform/win/css2.1/t0805-c5511-brdr-tw-00-b-expected.txt:
        * platform/win/css2.1/t0805-c5513-brdr-bw-00-b-expected.txt:
        * platform/win/css2.1/t0805-c5518-brdr-t-01-e-expected.txt:
        * platform/win/css2.1/t0805-c5519-brdr-r-01-e-expected.txt:
        * platform/win/css2.1/t0805-c5520-brdr-b-01-e-expected.txt:
        * platform/win/css2.1/t0805-c5521-brdr-l-01-e-expected.txt:
        * platform/win/css2.1/t0805-c5522-brdr-02-e-expected.txt:
        * platform/win/css2.1/t090402-c42-ibx-pad-00-d-ag-expected.txt:
        * platform/win/css2.1/t0905-c5525-fltmult-00-d-g-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-00-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-01-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-02-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-03-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-04-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-05-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-06-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-07-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-08-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-09-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-10-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-11-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-12-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-13-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-14-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-15-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-16-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-17-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-18-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-19-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-20-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-21-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-22-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-23-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-24-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-25-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-26-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-27-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-28-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-29-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-30-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-31-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-32-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-33-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-34-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-35-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-36-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-37-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-38-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-39-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-40-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-41-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-42-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-43-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-44-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-45-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-46-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-47-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-48-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-49-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-50-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-51-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-52-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-53-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-54-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-55-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-56-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-57-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-58-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-59-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-60-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-61-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-62-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-63-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-64-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-65-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-66-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-67-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-68-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-69-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-70-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-71-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-72-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-73-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-74-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-75-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-76-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-77-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-78-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-79-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-80-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-81-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-82-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-83-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-84-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-85-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-86-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-87-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-88-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-89-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-90-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-91-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-92-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-93-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-94-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-95-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-96-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-97-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-98-d-expected.txt:
        * platform/win/css2.1/t170602-bdr-conflct-w-99-d-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-015-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-016-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-023-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-024-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-035-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-036-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-037-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-038-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-045-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-046-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-047-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-048-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-049-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-050-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-055-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-056-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-091-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-092-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-099-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-100-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-103-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-104-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-105-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-106-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-107-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-108-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-109-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-110-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-111-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-112-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-113-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-114-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-123-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-124-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-139-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-140-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-149-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-150-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-155-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-156-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-159-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-160-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-165-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-166-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-177-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-178-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-179-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-180-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-181-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-189-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-190-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-191-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-192-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-193-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-194-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-195-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-196-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-205-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-206-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-207-expected.txt:
        * platform/win/css2.1/tables/table-anonymous-objects-208-expected.txt:
        * platform/win/css3/css3-modsel-33-expected.txt:
        * platform/win/css3/flexbox/flexbox-baseline-expected.txt:
        * platform/win/css3/selectors3/html/css3-modsel-161-expected.txt:
        * platform/win/css3/selectors3/html/css3-modsel-18-expected.txt:
        * platform/win/css3/selectors3/html/css3-modsel-18b-expected.txt:
        * platform/win/css3/selectors3/html/css3-modsel-28-expected.txt:
        * platform/win/css3/selectors3/html/css3-modsel-28b-expected.txt:
        * platform/win/css3/selectors3/html/css3-modsel-29-expected.txt:
        * platform/win/css3/selectors3/html/css3-modsel-29b-expected.txt:
        * platform/win/css3/selectors3/html/css3-modsel-32-expected.txt:
        * platform/win/css3/selectors3/html/css3-modsel-33-expected.txt:
        * platform/win/css3/selectors3/html/css3-modsel-43-expected.txt:
        * platform/win/css3/selectors3/html/css3-modsel-43b-expected.txt:
        * platform/win/css3/selectors3/html/css3-modsel-44-expected.txt:
        * platform/win/css3/selectors3/html/css3-modsel-44b-expected.txt:
        * platform/win/css3/selectors3/html/css3-modsel-73-expected.txt:
        * platform/win/css3/selectors3/html/css3-modsel-73b-expected.txt:
        * platform/win/css3/selectors3/html/css3-modsel-74-expected.txt:
        * platform/win/css3/selectors3/html/css3-modsel-74b-expected.txt:
        * platform/win/css3/selectors3/html/css3-modsel-77-expected.txt:
        * platform/win/css3/selectors3/html/css3-modsel-77b-expected.txt:
        * platform/win/css3/selectors3/html/css3-modsel-78-expected.txt:
        * platform/win/css3/selectors3/html/css3-modsel-78b-expected.txt:
        * platform/win/css3/selectors3/xhtml/css3-modsel-161-expected.txt:
        * platform/win/css3/selectors3/xhtml/css3-modsel-18-expected.txt:
        * platform/win/css3/selectors3/xhtml/css3-modsel-18b-expected.txt:
        * platform/win/css3/selectors3/xhtml/css3-modsel-28-expected.txt:
        * platform/win/css3/selectors3/xhtml/css3-modsel-28b-expected.txt:
        * platform/win/css3/selectors3/xhtml/css3-modsel-29-expected.txt:
        * platform/win/css3/selectors3/xhtml/css3-modsel-29b-expected.txt:
        * platform/win/css3/selectors3/xhtml/css3-modsel-32-expected.txt:
        * platform/win/css3/selectors3/xhtml/css3-modsel-33-expected.txt:
        * platform/win/css3/selectors3/xhtml/css3-modsel-43-expected.txt:
        * platform/win/css3/selectors3/xhtml/css3-modsel-43b-expected.txt:
        * platform/win/css3/selectors3/xhtml/css3-modsel-44-expected.txt:
        * platform/win/css3/selectors3/xhtml/css3-modsel-44b-expected.txt:
        * platform/win/css3/selectors3/xhtml/css3-modsel-73-expected.txt:
        * platform/win/css3/selectors3/xhtml/css3-modsel-73b-expected.txt:
        * platform/win/css3/selectors3/xhtml/css3-modsel-74-expected.txt:
        * platform/win/css3/selectors3/xhtml/css3-modsel-74b-expected.txt:
        * platform/win/css3/selectors3/xhtml/css3-modsel-77-expected.txt:
        * platform/win/css3/selectors3/xhtml/css3-modsel-77b-expected.txt:
        * platform/win/css3/selectors3/xhtml/css3-modsel-78-expected.txt:
        * platform/win/css3/selectors3/xhtml/css3-modsel-78b-expected.txt:
        * platform/win/css3/selectors3/xml/css3-modsel-161-expected.txt:
        * platform/win/css3/selectors3/xml/css3-modsel-18-expected.txt:
        * platform/win/css3/selectors3/xml/css3-modsel-18b-expected.txt:
        * platform/win/css3/selectors3/xml/css3-modsel-28-expected.txt:
        * platform/win/css3/selectors3/xml/css3-modsel-28b-expected.txt:
        * platform/win/css3/selectors3/xml/css3-modsel-29-expected.txt:
        * platform/win/css3/selectors3/xml/css3-modsel-29b-expected.txt:
        * platform/win/css3/selectors3/xml/css3-modsel-32-expected.txt:
        * platform/win/css3/selectors3/xml/css3-modsel-33-expected.txt:
        * platform/win/css3/selectors3/xml/css3-modsel-43-expected.txt:
        * platform/win/css3/selectors3/xml/css3-modsel-43b-expected.txt:
        * platform/win/css3/selectors3/xml/css3-modsel-44-expected.txt:
        * platform/win/css3/selectors3/xml/css3-modsel-44b-expected.txt:
        * platform/win/css3/selectors3/xml/css3-modsel-73-expected.txt:
        * platform/win/css3/selectors3/xml/css3-modsel-73b-expected.txt:
        * platform/win/css3/selectors3/xml/css3-modsel-74-expected.txt:
        * platform/win/css3/selectors3/xml/css3-modsel-74b-expected.txt:
        * platform/win/css3/selectors3/xml/css3-modsel-77-expected.txt:
        * platform/win/css3/selectors3/xml/css3-modsel-77b-expected.txt:
        * platform/win/css3/selectors3/xml/css3-modsel-78-expected.txt:
        * platform/win/css3/selectors3/xml/css3-modsel-78b-expected.txt:
        * platform/win/editing/deleting/4922367-expected.txt:
        * platform/win/editing/deleting/5099303-expected.txt:
        * platform/win/editing/deleting/5126166-expected.txt:
        * platform/win/editing/deleting/5144139-2-expected.txt:
        * platform/win/editing/deleting/5206311-1-expected.txt:
        * platform/win/editing/deleting/5433862-2-expected.txt:
        * platform/win/editing/deleting/5483370-expected.txt:
        * platform/win/editing/deleting/delete-to-select-table-expected.txt:
        * platform/win/editing/deleting/table-cells-expected.txt:
        * platform/win/editing/execCommand/5481523-expected.txt:
        * platform/win/editing/inserting/5058163-1-expected.txt:
        * platform/win/editing/inserting/insert-paragraph-01-expected.txt:
        * platform/win/editing/inserting/insert-paragraph-02-expected.txt:
        * platform/win/editing/inserting/paragraph-separator-in-table-1-expected.txt:
        * platform/win/editing/inserting/paragraph-separator-in-table-2-expected.txt:
        * platform/win/editing/style/5017613-1-expected.txt:
        * platform/win/editing/style/5017613-2-expected.txt:
        * platform/win/editing/style/apple-style-editable-mix-expected.txt:
        * platform/win/editing/style/table-selection-expected.txt:
        * platform/win/editing/unsupported-content/table-type-after-expected.txt:
        * platform/win/editing/unsupported-content/table-type-before-expected.txt:
        * platform/win/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.txt:
        * platform/win/fast/block/basic/016-expected.txt:
        * platform/win/fast/block/basic/quirk-percent-height-table-cell-expected.txt:
        * platform/win/fast/block/float/011-expected.txt:
        * platform/win/fast/block/float/015-expected.txt:
        * platform/win/fast/block/margin-collapse/001-expected.txt:
        * platform/win/fast/block/margin-collapse/005-expected.txt:
        * platform/win/fast/block/margin-collapse/006-expected.txt:
        * platform/win/fast/block/margin-collapse/010-expected.txt:
        * platform/win/fast/block/margin-collapse/011-expected.txt:
        * platform/win/fast/block/margin-collapse/012-expected.txt:
        * platform/win/fast/block/margin-collapse/015-expected.txt:
        * platform/win/fast/block/margin-collapse/016-expected.txt:
        * platform/win/fast/block/margin-collapse/017-expected.txt:
        * platform/win/fast/block/margin-collapse/018-expected.txt:
        * platform/win/fast/block/margin-collapse/019-expected.txt:
        * platform/win/fast/block/margin-collapse/020-expected.txt:
        * platform/win/fast/block/margin-collapse/022-expected.txt:
        * platform/win/fast/block/margin-collapse/025-expected.txt:
        * platform/win/fast/block/margin-collapse/032-expected.txt:
        * platform/win/fast/block/margin-collapse/033-expected.txt:
        * platform/win/fast/block/margin-collapse/034-expected.txt:
        * platform/win/fast/block/margin-collapse/041-expected.txt:
        * platform/win/fast/block/margin-collapse/042-expected.txt:
        * platform/win/fast/block/margin-collapse/055-expected.txt:
        * platform/win/fast/block/margin-collapse/056-expected.txt:
        * platform/win/fast/block/margin-collapse/057-expected.txt:
        * platform/win/fast/block/margin-collapse/058-expected.txt:
        * platform/win/fast/block/margin-collapse/059-expected.txt:
        * platform/win/fast/block/margin-collapse/104-expected.txt:
        * platform/win/fast/block/margin-collapse/block-inside-inline/001-expected.txt:
        * platform/win/fast/block/margin-collapse/block-inside-inline/005-expected.txt:
        * platform/win/fast/block/margin-collapse/block-inside-inline/006-expected.txt:
        * platform/win/fast/block/margin-collapse/block-inside-inline/010-expected.txt:
        * platform/win/fast/block/margin-collapse/block-inside-inline/011-expected.txt:
        * platform/win/fast/block/margin-collapse/block-inside-inline/012-expected.txt:
        * platform/win/fast/block/margin-collapse/block-inside-inline/015-expected.txt:
        * platform/win/fast/block/margin-collapse/block-inside-inline/016-expected.txt:
        * platform/win/fast/block/margin-collapse/block-inside-inline/017-expected.txt:
        * platform/win/fast/block/margin-collapse/block-inside-inline/018-expected.txt:
        * platform/win/fast/block/margin-collapse/block-inside-inline/019-expected.txt:
        * platform/win/fast/block/margin-collapse/block-inside-inline/020-expected.txt:
        * platform/win/fast/block/margin-collapse/block-inside-inline/021-expected.txt:
        * platform/win/fast/block/margin-collapse/block-inside-inline/022-expected.txt:
        * platform/win/fast/block/margin-collapse/block-inside-inline/025-expected.txt:
        * platform/win/fast/block/positioning/053-expected.txt:
        * platform/win/fast/block/positioning/negative-right-pos-expected.txt:
        * platform/win/fast/block/positioning/table-cell-static-position-expected.txt:
        * platform/win/fast/borders/bidi-009a-expected.txt:
        * platform/win/fast/borders/border-antialiasing-expected.txt:
        * platform/win/fast/borders/border-radius-different-width-001-expected.txt:
        * platform/win/fast/borders/table-borders-expected.txt:
        * platform/win/fast/box-shadow/basic-shadows-expected.txt:
        * platform/win/fast/css-generated-content/015-expected.txt:
        * platform/win/fast/css-generated-content/first-letter-in-nested-before-expected.txt:
        * platform/win/fast/css-generated-content/first-letter-in-nested-before-table-expected.txt:
        * platform/win/fast/css-generated-content/inline-display-types-expected.txt:
        * platform/win/fast/css-generated-content/nested-tables-with-before-after-content-crash-expected.txt:
        * platform/win/fast/css-generated-content/table-before-after-child-add-expected.txt:
        * platform/win/fast/css-generated-content/table-cell-before-after-child-add-expected.txt:
        * platform/win/fast/css-generated-content/table-cell-before-content-expected.txt:
        * platform/win/fast/css-generated-content/table-parts-before-and-after-expected.txt:
        * platform/win/fast/css-generated-content/table-row-before-after-child-add-expected.txt:
        * platform/win/fast/css-generated-content/table-row-before-after-expected.txt:
        * platform/win/fast/css-generated-content/table-row-group-with-before-expected.txt:
        * platform/win/fast/css-generated-content/table-row-with-before-expected.txt:
        * platform/win/fast/css-generated-content/table-table-before-after-child-add-expected.txt:
        * platform/win/fast/css-generated-content/table-with-before-expected.txt:
        * platform/win/fast/css/003-expected.txt:
        * platform/win/fast/css/absolute-poition-in-rtl-parent-expected.txt:
        * platform/win/fast/css/acid2-expected.txt:
        * platform/win/fast/css/acid2-pixel-expected.txt:
        * platform/win/fast/css/bidi-override-in-anonymous-block-expected.txt:
        * platform/win/fast/css/box-shadow-and-border-radius-expected.txt:
        * platform/win/fast/css/caption-width-absolute-position-expected.txt:
        * platform/win/fast/css/caption-width-absolute-position-offset-top-expected.txt:
        * platform/win/fast/css/caption-width-fixed-position-expected.txt:
        * platform/win/fast/css/caption-width-fixed-position-offset-top-expected.txt:
        * platform/win/fast/css/caption-width-relative-position-expected.txt:
        * platform/win/fast/css/caption-width-relative-position-offset-top-expected.txt:
        * platform/win/fast/css/css3-nth-child-expected.txt:
        * platform/win/fast/css/first-letter-float-expected.txt:
        * platform/win/fast/css/focus-ring-detached-expected.txt:
        * platform/win/fast/css/focus-ring-multiline-expected.txt:
        * platform/win/fast/css/h1-in-section-elements-expected.txt:
        * platform/win/fast/css/image-rendering-expected.txt:
        * platform/win/fast/css/layerZOrderCrash-expected.txt:
        * platform/win/fast/css/min-width-with-spanned-cell-expected.txt:
        * platform/win/fast/css/percentage-non-integer-expected.txt:
        * platform/win/fast/css/table-text-align-quirk-expected.txt:
        * platform/win/fast/css/table-text-align-strict-expected.txt:
        * platform/win/fast/dom/HTMLTableColElement/resize-table-using-col-width-expected.txt:
        * platform/win/fast/dom/HTMLTableElement/createCaption-expected.txt:
        * platform/win/fast/dom/row-inner-text-expected.txt:
        * platform/win/fast/dynamic/001-expected.txt:
        * platform/win/fast/dynamic/007-expected.txt:
        * platform/win/fast/dynamic/014-expected.txt:
        * platform/win/fast/dynamic/015-expected.txt:
        * platform/win/fast/dynamic/containing-block-change-expected.txt:
        * platform/win/fast/dynamic/create-renderer-for-whitespace-only-text-expected.txt:
        * platform/win/fast/dynamic/float-withdrawal-expected.txt:
        * platform/win/fast/dynamic/insert-before-table-part-in-continuation-expected.txt:
        * platform/win/fast/dynamic/subtree-table-cell-height-expected.txt:

2016-01-28  Nikos Andronikos  <nikos.andronikos-webkit@cisra.canon.com.au>

        [SVG] Add support for 'lighter' operator in feComposite
        https://bugs.webkit.org/show_bug.cgi?id=141376

        Reviewed by Darin Adler.

        Add case to support lighter to DOM manipulation test for feComposite.
        Add a new reftest that tests lighter case and supercedes older
        pixel test for other modes.

        * svg/dom/script-tests/SVGAnimatedEnumeration-SVGFECompositeElement.js:
          Test DOM read/write of SVGFEComposite operator property with new
          lighter mode.
        * svg/dom/SVGAnimatedEnumeration-SVGFECompositeElement-expected.txt:
        * svg/filters/feCompositeOpaque.html: Added.
          A reftest that supersedes svg/filters/feComposite.svg
          That test used opacity 0.5 which resulted in differing colors
          across platforms. This makes it very hard to maintain the references
          but it's probably still useful as a regression test.
          This new test uses solid colors which result in consistency across
          platforms and allow a reftest to be used.
        * svg/filters/feCompositeOpaque-expected.html: Added.

2016-01-28  Darin Adler  <darin@apple.com>

        Remove equalIgnoringCase since all callers really wanted equalIgnoringASCIICase
        https://bugs.webkit.org/show_bug.cgi?id=153411

        Reviewed by Ryosuke Niwa.

        * fast/dom/HTMLAnchorElement/anchor-non-ASCII-case-folding-expected.txt: Added.
        * fast/dom/HTMLAnchorElement/anchor-non-ASCII-case-folding.html: Added.
        * fast/dom/HTMLAnchorElement/resources/iframe-with-non-ASCII-matching-anchor.html: Added.

        * fast/media/media-query-non-ASCII-case-folding-expected.txt: Added.
        * fast/media/media-query-non-ASCII-case-folding.html: Added.

        * fast/xpath/xpath-non-ASCII-case-folding-expected.txt: Added.
        * fast/xpath/xpath-non-ASCII-case-folding.html: Added.

2016-01-28  Zalan Bujtas  <zalan@apple.com>

        Unexpected content wrapping at http://email.osh.com/H/2/v100000152474feb8ec7c1a1f4bbe5c7c0/HTML
        https://bugs.webkit.org/show_bug.cgi?id=153430

        Reviewed by Simon Fraser.

        Ensure that min/max preferred and computed widths never shrink while converting LayoutUnit to float and back.

        * fast/table/fixed-size-table-with-fixed-size-content-expected.html: Added.
        * fast/table/fixed-size-table-with-fixed-size-content.html: Added.
        * platform/ios-simulator/css1/basic/containment-expected.txt:
        * platform/ios-simulator/css1/basic/contextual_selectors-expected.txt:
        * platform/ios-simulator/css1/basic/grouping-expected.txt:
        * platform/ios-simulator/css1/basic/id_as_selector-expected.txt:
        * platform/ios-simulator/css1/basic/inheritance-expected.txt:
        * platform/ios-simulator/css1/box_properties/border-expected.txt:
        * platform/ios-simulator/css1/box_properties/border_bottom-expected.txt:
        * platform/ios-simulator/css1/box_properties/border_bottom_inline-expected.txt:
        * platform/ios-simulator/css1/box_properties/border_bottom_width-expected.txt:
        * platform/ios-simulator/css1/box_properties/border_bottom_width_inline-expected.txt:
        * platform/ios-simulator/css1/box_properties/border_color-expected.txt:
        * platform/ios-simulator/css1/box_properties/border_color_inline-expected.txt:
        * platform/ios-simulator/css1/box_properties/border_inline-expected.txt:
        * platform/ios-simulator/css1/box_properties/border_left-expected.txt:
        * platform/ios-simulator/css1/box_properties/border_left_inline-expected.txt:
        * platform/ios-simulator/css1/box_properties/border_left_width-expected.txt:
        * platform/ios-simulator/css1/box_properties/border_left_width_inline-expected.txt:
        * platform/ios-simulator/css1/box_properties/border_right-expected.txt:
        * platform/ios-simulator/css1/box_properties/border_right_inline-expected.txt:
        * platform/ios-simulator/css1/box_properties/border_right_width-expected.txt:
        * platform/ios-simulator/css1/box_properties/border_right_width_inline-expected.txt:
        * platform/ios-simulator/css1/box_properties/border_style-expected.txt:
        * platform/ios-simulator/css1/box_properties/border_style_inline-expected.txt:
        * platform/ios-simulator/css1/box_properties/border_top-expected.txt:
        * platform/ios-simulator/css1/box_properties/border_top_inline-expected.txt:
        * platform/ios-simulator/css1/box_properties/border_top_width-expected.txt:
        * platform/ios-simulator/css1/box_properties/border_top_width_inline-expected.txt:
        * platform/ios-simulator/css1/box_properties/border_width-expected.txt:
        * platform/ios-simulator/css1/box_properties/border_width_inline-expected.txt:
        * platform/ios-simulator/css1/box_properties/clear-expected.txt:
        * platform/ios-simulator/css1/box_properties/clear_float-expected.txt:
        * platform/ios-simulator/css1/box_properties/float-expected.txt:
        * platform/ios-simulator/css1/box_properties/float_elements_in_series-expected.txt:
        * platform/ios-simulator/css1/box_properties/float_margin-expected.txt:
        * platform/ios-simulator/css1/box_properties/height-expected.txt:
        * platform/ios-simulator/css1/box_properties/margin-expected.txt:
        * platform/ios-simulator/css1/box_properties/margin_bottom-expected.txt:
        * platform/ios-simulator/css1/box_properties/margin_bottom_inline-expected.txt:
        * platform/ios-simulator/css1/box_properties/margin_inline-expected.txt:
        * platform/ios-simulator/css1/box_properties/margin_left-expected.txt:
        * platform/ios-simulator/css1/box_properties/margin_left_inline-expected.txt:
        * platform/ios-simulator/css1/box_properties/margin_right-expected.txt:
        * platform/ios-simulator/css1/box_properties/margin_right_inline-expected.txt:
        * platform/ios-simulator/css1/box_properties/margin_top-expected.txt:
        * platform/ios-simulator/css1/box_properties/margin_top_inline-expected.txt:
        * platform/ios-simulator/css1/box_properties/padding-expected.txt:
        * platform/ios-simulator/css1/box_properties/padding_bottom-expected.txt:
        * platform/ios-simulator/css1/box_properties/padding_bottom_inline-expected.txt:
        * platform/ios-simulator/css1/box_properties/padding_inline-expected.txt:
        * platform/ios-simulator/css1/box_properties/padding_left-expected.txt:
        * platform/ios-simulator/css1/box_properties/padding_left_inline-expected.txt:
        * platform/ios-simulator/css1/box_properties/padding_right-expected.txt:
        * platform/ios-simulator/css1/box_properties/padding_right_inline-expected.txt:
        * platform/ios-simulator/css1/box_properties/padding_top-expected.txt:
        * platform/ios-simulator/css1/box_properties/padding_top_inline-expected.txt:
        * platform/ios-simulator/css1/box_properties/width-expected.txt:
        * platform/ios-simulator/css1/cascade/cascade_order-expected.txt:
        * platform/ios-simulator/css1/cascade/important-expected.txt:
        * platform/ios-simulator/css1/classification/display-expected.txt:
        * platform/ios-simulator/css1/classification/list_style-expected.txt:
        * platform/ios-simulator/css1/classification/list_style_image-expected.txt:
        * platform/ios-simulator/css1/classification/list_style_position-expected.txt:
        * platform/ios-simulator/css1/classification/list_style_type-expected.txt:
        * platform/ios-simulator/css1/classification/white_space-expected.txt:
        * platform/ios-simulator/css1/color_and_background/background-expected.txt:
        * platform/ios-simulator/css1/color_and_background/background_attachment-expected.txt:
        * platform/ios-simulator/css1/color_and_background/background_color-expected.txt:
        * platform/ios-simulator/css1/color_and_background/background_image-expected.txt:
        * platform/ios-simulator/css1/color_and_background/background_position-expected.txt:
        * platform/ios-simulator/css1/color_and_background/background_repeat-expected.txt:
        * platform/ios-simulator/css1/color_and_background/color-expected.txt:
        * platform/ios-simulator/css1/conformance/forward_compatible_parsing-expected.txt:
        * platform/ios-simulator/css1/font_properties/font-expected.txt:
        * platform/ios-simulator/css1/font_properties/font_family-expected.txt:
        * platform/ios-simulator/css1/font_properties/font_size-expected.txt:
        * platform/ios-simulator/css1/font_properties/font_style-expected.txt:
        * platform/ios-simulator/css1/font_properties/font_variant-expected.txt:
        * platform/ios-simulator/css1/font_properties/font_weight-expected.txt:
        * platform/ios-simulator/css1/formatting_model/canvas-expected.txt:
        * platform/ios-simulator/css1/formatting_model/height_of_lines-expected.txt:
        * platform/ios-simulator/css1/formatting_model/inline_elements-expected.txt:
        * platform/ios-simulator/css1/formatting_model/replaced_elements-expected.txt:
        * platform/ios-simulator/css1/formatting_model/vertical_formatting-expected.txt:
        * platform/ios-simulator/css1/pseudo/anchor-expected.txt:
        * platform/ios-simulator/css1/pseudo/firstletter-expected.txt:
        * platform/ios-simulator/css1/pseudo/firstline-expected.txt:
        * platform/ios-simulator/css1/pseudo/multiple_pseudo_elements-expected.txt:
        * platform/ios-simulator/css1/pseudo/pseudo_elements_in_selectors-expected.txt:
        * platform/ios-simulator/css1/text_properties/letter_spacing-expected.txt:
        * platform/ios-simulator/css1/text_properties/line_height-expected.txt:
        * platform/ios-simulator/css1/text_properties/text_align-expected.txt:
        * platform/ios-simulator/css1/text_properties/text_decoration-expected.txt:
        * platform/ios-simulator/css1/text_properties/text_indent-expected.txt:
        * platform/ios-simulator/css1/text_properties/text_transform-expected.txt:
        * platform/ios-simulator/css1/text_properties/vertical_align-expected.txt:
        * platform/ios-simulator/css1/text_properties/word_spacing-expected.txt:
        * platform/ios-simulator/css1/units/color_units-expected.txt:
        * platform/ios-simulator/css1/units/length_units-expected.txt:
        * platform/ios-simulator/css1/units/percentage_units-expected.txt:
        * platform/ios-simulator/css1/units/urls-expected.txt:
        * platform/ios-simulator/css2.1/20110323/border-collapse-offset-002-expected.txt:
        * platform/ios-simulator/css2.1/20110323/border-conflict-style-079-expected.txt:
        * platform/ios-simulator/css2.1/20110323/border-conflict-style-088-expected.txt:
        * platform/ios-simulator/css2.1/20110323/dynamic-top-change-002-expected.txt:
        * platform/ios-simulator/css2.1/20110323/dynamic-top-change-003-expected.txt:
        * platform/ios-simulator/css2.1/20110323/inline-table-001-expected.txt:
        * platform/ios-simulator/css2.1/20110323/inline-table-003-expected.txt:
        * platform/ios-simulator/css2.1/20110323/margin-applies-to-001-expected.txt:
        * platform/ios-simulator/css2.1/20110323/margin-applies-to-002-expected.txt:
        * platform/ios-simulator/css2.1/20110323/margin-applies-to-003-expected.txt:
        * platform/ios-simulator/css2.1/20110323/margin-applies-to-004-expected.txt:
        * platform/ios-simulator/css2.1/20110323/margin-applies-to-005-expected.txt:
        * platform/ios-simulator/css2.1/20110323/margin-applies-to-006-expected.txt:
        * platform/ios-simulator/css2.1/20110323/margin-applies-to-007-expected.txt:
        * platform/ios-simulator/css2.1/20110323/margin-applies-to-013-expected.txt:
        * platform/ios-simulator/css2.1/20110323/margin-applies-to-014-expected.txt:
        * platform/ios-simulator/css2.1/20110323/margin-applies-to-015-expected.txt:
        * platform/ios-simulator/css2.1/20110323/replaced-intrinsic-ratio-001-expected.txt:
        * platform/ios-simulator/css2.1/20110323/table-caption-001-expected.txt:
        * platform/ios-simulator/css2.1/20110323/table-caption-optional-001-expected.txt:
        * platform/ios-simulator/css2.1/20110323/table-caption-optional-002-expected.txt:
        * platform/ios-simulator/css2.1/t040302-c61-ex-len-00-b-a-expected.txt:
        * platform/ios-simulator/css2.1/t0803-c5501-mrgn-t-00-b-a-expected.txt:
        * platform/ios-simulator/css2.1/t0803-c5503-mrgn-b-00-b-a-expected.txt:
        * platform/ios-simulator/css2.1/t080301-c411-vt-mrgn-00-b-expected.txt:
        * platform/ios-simulator/css2.1/t0804-c5506-padn-t-00-b-a-expected.txt:
        * platform/ios-simulator/css2.1/t0804-c5508-ipadn-b-03-b-a-expected.txt:
        * platform/ios-simulator/css2.1/t090402-c42-ibx-pad-00-d-ag-expected.txt:
        * platform/ios-simulator/css2.1/t0905-c5525-fltmult-00-d-g-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-04-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-06-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-08-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-13-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-14-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-16-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-17-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-18-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-24-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-25-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-30-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-31-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-34-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-44-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-52-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-54-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-59-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-64-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-65-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-70-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-71-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-74-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-84-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-85-d-expected.txt:
        * platform/ios-simulator/css2.1/t170602-bdr-conflct-w-94-d-expected.txt:
        * platform/ios-simulator/css2.1/tables/table-anonymous-objects-177-expected.txt:
        * platform/ios-simulator/css2.1/tables/table-anonymous-objects-178-expected.txt:
        * platform/ios-simulator/css2.1/tables/table-anonymous-objects-179-expected.txt:
        * platform/ios-simulator/css2.1/tables/table-anonymous-objects-180-expected.txt:
        * platform/ios-simulator/css2.1/tables/table-anonymous-objects-181-expected.txt:
        * platform/ios-simulator/css2.1/tables/table-anonymous-objects-189-expected.txt:
        * platform/ios-simulator/css2.1/tables/table-anonymous-objects-190-expected.txt:
        * platform/ios-simulator/css2.1/tables/table-anonymous-objects-191-expected.txt:
        * platform/ios-simulator/css2.1/tables/table-anonymous-objects-192-expected.txt:
        * platform/ios-simulator/css2.1/tables/table-anonymous-objects-193-expected.txt:
        * platform/ios-simulator/css2.1/tables/table-anonymous-objects-194-expected.txt:
        * platform/ios-simulator/css2.1/tables/table-anonymous-objects-195-expected.txt:
        * platform/ios-simulator/css2.1/tables/table-anonymous-objects-196-expected.txt:
        * platform/ios-simulator/css2.1/tables/table-anonymous-objects-205-expected.txt:
        * platform/ios-simulator/css2.1/tables/table-anonymous-objects-206-expected.txt:
        * platform/ios-simulator/css3/css3-modsel-33-expected.txt:
        * platform/ios-simulator/css3/selectors3/html/css3-modsel-18-expected.txt:
        * platform/ios-simulator/css3/selectors3/html/css3-modsel-29-expected.txt:
        * platform/ios-simulator/css3/selectors3/html/css3-modsel-29b-expected.txt:
        * platform/ios-simulator/css3/selectors3/html/css3-modsel-33-expected.txt:
        * platform/ios-simulator/css3/selectors3/html/css3-modsel-73-expected.txt:
        * platform/ios-simulator/css3/selectors3/html/css3-modsel-73b-expected.txt:
        * platform/ios-simulator/css3/selectors3/html/css3-modsel-77-expected.txt:
        * platform/ios-simulator/css3/selectors3/html/css3-modsel-77b-expected.txt:
        * platform/ios-simulator/css3/selectors3/xhtml/css3-modsel-18-expected.txt:
        * platform/ios-simulator/css3/selectors3/xhtml/css3-modsel-29-expected.txt:
        * platform/ios-simulator/css3/selectors3/xhtml/css3-modsel-29b-expected.txt:
        * platform/ios-simulator/css3/selectors3/xhtml/css3-modsel-33-expected.txt:
        * platform/ios-simulator/css3/selectors3/xhtml/css3-modsel-73-expected.txt:
        * platform/ios-simulator/css3/selectors3/xhtml/css3-modsel-73b-expected.txt:
        * platform/ios-simulator/css3/selectors3/xhtml/css3-modsel-77-expected.txt:
        * platform/ios-simulator/css3/selectors3/xhtml/css3-modsel-77b-expected.txt:
        * platform/ios-simulator/css3/selectors3/xml/css3-modsel-18-expected.txt:
        * platform/ios-simulator/css3/selectors3/xml/css3-modsel-29-expected.txt:
        * platform/ios-simulator/css3/selectors3/xml/css3-modsel-29b-expected.txt:
        * platform/ios-simulator/css3/selectors3/xml/css3-modsel-33-expected.txt:
        * platform/ios-simulator/css3/selectors3/xml/css3-modsel-73-expected.txt:
        * platform/ios-simulator/css3/selectors3/xml/css3-modsel-73b-expected.txt:
        * platform/ios-simulator/css3/selectors3/xml/css3-modsel-77-expected.txt:
        * platform/ios-simulator/css3/selectors3/xml/css3-modsel-77b-expected.txt:
        * platform/ios-simulator/editing/deleting/4922367-expected.txt:
        * platform/ios-simulator/editing/deleting/5126166-expected.txt:
        * platform/ios-simulator/editing/deleting/5206311-1-expected.txt:
        * platform/ios-simulator/editing/deleting/5433862-2-expected.txt:
        * platform/ios-simulator/editing/inserting/paragraph-separator-in-table-1-expected.txt:
        * platform/ios-simulator/editing/selection/5057506-2-expected.txt:
        * platform/ios-simulator/editing/selection/5057506-expected.txt:
        * platform/ios-simulator/editing/selection/5131716-1-expected.txt:
        * platform/ios-simulator/editing/selection/5131716-2-expected.txt:
        * platform/ios-simulator/editing/selection/5131716-3-expected.txt:
        * platform/ios-simulator/editing/selection/5131716-4-expected.txt:
        * platform/ios-simulator/fast/block/basic/quirk-percent-height-table-cell-expected.txt:
        * platform/ios-simulator/fast/block/float/015-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/006-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/010-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/011-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/012-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/015-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/016-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/017-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/018-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/019-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/020-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/021-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/022-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/025-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/032-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/033-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/034-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/041-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/042-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/055-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/056-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/057-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/058-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/059-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/block-inside-inline/006-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/block-inside-inline/010-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/block-inside-inline/011-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/block-inside-inline/012-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/block-inside-inline/015-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/block-inside-inline/016-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/block-inside-inline/017-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/block-inside-inline/018-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/block-inside-inline/019-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/block-inside-inline/020-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/block-inside-inline/021-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/block-inside-inline/022-expected.txt:
        * platform/ios-simulator/fast/block/margin-collapse/block-inside-inline/025-expected.txt:
        * platform/ios-simulator/fast/block/positioning/negative-right-pos-expected.txt:
        * platform/ios-simulator/fast/block/positioning/table-cell-static-position-expected.txt:
        * platform/ios-simulator/fast/borders/border-antialiasing-expected.txt:
        * platform/ios-simulator/fast/borders/border-radius-different-width-001-expected.txt:
        * platform/ios-simulator/fast/borders/table-borders-expected.txt:
        * platform/ios-simulator/fast/css-generated-content/first-letter-in-nested-before-expected.txt:
        * platform/ios-simulator/fast/css-generated-content/first-letter-in-nested-before-table-expected.txt:
        * platform/ios-simulator/fast/css-generated-content/nested-tables-with-before-after-content-crash-expected.txt:
        * platform/ios-simulator/fast/css-generated-content/table-cell-before-after-child-add-expected.txt:
        * platform/ios-simulator/fast/css-generated-content/table-row-group-with-before-expected.txt:
        * platform/ios-simulator/fast/css-generated-content/table-row-with-before-expected.txt:
        * platform/ios-simulator/fast/css-generated-content/table-with-before-expected.txt:
        * platform/ios-simulator/fast/css/003-expected.txt:
        * platform/ios-simulator/fast/css/absolute-poition-in-rtl-parent-expected.txt:
        * platform/ios-simulator/fast/css/acid2-expected.txt:
        * platform/ios-simulator/fast/css/acid2-pixel-expected.txt:
        * platform/ios-simulator/fast/css/bidi-override-in-anonymous-block-expected.txt:
        * platform/ios-simulator/fast/css/box-shadow-and-border-radius-expected.txt:
        * platform/ios-simulator/fast/css/css3-nth-child-expected.txt:
        * platform/ios-simulator/fast/css/focus-ring-detached-expected.txt:
        * platform/ios-simulator/fast/css/focus-ring-multiline-expected.txt:
        * platform/ios-simulator/fast/css/h1-in-section-elements-expected.txt:
        * platform/ios-simulator/fast/css/percentage-non-integer-expected.txt:
        * platform/ios-simulator/fast/css/table-text-align-quirk-expected.txt:
        * platform/ios-simulator/fast/css/table-text-align-strict-expected.txt:
        * platform/ios-simulator/fast/dom/34176-expected.txt:
        * platform/ios-simulator/fast/dom/HTMLTableElement/colSpan-expected.txt:
        * platform/ios-simulator/fast/dom/HTMLTableElement/createCaption-expected.txt:
        * platform/ios-simulator/fast/dom/row-inner-text-expected.txt:
        * platform/ios-simulator/fast/dynamic/001-expected.txt:
        * platform/ios-simulator/fast/dynamic/containing-block-change-expected.txt:
        * platform/ios-simulator/fast/dynamic/float-withdrawal-expected.txt:
        * platform/ios-simulator/fast/dynamic/insert-before-table-part-in-continuation-expected.txt:
        * platform/ios-simulator/fast/dynamic/subtree-table-cell-height-expected.txt:
        * platform/ios-simulator/fast/forms/001-expected.txt:
        * platform/ios-simulator/fast/forms/005-expected.txt:
        * platform/ios-simulator/fast/forms/form-element-geometry-expected.txt:
        * platform/ios-simulator/fast/forms/form-hides-table-expected.txt:
        * platform/ios-simulator/fast/forms/formmove3-expected.txt:
        * platform/ios-simulator/fast/forms/input-table-expected.txt:
        * platform/ios-simulator/fast/forms/listbox-bidi-align-expected.txt:
        * platform/ios-simulator/fast/forms/preserveFormDuringResidualStyle-expected.txt:
        * platform/ios-simulator/fast/forms/select-dirty-parent-pref-widths-expected.txt:
        * platform/ios-simulator/fast/html/details-writing-mode-expected.txt:
        * platform/ios-simulator/fast/inline-block/001-expected.txt:
        * platform/ios-simulator/fast/inline-block/overflow-clip-expected.txt:
        * platform/ios-simulator/fast/invalid/012-expected.txt:
        * platform/ios-simulator/fast/lists/004-expected.txt:
        * platform/ios-simulator/fast/multicol/span/before-child-anonymous-column-block-expected.txt:
        * platform/ios-simulator/fast/multicol/table-vertical-align-expected.txt:
        * platform/ios-simulator/fast/overflow/002-expected.txt:
        * platform/ios-simulator/fast/overflow/overflow-rtl-expected.txt:
        * platform/ios-simulator/fast/overflow/overflow-rtl-vertical-expected.txt:
        * platform/ios-simulator/fast/overflow/table-overflow-float-expected.txt:
        * platform/ios-simulator/fast/reflections/table-cell-expected.txt:
        * platform/ios-simulator/fast/replaced/005-expected.txt:
        * platform/ios-simulator/fast/replaced/percent-height-in-anonymous-block-in-table-expected.txt:
        * platform/ios-simulator/fast/replaced/selection-rect-in-table-cell-expected.txt:
        * platform/ios-simulator/fast/replaced/table-percent-height-positioned-expected.txt:
        * platform/ios-simulator/fast/replaced/width100percent-checkbox-expected.txt:
        * platform/ios-simulator/fast/replaced/width100percent-image-expected.txt:
        * platform/ios-simulator/fast/replaced/width100percent-menulist-expected.txt:
        * platform/ios-simulator/fast/replaced/width100percent-radio-expected.txt:
        * platform/ios-simulator/fast/replaced/width100percent-searchfield-expected.txt:
        * platform/ios-simulator/fast/replaced/width100percent-textarea-expected.txt:
        * platform/ios-simulator/fast/replaced/width100percent-textfield-expected.txt:
        * platform/ios-simulator/fast/selectors/077-expected.txt:
        * platform/ios-simulator/fast/selectors/077b-expected.txt:
        * platform/ios-simulator/fast/table/002-expected.txt:
        * platform/ios-simulator/fast/table/003-expected.txt:
        * platform/ios-simulator/fast/table/005-expected.txt:
        * platform/ios-simulator/fast/table/007-expected.txt:
        * platform/ios-simulator/fast/table/008-expected.txt:
        * platform/ios-simulator/fast/table/009-expected.txt:
        * platform/ios-simulator/fast/table/012-expected.txt:
        * platform/ios-simulator/fast/table/013-expected.txt:
        * platform/ios-simulator/fast/table/021-expected.txt:
        * platform/ios-simulator/fast/table/023-expected.txt:
        * platform/ios-simulator/fast/table/028-expected.txt:
        * platform/ios-simulator/fast/table/028-vertical-expected.txt:
        * platform/ios-simulator/fast/table/029-expected.txt:
        * platform/ios-simulator/fast/table/038-expected.txt:
        * platform/ios-simulator/fast/table/038-vertical-expected.txt:
        * platform/ios-simulator/fast/table/039-expected.txt:
        * platform/ios-simulator/fast/table/040-expected.txt:
        * platform/ios-simulator/fast/table/040-vertical-expected.txt:
        * platform/ios-simulator/fast/table/100-percent-cell-width-expected.txt:
        * platform/ios-simulator/fast/table/add-before-anonymous-child-expected.txt:
        * platform/ios-simulator/fast/table/border-collapsing/001-expected.txt:
        * platform/ios-simulator/fast/table/border-collapsing/001-vertical-expected.txt:
        * platform/ios-simulator/fast/table/border-collapsing/002-expected.txt:
        * platform/ios-simulator/fast/table/border-collapsing/002-vertical-expected.txt:
        * platform/ios-simulator/fast/table/border-collapsing/003-expected.txt:
        * platform/ios-simulator/fast/table/border-collapsing/003-vertical-expected.txt:
        * platform/ios-simulator/fast/table/border-collapsing/border-collapsing-head-foot-expected.txt:
        * platform/ios-simulator/fast/table/border-collapsing/border-collapsing-head-foot-vertical-expected.txt:
        * platform/ios-simulator/fast/table/border-collapsing/cached-69296-expected.txt:
        * platform/ios-simulator/fast/table/border-collapsing/cached-change-row-border-width-expected.txt:
        * platform/ios-simulator/fast/table/border-collapsing/cached-change-tbody-border-width-expected.txt:
        * platform/ios-simulator/fast/table/border-collapsing/equal-precedence-resolution-expected.txt:
        * platform/ios-simulator/fast/table/border-collapsing/rtl-border-collapsing-expected.txt:
        * platform/ios-simulator/fast/table/border-collapsing/rtl-border-collapsing-vertical-expected.txt:
        * platform/ios-simulator/fast/table/caption-relayout-expected.txt:
        * platform/ios-simulator/fast/table/cell-absolute-child-expected.txt:
        * platform/ios-simulator/fast/table/cell-width-auto-expected.txt:
        * platform/ios-simulator/fast/table/colspanMinWidth-expected.txt:
        * platform/ios-simulator/fast/table/dynamic-cellpadding-expected.txt:
        * platform/ios-simulator/fast/table/edge-offsets-expected.txt:
        * platform/ios-simulator/fast/table/empty-cells-expected.txt:
        * platform/ios-simulator/fast/table/frame-and-rules-expected.txt:
        * platform/ios-simulator/fast/table/giantRowspan-expected.txt:
        * platform/ios-simulator/fast/table/growCellForImageQuirk-expected.txt:
        * platform/ios-simulator/fast/table/growCellForImageQuirk-vertical-expected.txt:
        * platform/ios-simulator/fast/table/invisible-cell-background-expected.txt:
        * platform/ios-simulator/fast/table/large-width-expected.txt:
        * platform/ios-simulator/fast/table/max-width-integer-overflow-expected.txt:
        * platform/ios-simulator/fast/table/mozilla-bug10296-vertical-align-1-expected.txt:
        * platform/ios-simulator/fast/table/mozilla-bug10296-vertical-align-2-expected.txt:
        * platform/ios-simulator/fast/table/nobr-expected.txt:
        * platform/ios-simulator/fast/table/overflowHidden-expected.txt:
        * platform/ios-simulator/fast/table/percent-heights-expected.txt:
        * platform/ios-simulator/fast/table/percent-widths-stretch-expected.txt:
        * platform/ios-simulator/fast/table/prepend-in-anonymous-table-expected.txt:
        * platform/ios-simulator/fast/table/relative-position-containment-expected.txt:
        * platform/ios-simulator/fast/table/relative-position-offsets-expected.txt:
        * platform/ios-simulator/fast/table/relative-position-stacking-expected.txt:
        * platform/ios-simulator/fast/table/replaced-percent-height-expected.txt:
        * platform/ios-simulator/fast/table/row-height-recalc-expected.txt:
        * platform/ios-simulator/fast/table/rowspan-paint-order-expected.txt:
        * platform/ios-simulator/fast/table/rowspan-paint-order-vertical-expected.txt:
        * platform/ios-simulator/fast/table/spanOverlapRepaint-expected.txt:
        * platform/ios-simulator/fast/table/stale-grid-crash-expected.txt:
        * platform/ios-simulator/fast/table/table-cell-before-child-in-table-expected.txt:
        * platform/ios-simulator/fast/table/table-display-types-expected.txt:
        * platform/ios-simulator/fast/table/table-display-types-strict-expected.txt:
        * platform/ios-simulator/fast/table/table-display-types-vertical-expected.txt:
        * platform/ios-simulator/fast/table/table-row-before-after-content-around-table-cell-expected.txt:
        * platform/ios-simulator/fast/table/table-row-outline-paint-expected.txt:
        * platform/ios-simulator/fast/table/table-row-split2-expected.txt:
        * platform/ios-simulator/fast/table/table-section-split2-expected.txt:
        * platform/ios-simulator/fast/table/table-split-expected.txt:
        * platform/ios-simulator/fast/table/table-split2-expected.txt:
        * platform/ios-simulator/fast/text/basic/004-expected.txt:
        * platform/ios-simulator/fast/text/basic/005-expected.txt:
        * platform/ios-simulator/fast/text/emoji-expected.txt:
        * platform/ios-simulator/fast/text/international/bidi-LDB-2-CSS-expected.txt:
        * platform/ios-simulator/fast/text/international/bidi-LDB-2-HTML-expected.txt:
        * platform/ios-simulator/fast/text/international/bidi-LDB-2-formatting-characters-expected.txt:
        * platform/ios-simulator/fast/text/whitespace/002-expected.txt:
        * platform/ios-simulator/fast/text/whitespace/003-expected.txt:
        * platform/ios-simulator/fast/text/whitespace/004-expected.txt:
        * platform/ios-simulator/fast/text/whitespace/005-expected.txt:
        * platform/ios-simulator/fast/text/whitespace/010-expected.txt:
        * platform/ios-simulator/fast/text/whitespace/011-expected.txt:
        * platform/ios-simulator/fast/text/whitespace/015-expected.txt:
        * platform/ios-simulator/fast/text/whitespace/016-expected.txt:
        * platform/ios-simulator/fast/text/whitespace/025-expected.txt:
        * platform/ios-simulator/fast/writing-mode/table-percent-width-quirk-expected.txt:
        * platform/ios-simulator/fast/writing-mode/vertical-align-table-baseline-expected.txt:
        * platform/ios-simulator/http/tests/misc/acid2-expected.txt:
        * platform/ios-simulator/http/tests/misc/acid2-pixel-expected.txt:
        * platform/ios-simulator/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.txt:
        * platform/ios-simulator/ietestcenter/css3/bordersbackgrounds/background_properties_greater_than_images-expected.txt:
        * platform/ios-simulator/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-006-expected.txt:
        * platform/ios-simulator/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-007-expected.txt:
        * platform/ios-simulator/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-008-expected.txt:
        * platform/ios-simulator/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-009-expected.txt:
        * platform/ios-simulator/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-011-expected.txt:
        * platform/ios-simulator/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-012-expected.txt:
        * platform/ios-simulator/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-013-expected.txt:
        * platform/ios-simulator/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-014-expected.txt:
        * platform/ios-simulator/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-015-expected.txt:
        * platform/ios-simulator/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-016-expected.txt:
        * platform/ios-simulator/ietestcenter/css3/bordersbackgrounds/border-radius-different-width-001-expected.txt:
        * platform/ios-simulator/ietestcenter/css3/bordersbackgrounds/border-radius-shorthand-001-expected.txt:
        * platform/ios-simulator/ietestcenter/css3/bordersbackgrounds/border-radius-sum-of-radii-001-expected.txt:
        * platform/ios-simulator/ietestcenter/css3/bordersbackgrounds/border-radius-sum-of-radii-002-expected.txt:
        * platform/ios-simulator/ietestcenter/css3/bordersbackgrounds/border-top-left-radius-values-004-expected.txt:
        * platform/ios-simulator/ietestcenter/css3/bordersbackgrounds/border-top-right-radius-values-004-expected.txt:
        * platform/ios-simulator/ietestcenter/css3/bordersbackgrounds/none-as-image-layer-expected.txt:
        * platform/ios-simulator/mathml/opentype/opentype-stretchy-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug10009-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug101201-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug101674-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug10296-1-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug1055-1-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug10565-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug10633-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug1067-1-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug1067-2-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug106795-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug106816-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug113235-1-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug113424-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug1163-1-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug1188-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug12008-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug120107-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug120364-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug1224-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug12268-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug12709-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug1271-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug12908-1-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug12908-2-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug12910-2-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug1296-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug1302-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug13169-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug1318-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug139524-1-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug139524-2-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug139524-3-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug139524-4-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug1430-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug14323-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug1474-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug14929-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug15247-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug154780-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug15544-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug159108-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug15933-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug16012-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug16252-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug17138-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug175455-4-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug17548-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug17587-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug1800-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug1802-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug1802s-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug1809-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug18440-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug18664-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug18955-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug19061-1-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug19061-2-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug19356-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug20804-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug2123-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug215629-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug219693-1-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug219693-2-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug22019-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug222336-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug22246-2-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug22246-2a-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug22246-3-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug22246-3a-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug22513-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug2296-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug23235-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug24200-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug2479-3-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug25004-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug25074-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug25663-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug2684-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug269566-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug277062-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug2773-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug27993-1-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug2886-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug28933-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug29058-1-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug29429-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug2954-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug2981-1-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug2981-2-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug2997-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug30273-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug3103-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug32205-3-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug3260-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug32841-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug33137-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug33855-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug3454-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug3977-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug4093-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug42187-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug4385-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug44505-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug4501-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug4527-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug45350-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug45486-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug4576-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug46268-1-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug46268-2-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug46368-1-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug46623-1-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug46623-2-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug47432-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug4803-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug4849-2-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug4849-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug51727-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug5188-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug52505-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug52506-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug53690-1-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug53690-2-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug53891-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug5538-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug55789-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug57828-2-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug5797-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug5835-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug59354-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug60804-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug60807-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug6184-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug6304-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug6404-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug647-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug6674-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug68998-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug69382-1-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug69382-2-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug72359-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug7342-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug7714-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug78162-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug82946-2-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug86708-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug8950-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug9123-1-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug9123-2-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug92143-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug963-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug96334-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug97383-expected.txt:
        * platform/ios-simulator/tables/mozilla/bugs/bug9879-1-expected.txt:
        * platform/ios-simulator/tables/mozilla/collapsing_borders/bug41262-3-expected.txt:
        * platform/ios-simulator/tables/mozilla/core/bloomberg-expected.txt:
        * platform/ios-simulator/tables/mozilla/core/borders-expected.txt:
        * platform/ios-simulator/tables/mozilla/core/cell_heights-expected.txt:
        * platform/ios-simulator/tables/mozilla/core/col_span-expected.txt:
        * platform/ios-simulator/tables/mozilla/core/col_widths_auto_autoFix-expected.txt:
        * platform/ios-simulator/tables/mozilla/core/col_widths_auto_autoFixPer-expected.txt:
        * platform/ios-simulator/tables/mozilla/core/col_widths_auto_fix-expected.txt:
        * platform/ios-simulator/tables/mozilla/core/col_widths_auto_fixPer-expected.txt:
        * platform/ios-simulator/tables/mozilla/core/col_widths_auto_per-expected.txt:
        * platform/ios-simulator/tables/mozilla/core/col_widths_fix_autoFix-expected.txt:
        * platform/ios-simulator/tables/mozilla/core/col_widths_fix_fix-expected.txt:
        * platform/ios-simulator/tables/mozilla/core/col_widths_fix_fixPer-expected.txt:
        * platform/ios-simulator/tables/mozilla/core/col_widths_fix_per-expected.txt:
        * platform/ios-simulator/tables/mozilla/core/margins-expected.txt:
        * platform/ios-simulator/tables/mozilla/core/misc-expected.txt:
        * platform/ios-simulator/tables/mozilla/core/nested1-expected.txt:
        * platform/ios-simulator/tables/mozilla/core/one_row-expected.txt:
        * platform/ios-simulator/tables/mozilla/core/table_frame-expected.txt:
        * platform/ios-simulator/tables/mozilla/core/table_heights-expected.txt:
        * platform/ios-simulator/tables/mozilla/core/table_rules-expected.txt:
        * platform/ios-simulator/tables/mozilla/core/table_widths-expected.txt:
        * platform/ios-simulator/tables/mozilla/dom/insertColGroups1-expected.txt:
        * platform/ios-simulator/tables/mozilla/dom/insertColGroups2-expected.txt:
        * platform/ios-simulator/tables/mozilla/dom/insertCols1-expected.txt:
        * platform/ios-simulator/tables/mozilla/dom/insertCols2-expected.txt:
        * platform/ios-simulator/tables/mozilla/dom/insertCols3-expected.txt:
        * platform/ios-simulator/tables/mozilla/dom/insertCols4-expected.txt:
        * platform/ios-simulator/tables/mozilla/dom/insertCols5-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/backgr_layers-opacity-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/backgr_position-table-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/backgr_simple-table-cell-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/backgr_simple-table-column-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/backgr_simple-table-column-group-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/backgr_simple-table-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/backgr_simple-table-row-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/backgr_simple-table-row-group-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/colgroup_span-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/colgroup_valign_baseline-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/colgroup_valign_bottom-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/colgroup_valign_middle-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/colgroup_valign_top-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/colgroup_width_pct-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/colgroup_width_px-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/table_overflow_td_dynamic_deactivate-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/table_row_align_center-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/table_row_align_left-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/table_row_align_right-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_aqua-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_aqua_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_black-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_black_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_blue-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_blue_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_fuchsia-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_fuchsia_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_gray-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_gray_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_green-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_green_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_lime-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_lime_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_maroon-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_maroon_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_navy-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_navy_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_olive-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_olive_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_purple-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_purple_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_red-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_red_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_silver-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_silver_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_teal-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_teal_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_white-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_white_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_yellow-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_bgcolor_yellow_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_cellpadding_pct-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_td_width-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_th_colspan-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_th_width-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tables_width_px-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tbody_valign_baseline-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tbody_valign_bottom-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tbody_valign_middle-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tbody_valign_top-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/td_valign_baseline-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/td_valign_bottom-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/td_valign_middle-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/td_valign_top-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tfoot_valign_baseline-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tfoot_valign_bottom-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tfoot_valign_middle-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tfoot_valign_top-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/th_valign_baseline-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/th_valign_bottom-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/th_valign_middle-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/th_valign_top-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/thead_valign_baseline-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/thead_valign_bottom-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/thead_valign_middle-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/thead_valign_top-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_bgcolor_aqua_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_bgcolor_black-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_bgcolor_black_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_bgcolor_blue-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_bgcolor_blue_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_bgcolor_fuchsia-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_bgcolor_fuchsia_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_bgcolor_gray-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_bgcolor_gray_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_bgcolor_green-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_bgcolor_green_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_bgcolor_lime-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_bgcolor_lime_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_bgcolor_maroon-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_bgcolor_maroon_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_bgcolor_navy-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_bgcolor_navy_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_bgcolor_olive-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_bgcolor_olive_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_bgcolor_purple-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_bgcolor_purple_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_bgcolor_red-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_bgcolor_red_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_bgcolor_silver-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_bgcolor_silver_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_bgcolor_teal-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_bgcolor_teal_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_bgcolor_white-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_bgcolor_white_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_bgcolor_yellow-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_bgcolor_yellow_rgb-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_valign_baseline-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_valign_bottom-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_valign_middle-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/tr_valign_top-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_col_align_char-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_col_span-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_col_valign_baseline-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_col_valign_bottom-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_col_valign_middle-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_col_valign_top-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_col_width_px-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_col_width_rel-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_colgroup_align_char-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_colgroup_span-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_colgroup_valign_baseline-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_colgroup_valign_bottom-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_colgroup_valign_middle-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_colgroup_valign_top-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_colgroup_width_rel-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_tbody_valign_baseline-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_tbody_valign_bottom-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_tbody_valign_middle-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_tbody_valign_top-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_td_align_center-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_td_align_char-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_td_align_justify-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_td_align_left-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_td_align_right-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_td_valign_baseline-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_td_valign_bottom-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_td_valign_middle-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_td_valign_top-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_td_width-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_tfoot_valign_baseline-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_tfoot_valign_bottom-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_tfoot_valign_middle-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_tfoot_valign_top-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_th_align_center-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_th_align_char-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_th_align_justify-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_th_align_left-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_th_align_right-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_th_rowspan-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_th_valign_baseline-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_th_valign_bottom-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_th_valign_middle-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_th_valign_top-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_th_width-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_thead_valign_baseline-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_thead_valign_bottom-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_thead_valign_middle-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_thead_valign_top-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_tr_align_char-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_tr_valign_baseline-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_tr_valign_bottom-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_tr_valign_middle-expected.txt:
        * platform/ios-simulator/tables/mozilla/marvin/x_tr_valign_top-expected.txt:
        * platform/ios-simulator/tables/mozilla/other/cell_widths-expected.txt:
        * platform/ios-simulator/tables/mozilla/other/ms-expected.txt:
        * platform/ios-simulator/tables/mozilla/other/nested2-expected.txt:
        * platform/ios-simulator/tables/mozilla/other/nestedTables-expected.txt:
        * platform/ios-simulator/tables/mozilla/other/slashlogo-expected.txt:
        * platform/ios-simulator/tables/mozilla/other/test3-expected.txt:
        * platform/ios-simulator/tables/mozilla/other/test6-expected.txt:
        * platform/ios-simulator/tables/mozilla/other/wa_table_thtd_rowspan-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/bugs/97619-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/bugs/bug1055-2-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/bugs/bug1128-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/bugs/bug1164-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/bugs/bug14007-1-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/bugs/bug14007-2-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/bugs/bug14159-2-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/bugs/bug1647-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/bugs/bug1725-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/bugs/bug17826-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/bugs/bug21518-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/bugs/bug22122-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/bugs/bug23847-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/bugs/bug2479-5-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/bugs/bug27993-2-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/bugs/bug29058-2-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/bugs/bug3105-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/bugs/bug56024-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/bugs/bug59252-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/bugs/bug7121-2-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/bugs/bug72393-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/bugs/bug7243-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/bugs/bug80762-2-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/bugs/bug89315-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/bugs/bug91057-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/bugs/bug9879-1-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/collapsing_borders/bug41262-1-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/core/captions1-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/core/captions2-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/core/col_span2-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/core/cols1-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/core/columns-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/core/standards1-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/dom/appendColGroup1-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/backgr_border-table-cell-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/backgr_border-table-column-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/backgr_border-table-column-group-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/backgr_border-table-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/backgr_border-table-quirks-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/backgr_border-table-row-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/backgr_border-table-row-group-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/backgr_fixed-bg-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/backgr_layers-hide-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/backgr_layers-show-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/backgr_position-table-cell-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/backgr_position-table-column-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/backgr_position-table-column-group-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/backgr_position-table-row-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/backgr_position-table-row-group-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/table_overflow_caption-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/table_overflow_caption_bottom-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/table_overflow_caption_hidden-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/table_overflow_caption_hidden_table-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/table_overflow_caption_left-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/table_overflow_caption_right-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/table_overflow_caption_top-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_table-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row_sibling-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table_caption-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody_sibling-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/table_overflow_td_align_right-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/table_overflow_td_dynamic_deactivate-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/table_overflow_td_valign_bottom-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/table_overflow_td_valign_middle-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/table_overflow_td_valign_top-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/marvin/tables_cellspacing_pct-expected.txt:
        * platform/ios-simulator/tables/mozilla_expected_failures/other/empty_cells-expected.txt:
        * platform/mac/accessibility/table-detection-expected.txt:
        * platform/mac/compositing/contents-opaque/table-parts-expected.txt:
        * platform/mac/css1/basic/containment-expected.txt:
        * platform/mac/css1/basic/contextual_selectors-expected.txt:
        * platform/mac/css1/basic/grouping-expected.txt:
        * platform/mac/css1/basic/id_as_selector-expected.txt:
        * platform/mac/css1/basic/inheritance-expected.txt:
        * platform/mac/css1/box_properties/border-expected.txt:
        * platform/mac/css1/box_properties/border_bottom-expected.txt:
        * platform/mac/css1/box_properties/border_bottom_inline-expected.txt:
        * platform/mac/css1/box_properties/border_bottom_width-expected.txt:
        * platform/mac/css1/box_properties/border_bottom_width_inline-expected.txt:
        * platform/mac/css1/box_properties/border_color-expected.txt:
        * platform/mac/css1/box_properties/border_color_inline-expected.txt:
        * platform/mac/css1/box_properties/border_inline-expected.txt:
        * platform/mac/css1/box_properties/border_left-expected.txt:
        * platform/mac/css1/box_properties/border_left_inline-expected.txt:
        * platform/mac/css1/box_properties/border_left_width-expected.txt:
        * platform/mac/css1/box_properties/border_left_width_inline-expected.txt:
        * platform/mac/css1/box_properties/border_right-expected.txt:
        * platform/mac/css1/box_properties/border_right_inline-expected.txt:
        * platform/mac/css1/box_properties/border_right_width-expected.txt:
        * platform/mac/css1/box_properties/border_right_width_inline-expected.txt:
        * platform/mac/css1/box_properties/border_style-expected.txt:
        * platform/mac/css1/box_properties/border_style_inline-expected.txt:
        * platform/mac/css1/box_properties/border_top-expected.txt:
        * platform/mac/css1/box_properties/border_top_inline-expected.txt:
        * platform/mac/css1/box_properties/border_top_width-expected.txt:
        * platform/mac/css1/box_properties/border_top_width_inline-expected.txt:
        * platform/mac/css1/box_properties/border_width-expected.txt:
        * platform/mac/css1/box_properties/border_width_inline-expected.txt:
        * platform/mac/css1/box_properties/clear-expected.txt:
        * platform/mac/css1/box_properties/clear_float-expected.txt:
        * platform/mac/css1/box_properties/float-expected.txt:
        * platform/mac/css1/box_properties/float_elements_in_series-expected.txt:
        * platform/mac/css1/box_properties/float_margin-expected.txt:
        * platform/mac/css1/box_properties/float_on_text_elements-expected.txt:
        * platform/mac/css1/box_properties/height-expected.txt:
        * platform/mac/css1/box_properties/margin-expected.txt:
        * platform/mac/css1/box_properties/margin_bottom-expected.txt:
        * platform/mac/css1/box_properties/margin_bottom_inline-expected.txt:
        * platform/mac/css1/box_properties/margin_inline-expected.txt:
        * platform/mac/css1/box_properties/margin_left-expected.txt:
        * platform/mac/css1/box_properties/margin_left_inline-expected.txt:
        * platform/mac/css1/box_properties/margin_right-expected.txt:
        * platform/mac/css1/box_properties/margin_right_inline-expected.txt:
        * platform/mac/css1/box_properties/margin_top-expected.txt:
        * platform/mac/css1/box_properties/margin_top_inline-expected.txt:
        * platform/mac/css1/box_properties/padding-expected.txt:
        * platform/mac/css1/box_properties/padding_bottom-expected.txt:
        * platform/mac/css1/box_properties/padding_bottom_inline-expected.txt:
        * platform/mac/css1/box_properties/padding_inline-expected.txt:
        * platform/mac/css1/box_properties/padding_left-expected.txt:
        * platform/mac/css1/box_properties/padding_left_inline-expected.txt:
        * platform/mac/css1/box_properties/padding_right-expected.txt:
        * platform/mac/css1/box_properties/padding_right_inline-expected.txt:
        * platform/mac/css1/box_properties/padding_top-expected.txt:
        * platform/mac/css1/box_properties/padding_top_inline-expected.txt:
        * platform/mac/css1/box_properties/width-expected.txt:
        * platform/mac/css1/cascade/cascade_order-expected.txt:
        * platform/mac/css1/cascade/important-expected.txt:
        * platform/mac/css1/classification/display-expected.txt:
        * platform/mac/css1/classification/list_style-expected.txt:
        * platform/mac/css1/classification/list_style_image-expected.txt:
        * platform/mac/css1/classification/list_style_position-expected.txt:
        * platform/mac/css1/classification/list_style_type-expected.txt:
        * platform/mac/css1/classification/white_space-expected.txt:
        * platform/mac/css1/color_and_background/background-expected.txt:
        * platform/mac/css1/color_and_background/background_attachment-expected.txt:
        * platform/mac/css1/color_and_background/background_color-expected.txt:
        * platform/mac/css1/color_and_background/background_image-expected.txt:
        * platform/mac/css1/color_and_background/background_position-expected.txt:
        * platform/mac/css1/color_and_background/background_repeat-expected.txt:
        * platform/mac/css1/color_and_background/color-expected.txt:
        * platform/mac/css1/conformance/forward_compatible_parsing-expected.txt:
        * platform/mac/css1/font_properties/font-expected.txt:
        * platform/mac/css1/font_properties/font_family-expected.txt:
        * platform/mac/css1/font_properties/font_size-expected.txt:
        * platform/mac/css1/font_properties/font_style-expected.txt:
        * platform/mac/css1/font_properties/font_variant-expected.txt:
        * platform/mac/css1/font_properties/font_weight-expected.txt:
        * platform/mac/css1/formatting_model/canvas-expected.txt:
        * platform/mac/css1/formatting_model/floating_elements-expected.txt:
        * platform/mac/css1/formatting_model/height_of_lines-expected.txt:
        * platform/mac/css1/formatting_model/inline_elements-expected.txt:
        * platform/mac/css1/formatting_model/replaced_elements-expected.txt:
        * platform/mac/css1/formatting_model/vertical_formatting-expected.txt:
        * platform/mac/css1/pseudo/anchor-expected.txt:
        * platform/mac/css1/pseudo/firstletter-expected.txt:
        * platform/mac/css1/pseudo/firstline-expected.txt:
        * platform/mac/css1/pseudo/multiple_pseudo_elements-expected.txt:
        * platform/mac/css1/pseudo/pseudo_elements_in_selectors-expected.txt:
        * platform/mac/css1/text_properties/letter_spacing-expected.txt:
        * platform/mac/css1/text_properties/line_height-expected.txt:
        * platform/mac/css1/text_properties/text_align-expected.txt:
        * platform/mac/css1/text_properties/text_decoration-expected.txt:
        * platform/mac/css1/text_properties/text_indent-expected.txt:
        * platform/mac/css1/text_properties/text_transform-expected.txt:
        * platform/mac/css1/text_properties/vertical_align-expected.txt:
        * platform/mac/css1/text_properties/word_spacing-expected.txt:
        * platform/mac/css1/units/color_units-expected.txt:
        * platform/mac/css1/units/length_units-expected.txt:
        * platform/mac/css1/units/percentage_units-expected.txt:
        * platform/mac/css1/units/urls-expected.txt:
        * platform/mac/css2.1/20110323/border-collapse-offset-002-expected.txt:
        * platform/mac/css2.1/20110323/border-conflict-style-079-expected.txt:
        * platform/mac/css2.1/20110323/border-conflict-style-088-expected.txt:
        * platform/mac/css2.1/20110323/dynamic-top-change-002-expected.txt:
        * platform/mac/css2.1/20110323/dynamic-top-change-003-expected.txt:
        * platform/mac/css2.1/20110323/inline-table-001-expected.txt:
        * platform/mac/css2.1/20110323/inline-table-003-expected.txt:
        * platform/mac/css2.1/20110323/margin-applies-to-001-expected.txt:
        * platform/mac/css2.1/20110323/margin-applies-to-002-expected.txt:
        * platform/mac/css2.1/20110323/margin-applies-to-003-expected.txt:
        * platform/mac/css2.1/20110323/margin-applies-to-004-expected.txt:
        * platform/mac/css2.1/20110323/margin-applies-to-005-expected.txt:
        * platform/mac/css2.1/20110323/margin-applies-to-006-expected.txt:
        * platform/mac/css2.1/20110323/margin-applies-to-007-expected.txt:
        * platform/mac/css2.1/20110323/margin-applies-to-013-expected.txt:
        * platform/mac/css2.1/20110323/margin-applies-to-014-expected.txt:
        * platform/mac/css2.1/20110323/margin-applies-to-015-expected.txt:
        * platform/mac/css2.1/20110323/replaced-intrinsic-ratio-001-expected.txt:
        * platform/mac/css2.1/20110323/table-caption-001-expected.txt:
        * platform/mac/css2.1/20110323/table-caption-optional-001-expected.txt:
        * platform/mac/css2.1/20110323/table-caption-optional-002-expected.txt:
        * platform/mac/css2.1/t040302-c61-ex-len-00-b-a-expected.txt:
        * platform/mac/css2.1/t0803-c5501-mrgn-t-00-b-a-expected.txt:
        * platform/mac/css2.1/t0803-c5503-mrgn-b-00-b-a-expected.txt:
        * platform/mac/css2.1/t080301-c411-vt-mrgn-00-b-expected.txt:
        * platform/mac/css2.1/t0804-c5506-padn-t-00-b-a-expected.txt:
        * platform/mac/css2.1/t0804-c5508-ipadn-b-03-b-a-expected.txt:
        * platform/mac/css2.1/t090402-c42-ibx-pad-00-d-ag-expected.txt:
        * platform/mac/css2.1/t0905-c5525-fltmult-00-d-g-expected.txt:
        * platform/mac/css2.1/t170602-bdr-conflct-w-04-d-expected.txt:
        * platform/mac/css2.1/t170602-bdr-conflct-w-06-d-expected.txt:
        * platform/mac/css2.1/t170602-bdr-conflct-w-08-d-expected.txt:
        * platform/mac/css2.1/t170602-bdr-conflct-w-13-d-expected.txt:
        * platform/mac/css2.1/t170602-bdr-conflct-w-14-d-expected.txt:
        * platform/mac/css2.1/t170602-bdr-conflct-w-16-d-expected.txt:
        * platform/mac/css2.1/t170602-bdr-conflct-w-17-d-expected.txt:
        * platform/mac/css2.1/t170602-bdr-conflct-w-18-d-expected.txt:
        * platform/mac/css2.1/t170602-bdr-conflct-w-24-d-expected.txt:
        * platform/mac/css2.1/t170602-bdr-conflct-w-25-d-expected.txt:
        * platform/mac/css2.1/t170602-bdr-conflct-w-30-d-expected.txt:
        * platform/mac/css2.1/t170602-bdr-conflct-w-31-d-expected.txt:
        * platform/mac/css2.1/t170602-bdr-conflct-w-34-d-expected.txt:
        * platform/mac/css2.1/t170602-bdr-conflct-w-44-d-expected.txt:
        * platform/mac/css2.1/t170602-bdr-conflct-w-52-d-expected.txt:
        * platform/mac/css2.1/t170602-bdr-conflct-w-54-d-expected.txt:
        * platform/mac/css2.1/t170602-bdr-conflct-w-59-d-expected.txt:
        * platform/mac/css2.1/t170602-bdr-conflct-w-64-d-expected.txt:
        * platform/mac/css2.1/t170602-bdr-conflct-w-65-d-expected.txt:
        * platform/mac/css2.1/t170602-bdr-conflct-w-70-d-expected.txt:
        * platform/mac/css2.1/t170602-bdr-conflct-w-71-d-expected.txt:
        * platform/mac/css2.1/t170602-bdr-conflct-w-74-d-expected.txt:
        * platform/mac/css2.1/t170602-bdr-conflct-w-84-d-expected.txt:
        * platform/mac/css2.1/t170602-bdr-conflct-w-85-d-expected.txt:
        * platform/mac/css2.1/t170602-bdr-conflct-w-94-d-expected.txt:
        * platform/mac/css2.1/tables/table-anonymous-objects-177-expected.txt:
        * platform/mac/css2.1/tables/table-anonymous-objects-178-expected.txt:
        * platform/mac/css2.1/tables/table-anonymous-objects-179-expected.txt:
        * platform/mac/css2.1/tables/table-anonymous-objects-180-expected.txt:
        * platform/mac/css2.1/tables/table-anonymous-objects-181-expected.txt:
        * platform/mac/css2.1/tables/table-anonymous-objects-189-expected.txt:
        * platform/mac/css2.1/tables/table-anonymous-objects-190-expected.txt:
        * platform/mac/css2.1/tables/table-anonymous-objects-191-expected.txt:
        * platform/mac/css2.1/tables/table-anonymous-objects-192-expected.txt:
        * platform/mac/css2.1/tables/table-anonymous-objects-193-expected.txt:
        * platform/mac/css2.1/tables/table-anonymous-objects-194-expected.txt:
        * platform/mac/css2.1/tables/table-anonymous-objects-195-expected.txt:
        * platform/mac/css2.1/tables/table-anonymous-objects-196-expected.txt:
        * platform/mac/css2.1/tables/table-anonymous-objects-205-expected.txt:
        * platform/mac/css2.1/tables/table-anonymous-objects-206-expected.txt:
        * platform/mac/css3/css3-modsel-33-expected.txt:
        * platform/mac/css3/selectors3/html/css3-modsel-29-expected.txt:
        * platform/mac/css3/selectors3/html/css3-modsel-29b-expected.txt:
        * platform/mac/css3/selectors3/html/css3-modsel-33-expected.txt:
        * platform/mac/css3/selectors3/html/css3-modsel-73-expected.txt:
        * platform/mac/css3/selectors3/html/css3-modsel-73b-expected.txt:
        * platform/mac/css3/selectors3/html/css3-modsel-77-expected.txt:
        * platform/mac/css3/selectors3/html/css3-modsel-77b-expected.txt:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-29-expected.txt:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-29b-expected.txt:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-33-expected.txt:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-73-expected.txt:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-73b-expected.txt:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-77-expected.txt:
        * platform/mac/css3/selectors3/xhtml/css3-modsel-77b-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-29-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-29b-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-33-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-73-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-73b-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-77-expected.txt:
        * platform/mac/css3/selectors3/xml/css3-modsel-77b-expected.txt:
        * platform/mac/editing/deleting/4922367-expected.txt:
        * platform/mac/editing/deleting/5126166-expected.txt:
        * platform/mac/editing/deleting/5144139-2-expected.txt:
        * platform/mac/editing/deleting/5206311-1-expected.txt:
        * platform/mac/editing/deleting/5433862-2-expected.txt:
        * platform/mac/editing/inserting/paragraph-separator-in-table-1-expected.txt:
        * platform/mac/editing/pasteboard/innerText-inline-table-expected.txt:
        * platform/mac/editing/selection/3690703-2-expected.txt:
        * platform/mac/editing/selection/3690703-expected.txt:
        * platform/mac/editing/selection/3690719-expected.txt:
        * platform/mac/editing/selection/5057506-2-expected.txt:
        * platform/mac/editing/selection/5057506-expected.txt:
        * platform/mac/editing/selection/5131716-1-expected.txt:
        * platform/mac/editing/selection/5131716-2-expected.txt:
        * platform/mac/editing/selection/5131716-3-expected.txt:
        * platform/mac/editing/selection/5131716-4-expected.txt:
        * platform/mac/editing/selection/move-by-line-001-expected.txt:
        * platform/mac/editing/selection/select-all-004-expected.txt:
        * platform/mac/editing/unsupported-content/table-type-after-expected.txt:
        * platform/mac/editing/unsupported-content/table-type-before-expected.txt:
        * platform/mac/fast/block/basic/016-expected.txt:
        * platform/mac/fast/block/basic/quirk-percent-height-table-cell-expected.txt:
        * platform/mac/fast/block/float/015-expected.txt:
        * platform/mac/fast/block/margin-collapse/006-expected.txt:
        * platform/mac/fast/block/margin-collapse/010-expected.txt:
        * platform/mac/fast/block/margin-collapse/011-expected.txt:
        * platform/mac/fast/block/margin-collapse/012-expected.txt:
        * platform/mac/fast/block/margin-collapse/015-expected.txt:
        * platform/mac/fast/block/margin-collapse/016-expected.txt:
        * platform/mac/fast/block/margin-collapse/017-expected.txt:
        * platform/mac/fast/block/margin-collapse/018-expected.txt:
        * platform/mac/fast/block/margin-collapse/019-expected.txt:
        * platform/mac/fast/block/margin-collapse/020-expected.txt:
        * platform/mac/fast/block/margin-collapse/021-expected.txt:
        * platform/mac/fast/block/margin-collapse/022-expected.txt:
        * platform/mac/fast/block/margin-collapse/025-expected.txt:
        * platform/mac/fast/block/margin-collapse/032-expected.txt:
        * platform/mac/fast/block/margin-collapse/033-expected.txt:
        * platform/mac/fast/block/margin-collapse/034-expected.txt:
        * platform/mac/fast/block/margin-collapse/041-expected.txt:
        * platform/mac/fast/block/margin-collapse/042-expected.txt:
        * platform/mac/fast/block/margin-collapse/055-expected.txt:
        * platform/mac/fast/block/margin-collapse/056-expected.txt:
        * platform/mac/fast/block/margin-collapse/057-expected.txt:
        * platform/mac/fast/block/margin-collapse/058-expected.txt:
        * platform/mac/fast/block/margin-collapse/059-expected.txt:
        * platform/mac/fast/block/margin-collapse/block-inside-inline/006-expected.txt:
        * platform/mac/fast/block/margin-collapse/block-inside-inline/010-expected.txt:
        * platform/mac/fast/block/margin-collapse/block-inside-inline/011-expected.txt:
        * platform/mac/fast/block/margin-collapse/block-inside-inline/012-expected.txt:
        * platform/mac/fast/block/margin-collapse/block-inside-inline/015-expected.txt:
        * platform/mac/fast/block/margin-collapse/block-inside-inline/016-expected.txt:
        * platform/mac/fast/block/margin-collapse/block-inside-inline/017-expected.txt:
        * platform/mac/fast/block/margin-collapse/block-inside-inline/018-expected.txt:
        * platform/mac/fast/block/margin-collapse/block-inside-inline/019-expected.txt:
        * platform/mac/fast/block/margin-collapse/block-inside-inline/020-expected.txt:
        * platform/mac/fast/block/margin-collapse/block-inside-inline/021-expected.txt:
        * platform/mac/fast/block/margin-collapse/block-inside-inline/022-expected.txt:
        * platform/mac/fast/block/margin-collapse/block-inside-inline/025-expected.txt:
        * platform/mac/fast/block/positioning/negative-right-pos-expected.txt:
        * platform/mac/fast/block/positioning/table-cell-static-position-expected.txt:
        * platform/mac/fast/borders/border-antialiasing-expected.txt:
        * platform/mac/fast/borders/border-radius-different-width-001-expected.txt:
        * platform/mac/fast/borders/table-borders-expected.txt:
        * platform/mac/fast/css-generated-content/first-letter-in-nested-before-expected.txt:
        * platform/mac/fast/css-generated-content/first-letter-in-nested-before-table-expected.txt:
        * platform/mac/fast/css-generated-content/nested-tables-with-before-after-content-crash-expected.txt:
        * platform/mac/fast/css-generated-content/table-cell-before-after-child-add-expected.txt:
        * platform/mac/fast/css-generated-content/table-parts-before-and-after-expected.txt:
        * platform/mac/fast/css-generated-content/table-row-group-with-before-expected.txt:
        * platform/mac/fast/css-generated-content/table-row-with-before-expected.txt:
        * platform/mac/fast/css-generated-content/table-with-before-expected.txt:
        * platform/mac/fast/css/003-expected.txt:
        * platform/mac/fast/css/absolute-poition-in-rtl-parent-expected.txt:
        * platform/mac/fast/css/acid2-expected.txt:
        * platform/mac/fast/css/acid2-pixel-expected.txt:
        * platform/mac/fast/css/bidi-override-in-anonymous-block-expected.txt:
        * platform/mac/fast/css/box-shadow-and-border-radius-expected.txt:
        * platform/mac/fast/css/caption-width-absolute-position-expected.txt:
        * platform/mac/fast/css/caption-width-absolute-position-offset-top-expected.txt:
        * platform/mac/fast/css/caption-width-fixed-position-expected.txt:
        * platform/mac/fast/css/caption-width-fixed-position-offset-top-expected.txt:
        * platform/mac/fast/css/caption-width-relative-position-expected.txt:
        * platform/mac/fast/css/caption-width-relative-position-offset-top-expected.txt:
        * platform/mac/fast/css/css3-nth-child-expected.txt:
        * platform/mac/fast/css/focus-ring-detached-expected.txt:
        * platform/mac/fast/css/focus-ring-multiline-expected.txt:
        * platform/mac/fast/css/h1-in-section-elements-expected.txt:
        * platform/mac/fast/css/image-rendering-expected.txt:
        * platform/mac/fast/css/min-width-with-spanned-cell-expected.txt:
        * platform/mac/fast/css/percentage-non-integer-expected.txt:
        * platform/mac/fast/css/table-text-align-quirk-expected.txt:
        * platform/mac/fast/css/table-text-align-strict-expected.txt:
        * platform/mac/fast/dom/34176-expected.txt:
        * platform/mac/fast/dom/HTMLTableElement/colSpan-expected.txt:
        * platform/mac/fast/dom/HTMLTableElement/createCaption-expected.txt:
        * platform/mac/fast/dom/row-inner-text-expected.txt:
        * platform/mac/fast/dynamic/001-expected.txt:
        * platform/mac/fast/dynamic/containing-block-change-expected.txt:
        * platform/mac/fast/dynamic/float-withdrawal-expected.txt:
        * platform/mac/fast/dynamic/insert-before-table-part-in-continuation-expected.txt:
        * platform/mac/fast/dynamic/subtree-table-cell-height-expected.txt:
        * platform/mac/fast/encoding/utf-16-big-endian-expected.txt:
        * platform/mac/fast/encoding/utf-16-little-endian-expected.txt:
        * platform/mac/fast/forms/001-expected.txt:
        * platform/mac/fast/forms/005-expected.txt:
        * platform/mac/fast/forms/basic-buttons-expected.txt:
        * platform/mac/fast/forms/form-element-geometry-expected.txt:
        * platform/mac/fast/forms/form-hides-table-expected.txt:
        * platform/mac/fast/forms/form-in-malformed-markup-expected.txt:
        * platform/mac/fast/forms/formmove3-expected.txt:
        * platform/mac/fast/forms/input-table-expected.txt:
        * platform/mac/fast/forms/listbox-bidi-align-expected.txt:
        * platform/mac/fast/forms/preserveFormDuringResidualStyle-expected.txt:
        * platform/mac/fast/forms/select-dirty-parent-pref-widths-expected.txt:
        * platform/mac/fast/html/details-writing-mode-expected.txt:
        * platform/mac/fast/inline-block/001-expected.txt:
        * platform/mac/fast/inline-block/overflow-clip-expected.txt:
        * platform/mac/fast/invalid/012-expected.txt:
        * platform/mac/fast/invalid/018-expected.txt:
        * platform/mac/fast/lists/004-expected.txt:
        * platform/mac/fast/lists/list-marker-before-content-table-expected.txt:
        * platform/mac/fast/multicol/span/before-child-anonymous-column-block-expected.txt:
        * platform/mac/fast/overflow/002-expected.txt:
        * platform/mac/fast/overflow/overflow-rtl-expected.txt:
        * platform/mac/fast/overflow/overflow-rtl-vertical-expected.txt:
        * platform/mac/fast/overflow/table-overflow-float-expected.txt:
        * platform/mac/fast/reflections/table-cell-expected.txt:
        * platform/mac/fast/repaint/block-selection-gap-in-table-cell-expected.txt:
        * platform/mac/fast/repaint/float-overflow-expected.txt:
        * platform/mac/fast/repaint/float-overflow-right-expected.txt:
        * platform/mac/fast/repaint/subtree-root-clip-3-expected.txt:
        * platform/mac/fast/repaint/table-cell-collapsed-border-expected.txt:
        * platform/mac/fast/repaint/table-cell-collapsed-border-scroll-expected.txt:
        * platform/mac/fast/repaint/table-cell-move-expected.txt:
        * platform/mac/fast/repaint/table-cell-overflow-expected.txt:
        * platform/mac/fast/repaint/table-cell-vertical-overflow-expected.txt:
        * platform/mac/fast/repaint/table-col-background-expected.txt:
        * platform/mac/fast/repaint/table-collapsed-border-expected.txt:
        * platform/mac/fast/repaint/table-extra-bottom-grow-expected.txt:
        * platform/mac/fast/repaint/table-outer-border-expected.txt:
        * platform/mac/fast/repaint/table-row-expected.txt:
        * platform/mac/fast/repaint/table-section-overflow-expected.txt:
        * platform/mac/fast/repaint/table-section-repaint-expected.txt:
        * platform/mac/fast/repaint/table-two-pass-layout-overpaint-expected.txt:
        * platform/mac/fast/repaint/table-writing-modes-h-expected.txt:
        * platform/mac/fast/repaint/table-writing-modes-v-expected.txt:
        * platform/mac/fast/replaced/005-expected.txt:
        * platform/mac/fast/replaced/percent-height-in-anonymous-block-in-table-expected.txt:
        * platform/mac/fast/replaced/selection-rect-in-table-cell-expected.txt:
        * platform/mac/fast/replaced/table-percent-height-positioned-expected.txt:
        * platform/mac/fast/replaced/width100percent-checkbox-expected.txt:
        * platform/mac/fast/replaced/width100percent-image-expected.txt:
        * platform/mac/fast/replaced/width100percent-menulist-expected.txt:
        * platform/mac/fast/replaced/width100percent-radio-expected.txt:
        * platform/mac/fast/replaced/width100percent-searchfield-expected.txt:
        * platform/mac/fast/replaced/width100percent-textarea-expected.txt:
        * platform/mac/fast/replaced/width100percent-textfield-expected.txt:
        * platform/mac/fast/selectors/077-expected.txt:
        * platform/mac/fast/selectors/077b-expected.txt:
        * platform/mac/fast/table/002-expected.txt:
        * platform/mac/fast/table/003-expected.txt:
        * platform/mac/fast/table/005-expected.txt:
        * platform/mac/fast/table/007-expected.txt:
        * platform/mac/fast/table/008-expected.txt:
        * platform/mac/fast/table/009-expected.txt:
        * platform/mac/fast/table/012-expected.txt:
        * platform/mac/fast/table/013-expected.txt:
        * platform/mac/fast/table/021-expected.txt:
        * platform/mac/fast/table/023-expected.txt:
        * platform/mac/fast/table/024-expected.txt:
        * platform/mac/fast/table/025-expected.txt:
        * platform/mac/fast/table/028-expected.txt:
        * platform/mac/fast/table/028-vertical-expected.txt:
        * platform/mac/fast/table/029-expected.txt:
        * platform/mac/fast/table/031-expected.txt:
        * platform/mac/fast/table/032-expected.txt:
        * platform/mac/fast/table/034-expected.txt:
        * platform/mac/fast/table/038-expected.txt:
        * platform/mac/fast/table/038-vertical-expected.txt:
        * platform/mac/fast/table/039-expected.txt:
        * platform/mac/fast/table/040-expected.txt:
        * platform/mac/fast/table/040-vertical-expected.txt:
        * platform/mac/fast/table/100-percent-cell-width-expected.txt:
        * platform/mac/fast/table/add-before-anonymous-child-expected.txt:
        * platform/mac/fast/table/border-collapsing/001-expected.txt:
        * platform/mac/fast/table/border-collapsing/001-vertical-expected.txt:
        * platform/mac/fast/table/border-collapsing/002-expected.txt:
        * platform/mac/fast/table/border-collapsing/002-vertical-expected.txt:
        * platform/mac/fast/table/border-collapsing/003-expected.txt:
        * platform/mac/fast/table/border-collapsing/003-vertical-expected.txt:
        * platform/mac/fast/table/border-collapsing/004-expected.txt:
        * platform/mac/fast/table/border-collapsing/004-vertical-expected.txt:
        * platform/mac/fast/table/border-collapsing/border-collapsing-head-foot-expected.txt:
        * platform/mac/fast/table/border-collapsing/border-collapsing-head-foot-vertical-expected.txt:
        * platform/mac/fast/table/border-collapsing/bug14274-expected.txt:
        * platform/mac/fast/table/border-collapsing/cached-69296-expected.txt:
        * platform/mac/fast/table/border-collapsing/cached-cell-append-expected.txt:
        * platform/mac/fast/table/border-collapsing/cached-cell-remove-expected.txt:
        * platform/mac/fast/table/border-collapsing/cached-change-cell-border-color-expected.txt:
        * platform/mac/fast/table/border-collapsing/cached-change-cell-border-width-expected.txt:
        * platform/mac/fast/table/border-collapsing/cached-change-cell-sl-border-color-expected.txt:
        * platform/mac/fast/table/border-collapsing/cached-change-col-border-color-expected.txt:
        * platform/mac/fast/table/border-collapsing/cached-change-col-border-width-expected.txt:
        * platform/mac/fast/table/border-collapsing/cached-change-colgroup-border-color-expected.txt:
        * platform/mac/fast/table/border-collapsing/cached-change-colgroup-border-width-expected.txt:
        * platform/mac/fast/table/border-collapsing/cached-change-row-border-color-expected.txt:
        * platform/mac/fast/table/border-collapsing/cached-change-row-border-width-expected.txt:
        * platform/mac/fast/table/border-collapsing/cached-change-table-border-color-expected.txt:
        * platform/mac/fast/table/border-collapsing/cached-change-table-border-width-expected.txt:
        * platform/mac/fast/table/border-collapsing/cached-change-tbody-border-color-expected.txt:
        * platform/mac/fast/table/border-collapsing/cached-change-tbody-border-width-expected.txt:
        * platform/mac/fast/table/border-collapsing/collapsed-borders-adjoining-sections-vertical-rl-expected.txt:
        * platform/mac/fast/table/border-collapsing/collapsed-borders-painted-once-on-inner-cells-expected.txt:
        * platform/mac/fast/table/border-collapsing/equal-precedence-resolution-expected.txt:
        * platform/mac/fast/table/border-collapsing/equal-precedence-resolution-vertical-expected.txt:
        * platform/mac/fast/table/border-collapsing/rtl-border-collapsing-expected.txt:
        * platform/mac/fast/table/border-collapsing/rtl-border-collapsing-vertical-expected.txt:
        * platform/mac/fast/table/caption-relayout-expected.txt:
        * platform/mac/fast/table/cell-absolute-child-expected.txt:
        * platform/mac/fast/table/cell-width-auto-expected.txt:
        * platform/mac/fast/table/colspan-with-all-percent-cells-expected.txt:
        * platform/mac/fast/table/colspanMinWidth-expected.txt:
        * platform/mac/fast/table/colspanMinWidth-vertical-expected.txt:
        * platform/mac/fast/table/dynamic-cellpadding-expected.txt:
        * platform/mac/fast/table/edge-offsets-expected.txt:
        * platform/mac/fast/table/empty-cells-expected.txt:
        * platform/mac/fast/table/frame-and-rules-expected.txt:
        * platform/mac/fast/table/giantRowspan-expected.txt:
        * platform/mac/fast/table/growCellForImageQuirk-expected.txt:
        * platform/mac/fast/table/growCellForImageQuirk-vertical-expected.txt:
        * platform/mac/fast/table/height-percent-test-expected.txt:
        * platform/mac/fast/table/height-percent-test-vertical-expected.txt:
        * platform/mac/fast/table/invisible-cell-background-expected.txt:
        * platform/mac/fast/table/large-width-expected.txt:
        * platform/mac/fast/table/max-width-integer-overflow-expected.txt:
        * platform/mac/fast/table/mozilla-bug10296-vertical-align-1-expected.txt:
        * platform/mac/fast/table/mozilla-bug10296-vertical-align-2-expected.txt:
        * platform/mac/fast/table/nobr-expected.txt:
        * platform/mac/fast/table/overflowHidden-expected.txt:
        * platform/mac/fast/table/percent-heights-expected.txt:
        * platform/mac/fast/table/percent-widths-stretch-expected.txt:
        * platform/mac/fast/table/percent-widths-stretch-vertical-expected.txt:
        * platform/mac/fast/table/prepend-in-anonymous-table-expected.txt:
        * platform/mac/fast/table/relative-position-containment-expected.txt:
        * platform/mac/fast/table/relative-position-offsets-expected.txt:
        * platform/mac/fast/table/relative-position-stacking-expected.txt:
        * platform/mac/fast/table/replaced-percent-height-expected.txt:
        * platform/mac/fast/table/row-height-recalc-expected.txt:
        * platform/mac/fast/table/rowspan-paint-order-expected.txt:
        * platform/mac/fast/table/rowspan-paint-order-vertical-expected.txt:
        * platform/mac/fast/table/simple_paint-expected.txt:
        * platform/mac/fast/table/spanOverlapRepaint-expected.txt:
        * platform/mac/fast/table/stale-grid-crash-expected.txt:
        * platform/mac/fast/table/table-anonymous-cell-bug-expected.txt:
        * platform/mac/fast/table/table-anonymous-row-bug-expected.txt:
        * platform/mac/fast/table/table-anonymous-section-bug-expected.txt:
        * platform/mac/fast/table/table-before-child-style-update-expected.txt:
        * platform/mac/fast/table/table-cell-before-after-content-around-table-block-expected.txt:
        * platform/mac/fast/table/table-cell-before-after-content-around-table-expected.txt:
        * platform/mac/fast/table/table-cell-before-after-content-around-table-row-expected.txt:
        * platform/mac/fast/table/table-cell-before-child-in-table-expected.txt:
        * platform/mac/fast/table/table-cell-split-expected.txt:
        * platform/mac/fast/table/table-display-types-expected.txt:
        * platform/mac/fast/table/table-display-types-strict-expected.txt:
        * platform/mac/fast/table/table-display-types-vertical-expected.txt:
        * platform/mac/fast/table/table-insert-before-non-anonymous-block-expected.txt:
        * platform/mac/fast/table/table-row-before-after-content-around-block-expected.txt:
        * platform/mac/fast/table/table-row-before-after-content-around-table-cell-expected.txt:
        * platform/mac/fast/table/table-row-before-after-content-around-table-expected.txt:
        * platform/mac/fast/table/table-row-before-child-style-update-expected.txt:
        * platform/mac/fast/table/table-row-outline-paint-expected.txt:
        * platform/mac/fast/table/table-row-split2-expected.txt:
        * platform/mac/fast/table/table-row-style-not-updated-expected.txt:
        * platform/mac/fast/table/table-row-style-not-updated-with-after-content-expected.txt:
        * platform/mac/fast/table/table-row-style-not-updated-with-before-content-expected.txt:
        * platform/mac/fast/table/table-section-split2-expected.txt:
        * platform/mac/fast/table/table-split-expected.txt:
        * platform/mac/fast/table/table-split2-expected.txt:
        * platform/mac/fast/table/table-style-not-updated-expected.txt:
        * platform/mac/fast/table/wide-colspan-expected.txt:
        * platform/mac/fast/table/wide-column-expected.txt:
        * platform/mac/fast/text/atsui-negative-spacing-features-expected.txt:
        * platform/mac/fast/text/atsui-spacing-features-expected.txt:
        * platform/mac/fast/text/basic/generic-family-reset-expected.txt:
        * platform/mac/fast/text/international/003-expected.txt:
        * platform/mac/fast/text/international/bidi-LDB-2-CSS-expected.txt:
        * platform/mac/fast/text/international/bidi-LDB-2-HTML-expected.txt:
        * platform/mac/fast/text/international/bidi-LDB-2-formatting-characters-expected.txt:
        * platform/mac/fast/text/international/bidi-override-expected.txt:
        * platform/mac/fast/text/wbr-expected.txt:
        * platform/mac/fast/text/whitespace/002-expected.txt:
        * platform/mac/fast/text/whitespace/003-expected.txt:
        * platform/mac/fast/text/whitespace/004-expected.txt:
        * platform/mac/fast/text/whitespace/005-expected.txt:
        * platform/mac/fast/text/whitespace/010-expected.txt:
        * platform/mac/fast/text/whitespace/011-expected.txt:
        * platform/mac/fast/text/whitespace/013-expected.txt:
        * platform/mac/fast/text/whitespace/014-expected.txt:
        * platform/mac/fast/text/whitespace/015-expected.txt:
        * platform/mac/fast/text/whitespace/016-expected.txt:
        * platform/mac/fast/text/whitespace/025-expected.txt:
        * platform/mac/fast/text/whitespace/026-expected.txt:
        * platform/mac/fast/writing-mode/table-percent-width-quirk-expected.txt:
        * platform/mac/fast/writing-mode/vertical-align-table-baseline-expected.txt:
        * platform/mac/http/tests/misc/acid2-expected.txt:
        * platform/mac/http/tests/misc/acid2-pixel-expected.txt:
        * platform/mac/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.txt:
        * platform/mac/ietestcenter/css3/bordersbackgrounds/background_properties_greater_than_images-expected.txt:
        * platform/mac/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-006-expected.txt:
        * platform/mac/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-007-expected.txt:
        * platform/mac/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-008-expected.txt:
        * platform/mac/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-009-expected.txt:
        * platform/mac/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-011-expected.txt:
        * platform/mac/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-012-expected.txt:
        * platform/mac/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-013-expected.txt:
        * platform/mac/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-014-expected.txt:
        * platform/mac/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-015-expected.txt:
        * platform/mac/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-016-expected.txt:
        * platform/mac/ietestcenter/css3/bordersbackgrounds/border-radius-different-width-001-expected.txt:
        * platform/mac/ietestcenter/css3/bordersbackgrounds/border-radius-shorthand-001-expected.txt:
        * platform/mac/ietestcenter/css3/bordersbackgrounds/border-radius-sum-of-radii-001-expected.txt:
        * platform/mac/ietestcenter/css3/bordersbackgrounds/border-radius-sum-of-radii-002-expected.txt:
        * platform/mac/ietestcenter/css3/bordersbackgrounds/border-top-left-radius-values-004-expected.txt:
        * platform/mac/ietestcenter/css3/bordersbackgrounds/border-top-right-radius-values-004-expected.txt:
        * platform/mac/ietestcenter/css3/bordersbackgrounds/none-as-image-layer-expected.txt:
        * platform/mac/svg/custom/scrolling-embedded-svg-file-image-repaint-problem-expected.txt:
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.txt:
        * platform/mac/svg/zoom/page/zoom-svg-through-object-with-absolute-size-expected.txt:
        * platform/mac/tables/layering/paint-test-layering-1-expected.txt:
        * platform/mac/tables/layering/paint-test-layering-2-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug10009-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug101201-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug101674-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug10296-1-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug1055-1-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug10565-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug10633-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug1067-1-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug1067-2-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug106795-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug106816-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug113235-1-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug113424-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug1163-1-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug1188-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug12008-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug120107-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug120364-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug1224-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug12268-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug12709-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug1271-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug12908-1-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug12908-2-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug12910-2-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug1296-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug1302-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug13169-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug1318-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug137388-1-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug137388-2-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug137388-3-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug139524-1-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug139524-2-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug139524-3-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug139524-4-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug1430-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug14323-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug1474-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug14929-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug15247-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug154780-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug15544-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug159108-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug15933-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug16012-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug16252-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug17138-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug175455-4-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug17548-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug17587-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug1800-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug1802-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug1802s-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug1809-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug18440-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug18664-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug18955-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug19061-1-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug19061-2-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug19356-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug20804-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug2123-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug215629-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug219693-1-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug219693-2-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug22019-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug220536-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug222336-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug22246-3-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug22246-3a-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug22513-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug2296-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug23235-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug24200-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug2479-2-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug2479-3-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug25004-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug25074-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug25663-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug26553-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug2684-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug269566-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug277062-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug2773-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug27993-1-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug2886-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug28933-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug29058-1-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug29314-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug29429-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug2954-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug2981-1-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug2981-2-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug2997-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug30273-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug30559-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug3103-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug32205-3-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug3260-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug32841-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug33137-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug33855-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug3454-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug38916-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug3977-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug4093-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug42187-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug4385-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug4427-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug44505-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug4501-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug4527-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug45350-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug45486-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug4576-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug46268-1-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug46268-2-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug46368-1-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug46623-1-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug46623-2-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug47432-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug4803-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug4849-2-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug4849-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug51727-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug5188-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug52505-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug52506-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug53690-1-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug53690-2-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug53891-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug5538-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug55789-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug56201-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug57828-2-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug5797-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug5835-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug60804-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug60807-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug6184-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug6304-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug6404-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug647-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug6674-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug68998-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug69382-1-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug69382-2-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug72359-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug7342-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug7714-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug78162-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug82946-2-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug86708-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug8950-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug9123-1-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug9123-2-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug92143-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug92647-2-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug963-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug96334-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug97383-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug9879-1-expected.txt:
        * platform/mac/tables/mozilla/collapsing_borders/bug41262-3-expected.txt:
        * platform/mac/tables/mozilla/core/bloomberg-expected.txt:
        * platform/mac/tables/mozilla/core/borders-expected.txt:
        * platform/mac/tables/mozilla/core/cell_heights-expected.txt:
        * platform/mac/tables/mozilla/core/col_span-expected.txt:
        * platform/mac/tables/mozilla/core/col_widths_auto_autoFix-expected.txt:
        * platform/mac/tables/mozilla/core/col_widths_auto_autoFixPer-expected.txt:
        * platform/mac/tables/mozilla/core/col_widths_auto_fix-expected.txt:
        * platform/mac/tables/mozilla/core/col_widths_auto_fixPer-expected.txt:
        * platform/mac/tables/mozilla/core/col_widths_auto_per-expected.txt:
        * platform/mac/tables/mozilla/core/col_widths_fix_autoFix-expected.txt:
        * platform/mac/tables/mozilla/core/col_widths_fix_fix-expected.txt:
        * platform/mac/tables/mozilla/core/col_widths_fix_fixPer-expected.txt:
        * platform/mac/tables/mozilla/core/col_widths_fix_per-expected.txt:
        * platform/mac/tables/mozilla/core/margins-expected.txt:
        * platform/mac/tables/mozilla/core/misc-expected.txt:
        * platform/mac/tables/mozilla/core/nested1-expected.txt:
        * platform/mac/tables/mozilla/core/one_row-expected.txt:
        * platform/mac/tables/mozilla/core/table_frame-expected.txt:
        * platform/mac/tables/mozilla/core/table_heights-expected.txt:
        * platform/mac/tables/mozilla/core/table_rules-expected.txt:
        * platform/mac/tables/mozilla/core/table_widths-expected.txt:
        * platform/mac/tables/mozilla/dom/insertColGroups1-expected.txt:
        * platform/mac/tables/mozilla/dom/insertColGroups2-expected.txt:
        * platform/mac/tables/mozilla/dom/insertCols1-expected.txt:
        * platform/mac/tables/mozilla/dom/insertCols2-expected.txt:
        * platform/mac/tables/mozilla/dom/insertCols3-expected.txt:
        * platform/mac/tables/mozilla/dom/insertCols4-expected.txt:
        * platform/mac/tables/mozilla/dom/insertCols5-expected.txt:
        * platform/mac/tables/mozilla/marvin/backgr_layers-opacity-expected.txt:
        * platform/mac/tables/mozilla/marvin/backgr_position-table-expected.txt:
        * platform/mac/tables/mozilla/marvin/backgr_simple-table-cell-expected.txt:
        * platform/mac/tables/mozilla/marvin/backgr_simple-table-column-expected.txt:
        * platform/mac/tables/mozilla/marvin/backgr_simple-table-column-group-expected.txt:
        * platform/mac/tables/mozilla/marvin/backgr_simple-table-expected.txt:
        * platform/mac/tables/mozilla/marvin/backgr_simple-table-row-expected.txt:
        * platform/mac/tables/mozilla/marvin/backgr_simple-table-row-group-expected.txt:
        * platform/mac/tables/mozilla/marvin/body_thead-expected.txt:
        * platform/mac/tables/mozilla/marvin/colgroup_align_center-expected.txt:
        * platform/mac/tables/mozilla/marvin/colgroup_align_justify-expected.txt:
        * platform/mac/tables/mozilla/marvin/colgroup_align_left-expected.txt:
        * platform/mac/tables/mozilla/marvin/colgroup_align_right-expected.txt:
        * platform/mac/tables/mozilla/marvin/colgroup_span-expected.txt:
        * platform/mac/tables/mozilla/marvin/colgroup_valign_baseline-expected.txt:
        * platform/mac/tables/mozilla/marvin/colgroup_valign_bottom-expected.txt:
        * platform/mac/tables/mozilla/marvin/colgroup_valign_middle-expected.txt:
        * platform/mac/tables/mozilla/marvin/colgroup_valign_top-expected.txt:
        * platform/mac/tables/mozilla/marvin/colgroup_width_pct-expected.txt:
        * platform/mac/tables/mozilla/marvin/colgroup_width_px-expected.txt:
        * platform/mac/tables/mozilla/marvin/table_overflow_hidden_td-expected.txt:
        * platform/mac/tables/mozilla/marvin/table_overflow_td_dynamic_deactivate-expected.txt:
        * platform/mac/tables/mozilla/marvin/table_row_align_center-expected.txt:
        * platform/mac/tables/mozilla/marvin/table_row_align_left-expected.txt:
        * platform/mac/tables/mozilla/marvin/table_row_align_right-expected.txt:
        * platform/mac/tables/mozilla/marvin/table_rules_groups-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_aqua-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_aqua_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_black-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_black_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_blue-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_blue_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_fuchsia-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_fuchsia_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_gray-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_gray_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_green-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_green_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_lime-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_lime_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_maroon-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_maroon_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_navy-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_navy_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_olive-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_olive_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_purple-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_purple_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_red-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_red_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_silver-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_silver_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_teal-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_teal_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_white-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_white_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_yellow-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_bgcolor_yellow_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_cellpadding_pct-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_td_width-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_th_width-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_width_percent-expected.txt:
        * platform/mac/tables/mozilla/marvin/tables_width_px-expected.txt:
        * platform/mac/tables/mozilla/marvin/tbody_valign_baseline-expected.txt:
        * platform/mac/tables/mozilla/marvin/tbody_valign_bottom-expected.txt:
        * platform/mac/tables/mozilla/marvin/tbody_valign_middle-expected.txt:
        * platform/mac/tables/mozilla/marvin/tbody_valign_top-expected.txt:
        * platform/mac/tables/mozilla/marvin/td_valign_baseline-expected.txt:
        * platform/mac/tables/mozilla/marvin/td_valign_bottom-expected.txt:
        * platform/mac/tables/mozilla/marvin/td_valign_middle-expected.txt:
        * platform/mac/tables/mozilla/marvin/td_valign_top-expected.txt:
        * platform/mac/tables/mozilla/marvin/tfoot_valign_baseline-expected.txt:
        * platform/mac/tables/mozilla/marvin/tfoot_valign_bottom-expected.txt:
        * platform/mac/tables/mozilla/marvin/tfoot_valign_middle-expected.txt:
        * platform/mac/tables/mozilla/marvin/tfoot_valign_top-expected.txt:
        * platform/mac/tables/mozilla/marvin/th_valign_baseline-expected.txt:
        * platform/mac/tables/mozilla/marvin/th_valign_bottom-expected.txt:
        * platform/mac/tables/mozilla/marvin/th_valign_middle-expected.txt:
        * platform/mac/tables/mozilla/marvin/th_valign_top-expected.txt:
        * platform/mac/tables/mozilla/marvin/thead_valign_baseline-expected.txt:
        * platform/mac/tables/mozilla/marvin/thead_valign_bottom-expected.txt:
        * platform/mac/tables/mozilla/marvin/thead_valign_middle-expected.txt:
        * platform/mac/tables/mozilla/marvin/thead_valign_top-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_bgcolor_aqua_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_bgcolor_black-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_bgcolor_black_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_bgcolor_blue-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_bgcolor_blue_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_bgcolor_fuchsia-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_bgcolor_fuchsia_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_bgcolor_gray-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_bgcolor_gray_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_bgcolor_green-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_bgcolor_green_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_bgcolor_lime-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_bgcolor_lime_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_bgcolor_maroon-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_bgcolor_maroon_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_bgcolor_navy-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_bgcolor_navy_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_bgcolor_olive-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_bgcolor_olive_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_bgcolor_purple-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_bgcolor_purple_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_bgcolor_red-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_bgcolor_red_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_bgcolor_silver-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_bgcolor_silver_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_bgcolor_teal-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_bgcolor_teal_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_bgcolor_white-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_bgcolor_white_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_bgcolor_yellow-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_bgcolor_yellow_rgb-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_valign_baseline-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_valign_bottom-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_valign_middle-expected.txt:
        * platform/mac/tables/mozilla/marvin/tr_valign_top-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_col_align_char-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_col_span-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_col_valign_baseline-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_col_valign_bottom-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_col_valign_middle-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_col_valign_top-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_col_width_px-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_col_width_rel-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_colgroup_align_char-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_colgroup_span-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_colgroup_valign_baseline-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_colgroup_valign_bottom-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_colgroup_valign_middle-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_colgroup_valign_top-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_colgroup_width_rel-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_tbody_valign_baseline-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_tbody_valign_bottom-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_tbody_valign_middle-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_tbody_valign_top-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_td_align_center-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_td_align_char-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_td_align_justify-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_td_align_left-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_td_align_right-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_td_valign_baseline-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_td_valign_bottom-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_td_valign_middle-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_td_valign_top-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_td_width-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_tfoot_valign_baseline-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_tfoot_valign_bottom-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_tfoot_valign_middle-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_tfoot_valign_top-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_th_align_center-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_th_align_char-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_th_align_justify-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_th_align_left-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_th_align_right-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_th_rowspan-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_th_valign_baseline-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_th_valign_bottom-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_th_valign_middle-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_th_valign_top-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_th_width-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_thead_valign_baseline-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_thead_valign_bottom-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_thead_valign_middle-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_thead_valign_top-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_tr_align_char-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_tr_valign_baseline-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_tr_valign_bottom-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_tr_valign_middle-expected.txt:
        * platform/mac/tables/mozilla/marvin/x_tr_valign_top-expected.txt:
        * platform/mac/tables/mozilla/other/cell_widths-expected.txt:
        * platform/mac/tables/mozilla/other/ms-expected.txt:
        * platform/mac/tables/mozilla/other/nested2-expected.txt:
        * platform/mac/tables/mozilla/other/nestedTables-expected.txt:
        * platform/mac/tables/mozilla/other/slashlogo-expected.txt:
        * platform/mac/tables/mozilla/other/test3-expected.txt:
        * platform/mac/tables/mozilla/other/test6-expected.txt:
        * platform/mac/tables/mozilla/other/wa_table_thtd_rowspan-expected.txt:
        * platform/mac/tables/mozilla/other/wa_table_tr_align-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/97619-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/bug1010-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/bug1055-2-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/bug1128-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/bug1164-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/bug128876-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/bug14007-1-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/bug14007-2-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/bug1647-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/bug1725-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/bug17826-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/bug21518-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/bug22122-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/bug23847-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/bug2479-5-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/bug27993-2-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/bug29058-2-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/bug3105-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/bug56024-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/bug59252-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/bug7121-2-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/bug72393-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/bug7243-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/bug80762-2-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/bug8499-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/bug85016-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/bug89315-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/bug91057-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/bugs/bug9879-1-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/collapsing_borders/bug41262-1-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/core/captions1-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/core/captions2-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/core/col_span2-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/core/cols1-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/core/columns-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/core/standards1-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/dom/appendColGroup1-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/backgr_border-table-cell-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/backgr_border-table-column-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/backgr_border-table-column-group-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/backgr_border-table-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/backgr_border-table-quirks-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/backgr_border-table-row-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/backgr_border-table-row-group-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/backgr_fixed-bg-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/backgr_layers-hide-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/backgr_layers-show-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/backgr_position-table-cell-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/backgr_position-table-column-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/backgr_position-table-column-group-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/backgr_position-table-row-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/backgr_position-table-row-group-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/table_overflow_caption-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/table_overflow_caption_bottom-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/table_overflow_caption_hidden-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/table_overflow_caption_hidden_table-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/table_overflow_caption_left-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/table_overflow_caption_right-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/table_overflow_caption_top-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_table-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/table_overflow_hidden_table-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/table_overflow_hidden_tbody-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/table_overflow_hidden_tr-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell_sibling-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row_sibling-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table_caption-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody_sibling-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/table_overflow_td_align_right-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/table_overflow_td_dynamic_deactivate-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/table_overflow_td_valign_bottom-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/table_overflow_td_valign_middle-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/table_overflow_td_valign_top-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/marvin/tables_cellspacing_pct-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/other/empty_cells-expected.txt:
        * platform/mac/tables/mozilla_expected_failures/other/test4-expected.txt:

2016-01-27  Chris Dumez  <cdumez@apple.com>

        Expose ValidityState on the global Window object
        https://bugs.webkit.org/show_bug.cgi?id=153582

        Reviewed by Antti Koivisto.

        Rebaseline test now that ValidityState is exposed on the global Window
        object.

        * js/dom/global-constructors-attributes-expected.txt:
        * platform/efl/js/dom/global-constructors-attributes-expected.txt:
        * platform/gtk/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac-mavericks/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac/js/dom/global-constructors-attributes-expected.txt:
        * platform/win/js/dom/global-constructors-attributes-expected.txt:

2016-01-27  Chris Dumez  <cdumez@apple.com>

        Expose ApplicationCache on the global Window object
        https://bugs.webkit.org/show_bug.cgi?id=153578

        Reviewed by Antti Koivisto.

        Rebaseline test now that ApplicationCache is exposed on the global
        Window object.

        * js/dom/global-constructors-attributes-expected.txt:
        * platform/efl/js/dom/global-constructors-attributes-expected.txt:
        * platform/gtk/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac-mavericks/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac/js/dom/global-constructors-attributes-expected.txt:
        * platform/win/js/dom/global-constructors-attributes-expected.txt:

2016-01-27  Ryosuke Niwa  <rniwa@webkit.org>

        REGRESSION(r190430): Assertion failure in Text::~Text()
        https://bugs.webkit.org/show_bug.cgi?id=153577

        Reviewed by Antti Koivisto.

        Added a regression test. The test hits an assertion in debug build without the fix.

        * fast/shadow-dom/slot-removal-crash-2-expected.txt: Added.
        * fast/shadow-dom/slot-removal-crash-2.html: Added.

2016-01-27  Said Abou-Hallawa  <sabouhallawa@apple.com>

        Garbage is displayed when root svg element has mix-blend-mode set
        https://bugs.webkit.org/show_bug.cgi?id=150556

        Reviewed by Darin Adler.

        Ensure blending the SVG root renderer will be displayed correctly with
        compositing when the SVG root renderer is the root of the render tree.

        * svg/css/mix-blend-mode-background-root-expected.svg: Added.
        * svg/css/mix-blend-mode-background-root.svg: Added.
        * svg/css/mix-blend-mode-opacity-root-expected.svg: Added.
        * svg/css/mix-blend-mode-opacity-root.svg: Added.

2016-01-27  Brady Eidson  <beidson@apple.com>

        Modern IDB: Incorrect handling of iterating cursors to their end.
        https://bugs.webkit.org/show_bug.cgi?id=153569

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2016-01-27  Zhuo Li  <zachli@apple.com>

        Layout Test fast/forms/auto-fill-button/input-contacts-auto-fill-button.html is failing.
        https://bugs.webkit.org/show_bug.cgi?id=153567.

        Unreviewed test gardening.

        Update expected test results for ios-simulator, win, and gtk.

        * platform/gtk/fast/forms/auto-fill-button/input-contacts-auto-fill-button-expected.txt: Added.
        * platform/ios-simulator/fast/forms/auto-fill-button/input-contacts-auto-fill-button-expected.txt: Added.
        * platform/win/fast/forms/auto-fill-button/input-contacts-auto-fill-button-expected.txt: Added.

2016-01-27  Chris Dumez  <cdumez@apple.com>

        Settings a reflected DOMString attribute to null should set it to the "null" string rather than the empty string
        https://bugs.webkit.org/show_bug.cgi?id=153504
        <rdar://problem/24353072>

        Reviewed by Ryosuke Niwa.

        Update existing tests as a lot of them were expecting that setting
        a reflected DOMString attribute to null would set it to the empty
        string instead of the string "null".

        * fast/dom/domstring-attribute-reflection-expected.txt:
        * fast/dom/domstring-attribute-reflection.html:
        * fast/dom/element-attribute-js-null-expected.txt:
        * fast/dom/element-attribute-js-null.html:
        * fast/dom/ping-attribute-dom-binding-expected.txt:
        * fast/dom/ping-attribute-dom-binding.html:
        * fast/forms/fieldset/fieldset-name-expected.txt:
        * fast/forms/fieldset/fieldset-name.html:
        * fast/forms/input-minmax-expected.txt:
        * fast/forms/input-minmax.html:
        * fast/forms/input-pattern-expected.txt:
        * fast/forms/input-pattern.html:
        * fast/forms/submit-form-attributes-expected.txt:
        * fast/forms/submit-form-attributes.html:
        * fast/shadow-dom/HTMLSlotElement-interface.html:
        * fast/shadow-dom/NonDocumentTypeChildNode-interface-assignedSlot.html:
        * fast/shadow-dom/shadow-layout-after-slot-changes.html:
        * svg/dom/svg-element-attribute-js-null-expected.txt:
        * svg/dom/svg-element-attribute-js-null.xhtml:

2016-01-27  Simon Fraser  <simon.fraser@apple.com>

        Support CSS3 Images values for the image-rendering property
        https://bugs.webkit.org/show_bug.cgi?id=153556

        Reviewed by Dean Jackson.

        Update for new values. Add a new SVG shape-rendering test which would have
        detected a bug I caused with an earlier patch.

        * fast/css/image-rendering-parsing-expected.txt:
        * fast/css/script-tests/image-rendering-parsing.js:
        * svg/css/script-tests/shape-rendering-parsing.js: Added.
        * svg/css/shape-rendering-parsing.html: Added.

2016-01-27  Brady Eidson  <beidson@apple.com>

        Modern IDB: Fix many Index tests.
        https://bugs.webkit.org/show_bug.cgi?id=153561

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2016-01-27  Brady Eidson  <beidson@apple.com>

        Modern IDB: Cursors are utterly broken in the SQLite backend.
        https://bugs.webkit.org/show_bug.cgi?id=153558

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2016-01-27  Chris Dumez  <cdumez@apple.com>

        Getting / Setting property on prototype object must throw TypeError
        https://bugs.webkit.org/show_bug.cgi?id=153547
        <rdar://problem/24370650>

        Reviewed by Ryosuke Niwa.

        Update a few layout tests that were expecting getting a property on
        the prototype object to return undefined instead of throwing.

        * js/dom/dom-as-prototype-assignment-exception-expected.txt:
        * js/dom/dom-attributes-on-mismatch-type-expected.txt:
        * js/dom/dom-attributes-on-mismatch-type.html:
        * js/dom/script-tests/dom-as-prototype-assignment-exception.js:

2016-01-27  Chris Dumez  <cdumez@apple.com>

        window.atob() should ignore spaces in input
        https://bugs.webkit.org/show_bug.cgi?id=153522
        <rdar://problem/24357822>

        Reviewed by Benjamin Poulain.

        Update window.atob() test to cover cases with spaces in
        input.

        * fast/dom/Window/atob-btoa-expected.txt:
        * fast/dom/Window/atob-btoa.html:

2016-01-27  Brady Eidson  <beidson@apple.com>

        Modern IDB: SQLite backend doesn't update index records as object records are added.
        https://bugs.webkit.org/show_bug.cgi?id=153548

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2016-01-27  Brady Eidson  <beidson@apple.com>

        LayoutTest fast/loader/stateobjects/replacestate-frequency-iframe.html is flaky on El Cap, always times out on Yosemite.
        https://bugs.webkit.org/show_bug.cgi?id=153551
        
        Unreviewed.

        The iframe file name is "replacestate-iframe.html", but the main frame src refers to "replaceState-iframe.html"
        
        Notice the case difference on the 'S'.
        
        Apparently some of our bots have case sensitive filesystems, and others do not.
          
        * fast/loader/stateobjects/replacestate-frequency-iframe.html: 

2016-01-27  Brady Eidson  <beidson@apple.com>

        Noticed while exploring:
        LayoutTest fast/loader/stateobjects/replacestate-frequency-iframe.html is flaky on El Cap, always times out on Yosemite.
        https://bugs.webkit.org/show_bug.cgi?id=153551

        Unreviewed gardening.

        Probably won't fix anything, but hey, let's try.

        * fast/loader/stateobjects/replacestate-frequency-iframe-expected.txt:
        * fast/loader/stateobjects/replacestate-frequency-iframe.html:

2016-01-27  Zhuo Li  <zachli@apple.com>

        Need ability to specify alternate image for AutoFill button in input fields.
        https://bugs.webkit.org/show_bug.cgi?id=153116.
        rdar://problem/23384854.

        Reviewed by Darin Adler.

        * fast/forms/auto-fill-button/hide-auto-fill-button-when-input-becomes-disabled.html: The test API has
        another parameter to specify what type the AutoFill button is.
        * fast/forms/auto-fill-button/hide-auto-fill-button-when-input-becomes-readonly.html: Ditto.
        * fast/forms/auto-fill-button/input-contacts-auto-fill-button-expected.txt: Added.
        * fast/forms/auto-fill-button/input-contacts-auto-fill-button.html: Added.
        * fast/forms/auto-fill-button/input-auto-fill-button.html: Ditto.
        * fast/forms/auto-fill-button/input-disabled-auto-fill-button.html: Ditto.
        * fast/forms/auto-fill-button/input-readonly-non-empty-auto-fill-button.html: Ditto.
        * fast/forms/auto-fill-button/mouse-down-input-mouse-release-auto-fill-button.html: Ditto.
        * fast/forms/auto-fill-button/show-correct-auto-fill-button-when-auto-fill-button-type-changes-expected.html: Added.
        * fast/forms/auto-fill-button/show-correct-auto-fill-button-when-auto-fill-button-type-changes.html: Added.

2016-01-26  Ryosuke Niwa  <rniwa@webkit.org>

        Add Node.treeRoot
        https://bugs.webkit.org/show_bug.cgi?id=153537

        Reviewed by Antti Koivisto.

        Added a testharness.js test for Node.treeRoot. Also rebaselined a test.

        * js/dom/dom-static-property-for-in-iteration-expected.txt: Rebaselined.
        * fast/shadow-dom/Node-interface-treeRoot-expected.txt: Added.
        * fast/shadow-dom/Node-interface-treeRoot.html: Added.

2016-01-26  Ryosuke Niwa  <rniwa@webkit.org>

        Rename HTMLSlotElement.getDistributedNodes to getAssignedNodes
        https://bugs.webkit.org/show_bug.cgi?id=153534

        Reviewed by Antti Koivisto.

        Updated the tests to refect the rename. Also added test cases after r192763
        to assert we don't assign comment and processing instruction nodes to a slot.

        * fast/shadow-dom/HTMLSlotElement-interface-expected.txt:
        * fast/shadow-dom/HTMLSlotElement-interface.html:
        * fast/shadow-dom/NonDocumentTypeChildNode-interface-assignedSlot.html:

2016-01-27  Tim Horton  <timothy_horton@apple.com>

        Need to be able to specify MIME type for <attachment> without filename or handle
        https://bugs.webkit.org/show_bug.cgi?id=153552
        <rdar://problem/20145857>

        Reviewed by Anders Carlsson.

        * fast/attachment/attachment-default-icon-expected.html: Added.
        * fast/attachment/attachment-default-icon.html: Added.
        * fast/attachment/attachment-type-attribute-expected.html: Added.
        * fast/attachment/attachment-type-attribute.html: Added.
        Add some tests.

2016-01-27  Xabier Rodriguez Calvar  <calvaris@igalia.com> and Youenn Fablet  <youenn.fablet@crf.canon.fr>

        [GTK] Problem running promises code in workers
        https://bugs.webkit.org/show_bug.cgi?id=152340

        Reviewed by Carlos Garcia Campos.

        Test file that creates two testharness promise tests. Each test creates 10000 promises, pushes them into an
        array and vends them in a timeout.

        * js/promises-tests/promises-in-workers-expected.txt: Added.
        * js/promises-tests/promises-in-workers.html: Added.
        * js/promises-tests/promises-in-workers.js: Added.

2016-01-26  Jer Noble  <jer.noble@apple.com>

        Calling video.controls=true during a scrub operation cancels scrub.
        https://bugs.webkit.org/show_bug.cgi?id=153494

        Reviewed by Eric Carlson.

        * media/media-controls-drag-timeline-set-controls-property-expected.txt: Added.
        * media/media-controls-drag-timeline-set-controls-property.html: Added.

2016-01-26  Chris Dumez  <cdumez@apple.com>

        fast/history/page-cache-webdatabase-no-transaction-db.html flakily crashes
        https://bugs.webkit.org/show_bug.cgi?id=153525

        Reviewed by Andreas Kling.

        Unskip fast/history/page-cache-webdatabase-no-transaction-db.html now
        that it no longer crashes.

        * TestExpectations:

2016-01-26  Brady Eidson  <beidson@apple.com>

        Modern IDB: Key generator support for SQLite backend.
        https://bugs.webkit.org/show_bug.cgi?id=153427

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2016-01-26  Simon Fraser  <simon.fraser@apple.com>

        Allow canvas to use display-list drawing for testing
        https://bugs.webkit.org/show_bug.cgi?id=153475

        Reviewed by Dean Jackson.

        Simple canvas-based display list test.

        * displaylists/canvas-display-list-expected.txt: Added.
        * displaylists/canvas-display-list.html: Added.

2016-01-26  Chris Dumez  <cdumez@apple.com>

        Setting HTMLInputElement.value to null to set its value to the empty string
        https://bugs.webkit.org/show_bug.cgi?id=153519

        Reviewed by Ryosuke Niwa.

        Add a layout test to make sure that setting HTMLInputElement.value to null
        actually sets its value to the empty string.

        * fast/dom/HTMLInputElement/input-value-set-null-expected.txt: Added.
        * fast/dom/HTMLInputElement/input-value-set-null.html: Added.

2016-01-26  Chris Dumez  <cdumez@apple.com>

        Unreviewed, temporarily skip fast/history/page-cache-webdatabase-no-transaction-db.html
        https://bugs.webkit.org/show_bug.cgi?id=153525

        The test flakily crashes, skip it until I can fix it.

        * TestExpectations:

2016-01-26  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline imported/w3c/web-platform-tests/html/semantics/interfaces.html for ios-simulator after support 
        for HTMLDataElement was added in r195627, removing ios-simulator-wk2 specific result.
        https://bugs.webkit.org/show_bug.cgi?id=153459

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/imported/w3c/web-platform-tests/html/semantics/interfaces-expected.txt: Removed.
        * platform/ios-simulator/imported/w3c/web-platform-tests/html/semantics/interfaces-expected.txt:

2016-01-26  Ryan Haddad  <ryanhaddad@apple.com>

        Skipping tests added with r195625 that are unsupported on ios-simulator

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-01-26  Chris Dumez  <cdumez@apple.com>

        document.open() / write() should be prevented in beforeunload event handlers
        https://bugs.webkit.org/show_bug.cgi?id=153432

        Reviewed by Ryosuke Niwa.

        Add a layout test to check that document.open() / write() is indeed
        prevented inside 'beforeunload' event handlers.

        * fast/frames/page-beforeunload-document-open-expected.txt: Added.
        * fast/frames/page-beforeunload-document-open.html: Added.
        * fast/frames/resources/page-beforeunload-document-open-frame.html: Added.

2016-01-26  Chris Dumez  <cdumez@apple.com>

        Add support for HTMLDataElement
        https://bugs.webkit.org/show_bug.cgi?id=153459

        Reviewed by Ryosuke Niwa.

        Rebaseline existing test now that HTMLDataElement is exposed on the
        global Window object.

        * platform/efl/js/dom/global-constructors-attributes-expected.txt:
        * platform/gtk/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac-mavericks/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac/js/dom/global-constructors-attributes-expected.txt:
        * platform/win/js/dom/global-constructors-attributes-expected.txt:

2016-01-26  Commit Queue  <commit-queue@webkit.org>

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

        The test added with this change is timing out on almost every
        run (Requested by ryanhaddad on #webkit).

        Reverted changeset:

        "Calling video.controls=true during a scrub operation cancels
        scrub."
        https://bugs.webkit.org/show_bug.cgi?id=153494
        http://trac.webkit.org/changeset/195610

2016-01-26  Brady Eidson  <beidson@apple.com>

        History.pushState causes intense memory pressure.
        https://bugs.webkit.org/show_bug.cgi?id=153435

        Reviewed by Sam Weinig, Oliver Hunt, and Geoff Garen.

        * TestExpectations: Mark some of the new tests as slow.
        
        * fast/loader/stateobjects/pushstate-frequency-expected.txt: Added.
        * fast/loader/stateobjects/pushstate-frequency-iframe-expected.txt: Added.
        * fast/loader/stateobjects/pushstate-frequency-iframe.html: Added.
        * fast/loader/stateobjects/pushstate-frequency-with-user-gesture-expected.txt: Added.
        * fast/loader/stateobjects/pushstate-frequency-with-user-gesture.html: Added.
        * fast/loader/stateobjects/pushstate-frequency.html: Added.
        * fast/loader/stateobjects/replacestate-frequency-expected.txt: Added.
        * fast/loader/stateobjects/replacestate-frequency-iframe-expected.txt: Added.
        * fast/loader/stateobjects/replacestate-frequency-iframe.html: Added.
        * fast/loader/stateobjects/replacestate-frequency-with-user-gesture-expected.txt: Added.
        * fast/loader/stateobjects/replacestate-frequency-with-user-gesture.html: Added.
        * fast/loader/stateobjects/replacestate-frequency.html: Added.
        * fast/loader/stateobjects/resources/pushstate-iframe.html: Added.
        * fast/loader/stateobjects/resources/replacestate-iframe.html: Added.
        * loader/stateobjects/pushstate-size-expected.txt: Added.
        * loader/stateobjects/pushstate-size-iframe-expected.txt: Added.
        * loader/stateobjects/pushstate-size-iframe.html: Added.
        * loader/stateobjects/pushstate-size.html: Added.
        * loader/stateobjects/replacestate-size-expected.txt: Added.
        * loader/stateobjects/replacestate-size-iframe-expected.txt: Added.
        * loader/stateobjects/replacestate-size-iframe.html: Added.
        * loader/stateobjects/replacestate-size.html: Added.
        * loader/stateobjects/resources/pushstate-iframe.html: Added.
        * loader/stateobjects/resources/replacestate-iframe.html: Added.
        
2016-01-26  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaselining cssom/subpixel-offsetleft-top-width-height-values.html for ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=152308

        Unreviewed test gardening.

        * platform/ios-simulator/cssom/subpixel-offsetleft-top-width-height-values-expected.txt: Added.

2016-01-26  Philip Rogers  <pdr@chromium.org>

        Let SVG images not taint canvases except when containing foreignObjects
        https://bugs.webkit.org/show_bug.cgi?id=119639

        Reviewed by Brent Fulgham.

        * svg/as-image/resources/svg-with-feimage-with-link.svg: Added.
        * svg/as-image/resources/svg-with-image-with-link.svg: Added.
        * svg/as-image/svg-canvas-pattern-with-link-tainted-expected.txt: Added.
        * svg/as-image/svg-canvas-pattern-with-link-tainted.html: Added.
        * svg/as-image/svg-canvas-svg-with-feimage-with-link-tainted-expected.txt: Added.
        * svg/as-image/svg-canvas-svg-with-feimage-with-link-tainted.html: Added.
        * svg/as-image/svg-canvas-svg-with-image-with-link-tainted-expected.txt: Added.
        * svg/as-image/svg-canvas-svg-with-image-with-link-tainted.html: Added.

2016-01-26  Jer Noble  <jer.noble@apple.com>

        Calling video.controls=true during a scrub operation cancels scrub.
        https://bugs.webkit.org/show_bug.cgi?id=153494

        Reviewed by Eric Carlson.

        * media/media-controls-drag-timeline-set-controls-property-expected.txt: Added.
        * media/media-controls-drag-timeline-set-controls-property.html: Added.

2016-01-26  Ryan Haddad  <ryanhaddad@apple.com>

        Marking svg/dom/SVGScriptElement/script-change-externalResourcesRequired-while-loading.svg as flaky on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=153498

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-01-26  Dean Jackson  <dino@apple.com>

        [iOS] Documents without an explicit width should not get fast tapping
        https://bugs.webkit.org/show_bug.cgi?id=153465

        Reviewed by Simon Fraser (and Wenson Hseih).

        * fast/events/ios/thin-gradient.jpg: Added.
        * fast/events/ios/viewport-no-width-value-allows-double-tap-expected.txt: Added.
        * fast/events/ios/viewport-no-width-value-allows-double-tap.html: Added.
        * platform/ios-simulator/TestExpectations:

2016-01-26  Ryan Haddad  <ryanhaddad@apple.com>

        Skipping fast/events/drag-and-drop-link-fast-multiple-times-does-not-crash.html on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=138468

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-01-25  Ryan Haddad  <ryanhaddad@apple.com>

        Marking inspector/codemirror/prettyprinting-css-rules.html as flaky on mac-wk1 debug
        https://bugs.webkit.org/show_bug.cgi?id=153460

        Unreviewed test gardening.

        * platform/mac-wk1/TestExpectations:

2016-01-26  Chris Dumez  <cdumez@apple.com>

        First parameter to window.showModalDialog() should be mandatory
        https://bugs.webkit.org/show_bug.cgi?id=153436

        Reviewed by Youenn Fablet.

        * fast/dom/Window/showModalDialog-mandatory-parameter-expected.txt: Added.
        * fast/dom/Window/showModalDialog-mandatory-parameter.html: Added.
        Add layout test to check that showModalDialog()'s first parameter is indeed
        mandatory.

        * fast/dom/null-page-show-modal-dialog-crash.html:
        Update existing test now that showModalDialog()'s first parameter is
        mandatory.

2016-01-26  Eric Carlson  <eric.carlson@apple.com>

        LayoutTest media/airplay-target-availability.html is flaky
        https://bugs.webkit.org/show_bug.cgi?id=153100
        <rdar://problem/24346796>

        Reviewed by Daniel Bates.

        * media/airplay-target-availability-expected.txt:
        * media/airplay-target-availability.html:

2016-01-26  Daniel Bates  <dabates@apple.com>

        LayoutTest http/tests/security/xssAuditor/embed-tag-in-path-unterminated.html crashing
        https://bugs.webkit.org/show_bug.cgi?id=153250
        <rdar://problem/12172843>
        And
        <rdar://problem/24248040>

        Reviewed by Alexey Proskuryakov.

        The test case http/tests/xmlhttprequest/basic-auth-load-URL-with-consecutive-slashes.html was derived
        from a test case written by Yongjun Zhang in <https://bugs.webkit.org/attachment.cgi?id=65189> (bug #44461).

        * http/tests/loading/basic-auth-load-URL-with-consecutive-slashes-expected.txt: Added.
        * http/tests/loading/basic-auth-load-URL-with-consecutive-slashes.html: Added.
        * http/tests/xmlhttprequest/basic-auth-load-URL-with-consecutive-slashes-expected.txt: Added.
        * http/tests/xmlhttprequest/basic-auth-load-URL-with-consecutive-slashes.html: Added.
        * platform/wk2/http/tests/loading/basic-auth-load-URL-with-consecutive-slashes-expected.txt: Added.

2016-01-26  Daniel Bates  <dabates@apple.com>

        Remove XMLHttpRequestException
        https://bugs.webkit.org/show_bug.cgi?id=102698
        <rdar://problem/24338476>

        Reviewed by Chris Dumez.

        Update test result now that we throw DOMException.{ABORT, NETWORK, TIMEOUT}Error instead of XMLHttpRequestException.{ABORT, NETWORK, TIMEOUT}_ERR.

        * fast/dom/Window/resources/window-properties.js:
        * fast/dom/Window/window-lookup-precedence-expected.txt:
        * fast/files/apply-blob-url-to-xhr-expected.txt:
        * fast/files/workers/worker-apply-blob-url-to-xhr-expected.txt:
        * http/tests/appcache/non-html.xhtml:
        * http/tests/appcache/simple.html:
        * http/tests/contentextensions/sync-xhr-blocked-expected.txt:
        * http/tests/local/fileapi/send-sliced-dragged-file-expected.txt:
        * http/tests/workers/worker-importScripts-expected.txt:
        * http/tests/xmlhttprequest/XMLHttpRequestException-expected.txt:
        * http/tests/xmlhttprequest/XMLHttpRequestException.html:
        * http/tests/xmlhttprequest/access-control-and-redirects-expected.txt:
        * http/tests/xmlhttprequest/access-control-basic-denied-expected.txt:
        * http/tests/xmlhttprequest/access-control-basic-get-fail-non-simple-expected.txt:
        * http/tests/xmlhttprequest/access-control-basic-non-simple-deny-cached-expected.txt:
        * http/tests/xmlhttprequest/access-control-basic-post-fail-non-simple-content-type-expected.txt:
        * http/tests/xmlhttprequest/access-control-sandboxed-iframe-denied-expected.txt:
        * http/tests/xmlhttprequest/access-control-sandboxed-iframe-denied-without-wildcard-expected.txt:
        * http/tests/xmlhttprequest/connection-error-sync-expected.txt:
        * http/tests/xmlhttprequest/cross-origin-no-authorization-expected.txt:
        * http/tests/xmlhttprequest/origin-exact-matching-expected.txt:
        * http/tests/xmlhttprequest/origin-whitelisting-https-expected.txt:
        * http/tests/xmlhttprequest/origin-whitelisting-ip-addresses-with-subdomains-expected.txt:
        * http/tests/xmlhttprequest/origin-whitelisting-removal-expected.txt:
        * http/tests/xmlhttprequest/workers/access-control-basic-get-fail-non-simple-expected.txt:
        * http/tests/xmlhttprequest/xmlhttprequest-sync-no-progress-events-expected.txt:
        * http/tests/xmlhttprequest/xmlhttprequest-unsafe-redirect-expected.txt:
        * platform/efl/js/dom/global-constructors-attributes-expected.txt:
        * platform/gtk/fast/dom/Window/window-lookup-precedence-expected.txt:
        * platform/gtk/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac-mavericks/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac/fast/dom/Window/window-lookup-precedence-expected.txt:
        * platform/mac/js/dom/global-constructors-attributes-expected.txt:
        * platform/win/TestExpectations:
        * platform/win/js/dom/global-constructors-attributes-expected.txt:

2016-01-26  Mario Sanchez Prada  <mario@endlessm.com>

        [GTK] WebProcess crashes when quickly attempting many DnD operations
        https://bugs.webkit.org/show_bug.cgi?id=138468

        Reviewed by Michael Catanzaro.

        New test added to check that the web process does not crash when multiple
        DnD operations are quickly attempted over the same draggable element.

        * fast/events/drag-and-drop-link-fast-multiple-times-does-not-crash-expected.txt: Added.
        * fast/events/drag-and-drop-link-fast-multiple-times-does-not-crash.html: Added.

        Added the new test to the failure expectations for mac-wk2, as there's no
        suitable implementation of eventSender in place yet (see bug 42194).

        * platform/mac-wk2/TestExpectations: Added failure expectation for the new test.

2016-01-25  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        imported/w3c/web-platform-tests/streams-api/readable-streams/garbage-collection.html asserts frequently
        https://bugs.webkit.org/show_bug.cgi?id=152436

        Reviewed by Alexey Proskuryakov.

        * platform/mac/TestExpectations: Marked imported/w3c/web-platform-tests/streams-api/readable-streams/garbage-collection.html as crash/pass.

2016-01-25  Skachkov Oleksandr  <gskachkov@gmail.com>

        [ES6] Arrow function syntax. Arrow function specific features. Lexical bind "arguments"
        https://bugs.webkit.org/show_bug.cgi?id=145132

        Reviewed by Saam Barati.

        * js/arrowfunction-lexical-bind-arguments-non-strict-expected.txt: Added.
        * js/arrowfunction-lexical-bind-arguments-non-strict.html: Added.
        * js/arrowfunction-lexical-bind-arguments-strict-expected.txt: Added.
        * js/arrowfunction-lexical-bind-arguments-strict.html: Added.
        * js/script-tests/arrowfunction-lexical-bind-arguments-non-strict.js: Added.
        * js/script-tests/arrowfunction-lexical-bind-arguments-strict.js: Added.

2016-01-25  Simon Fraser  <simon.fraser@apple.com>

        Give the layout test results file a <title> showing the date and time the tests were run
        https://bugs.webkit.org/show_bug.cgi?id=153187

        Reviewed by Darin Adler.
        
        Generate a <title> element from the 'date' property in the JSON.

        * fast/harness/results.html:

2016-01-25  Carlos Alberto Lopez Perez  <clopez@igalia.com>

        [GTK] Unreviewed GTK gardening.

        Skip all inspector/sampling-profiler tests meanwhile the feature is not enabled on the GTK+ port.
        Report and mark a new regression on test inspector/dom-debugger/node-removed.html timing out.
        Rebaseline a bunch of tests after r194847.

        * platform/gtk/TestExpectations:
        * platform/gtk/fast/forms/auto-fill-button/input-auto-fill-button-expected.txt: Rebaseline after r194847.
        * platform/gtk/fast/forms/auto-fill-button/input-auto-fill-button-expected.png: Added. Rebaseline after r194847.
        * platform/gtk/tables/mozilla/bugs/bug1188-expected.png: Rebaseline after r194847.
        * platform/gtk/tables/mozilla/bugs/bug1188-expected.txt: Rebaseline after r194847.
        * platform/gtk/tables/mozilla/bugs/bug18359-expected.png: Rebaseline after r194847.
        * platform/gtk/tables/mozilla/bugs/bug18359-expected.txt: Rebaseline after r194847.
        * platform/gtk/tables/mozilla/bugs/bug2479-3-expected.png: Rebaseline after r194847.
        * platform/gtk/tables/mozilla/bugs/bug2479-3-expected.txt: Rebaseline after r194847.
        * platform/gtk/tables/mozilla/bugs/bug2479-4-expected.png: Rebaseline after r194847.
        * platform/gtk/tables/mozilla/bugs/bug2479-4-expected.txt: Rebaseline after r194847.
        * platform/gtk/tables/mozilla/bugs/bug29326-expected.png: Rebaseline after r194847.
        * platform/gtk/tables/mozilla/bugs/bug29326-expected.txt: Rebaseline after r194847.
        * platform/gtk/tables/mozilla/bugs/bug33855-expected.png: Rebaseline after r194847.
        * platform/gtk/tables/mozilla/bugs/bug33855-expected.txt: Rebaseline after r194847.
        * platform/gtk/tables/mozilla/bugs/bug4382-expected.png: Rebaseline after r194847.
        * platform/gtk/tables/mozilla/bugs/bug4382-expected.txt: Rebaseline after r194847.
        * platform/gtk/tables/mozilla/bugs/bug96334-expected.png: Rebaseline after r194847.
        * platform/gtk/tables/mozilla/bugs/bug96334-expected.txt: Rebaseline after r194847.
        * platform/gtk/tables/mozilla/core/margins-expected.png: Rebaseline after r194847.
        * platform/gtk/tables/mozilla/core/margins-expected.txt: Rebaseline after r194847.
        * platform/gtk/tables/mozilla/dom/tableDom-expected.png: Rebaseline after r194847.
        * platform/gtk/tables/mozilla/dom/tableDom-expected.txt: Rebaseline after r194847.
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug2479-5-expected.png: Rebaseline after r194847.
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug2479-5-expected.txt: Rebaseline after r194847.
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug92647-1-expected.png: Rebaseline after r194847.
        * platform/gtk/tables/mozilla_expected_failures/bugs/bug92647-1-expected.txt: Rebaseline after r194847.
        * platform/gtk/transforms/2d/zoom-menulist-expected.png: Rebaseline after r194847.
        * platform/gtk/transforms/2d/zoom-menulist-expected.txt: Rebaseline after r194847.

2016-01-25  Ryan Haddad  <ryanhaddad@apple.com>

        Marking imported/w3c/indexeddb/keyorder-private.html as flaky on mac-wk1
        https://bugs.webkit.org/show_bug.cgi?id=153438

        Unreviewed test gardening.

        * platform/mac-wk1/TestExpectations:

2016-01-25  Ryan Haddad  <ryanhaddad@apple.com>

        Marking imported/w3c/web-platform-tests/XMLHttpRequest/getresponseheader-chunked-trailer.htm as flaky
        on ios-simulator, removing flaky expectation that was incorrectly added for a different WPT LayoutTest.
        https://bugs.webkit.org/show_bug.cgi?id=153371

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-01-25  Ryan Haddad  <ryanhaddad@apple.com>

        Marking inspector/heap/garbageCollected.html as flaky on mac-wk1 debug
        https://bugs.webkit.org/show_bug.cgi?id=153039

        Unreviewed test gardening.

        * platform/mac-wk1/TestExpectations:

2016-01-25  Ryan Haddad  <ryanhaddad@apple.com>

        Marking http/tests/loading/preload-no-store-frame-src.html as failing on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=152446

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-01-25  Brady Eidson  <beidson@apple.com>

        Modern IDB: Implement getIndexRecord in the SQLite backing store.
        https://bugs.webkit.org/show_bug.cgi?id=153425

        Reviewed by Darin Adler.

        * platform/mac-wk1/TestExpectations:

2016-01-25  Eric Carlson  <eric.carlson@apple.com>

        Media "ended" event incorrectly fires when currentTime is set
        https://bugs.webkit.org/show_bug.cgi?id=150348
        <rdar://problem/24247974>

        Reviewed by Jer Noble.

        * media/media-ended-fired-once-expected.txt: Added.
        * media/media-ended-fired-once.html: Added.

2016-01-22  Ryosuke Niwa  <rniwa@webkit.org>

        document.createElement should be able to create a custom element
        https://bugs.webkit.org/show_bug.cgi?id=153173

        Reviewed by Darin Adler.

        Add a test for creating a custom elemnet via document.createElement.
        The behavior is to be documented later.

        * fast/custom-elements/Document-createElement-expected.txt: Added.
        * fast/custom-elements/Document-createElement.html: Added.

2016-01-25  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        [Fetch API] Implement Fetch API Headers
        https://bugs.webkit.org/show_bug.cgi?id=152384

        Reviewed by Darin Adler.

        * js/dom/global-constructors-attributes-dedicated-worker-expected.txt:
        * js/dom/global-constructors-attributes-expected.txt:
        * platform/efl/js/dom/global-constructors-attributes-dedicated-worker-expected.txt:
        * platform/efl/js/dom/global-constructors-attributes-expected.txt:
        * platform/gtk/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac-mavericks/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt:
        * platform/mac/js/dom/global-constructors-attributes-expected.txt:
        * platform/win/js/dom/global-constructors-attributes-expected.txt:

2016-01-22  Sergio Villar Senin  <svillar@igalia.com>

        [css-grid] grid shorthand must reset gap properties to their initial values
        https://bugs.webkit.org/show_bug.cgi?id=153354

        Reviewed by Darin Adler.

        * fast/css-grid-layout/grid-shorthand-get-set-expected.txt:
        * fast/css-grid-layout/grid-shorthand-get-set.html:

2016-01-24  Brady Eidson  <beidson@apple.com>

        Modern IDB: Implement deleteIndex and getCount for the SQLite backing store.
        https://bugs.webkit.org/show_bug.cgi?id=153415

        Reviewed by Darin Adler.

        * platform/mac-wk1/TestExpectations:

2016-01-24  Chris Dumez  <cdumez@apple.com>

        Unreviewed, update test after r195497

        This test did not make much sense as it was, after the behavior change
        in r195497.

        * fast/dom/Document/document-charset-expected.txt:
        * fast/dom/Document/document-charset.html:

2016-01-24  Chris Dumez  <cdumez@apple.com>

        An XMLDocument interface should be exposed on the global Window object
        https://bugs.webkit.org/show_bug.cgi?id=153378
        <rdar://problem/24315465>

        Reviewed by Darin Adler.

        Rebaseline some layout tests now that XMLDocument is exposed.

        * fast/dom/DOMImplementation/createDocument-namespace-err-expected.txt:
        * fast/dom/DOMImplementation/script-tests/createDocument-namespace-err.js:
        * fast/dom/Document/clone-node-expected.txt:
        * fast/dom/Document/clone-node.html:
        * fast/dom/Document/xml-document-focus-expected.txt:
        * fast/dom/Document/xml-document-focus.xml:
        * fast/dom/dom-parse-serialize-display-expected.txt:
        * fast/dom/dom-parse-serialize-expected.txt:
        * fast/dom/wrapper-classes-expected.txt:
        * fast/dom/wrapper-classes.html:
        * fast/dom/xmlserializer-serialize-to-string-exception-expected.txt:
        * fast/xmlhttprequest/xmlhttprequest-bad-mimetype-expected.txt:
        * http/tests/xmlhttprequest/supported-xml-content-types-expected.txt:
        * platform/mac/fast/dom/Window/window-lookup-precedence-expected.txt:

2016-01-24  Simon Fraser  <simon.fraser@apple.com>

        New WK1 baselines.

        * platform/mac-wk1/displaylists/extent-includes-shadow-expected.txt:
        * platform/mac-wk1/displaylists/extent-includes-transforms-expected.txt:

2016-01-24  Brady Eidson  <beidson@apple.com>

        Modern IDB: Support IDBObjectStore.createIndex in the SQLite backing store.
        https://bugs.webkit.org/show_bug.cgi?id=153410

        Reviewed by Darin Adler.

        * platform/mac-wk1/TestExpectations:

2016-01-24  Simon Fraser  <simon.fraser@apple.com>

        Make the dumped display list representation a bit more compact
        https://bugs.webkit.org/show_bug.cgi?id=153409

        Reviewed by Zalan Bujtas.
        
        Updated results.

        * displaylists/extent-includes-shadow-expected.txt:
        * displaylists/extent-includes-transforms-expected.txt:
        * displaylists/layer-dispay-list-expected.txt:
        * displaylists/replay-skip-clipped-rect-expected.txt:

2016-01-24  Simon Fraser  <simon.fraser@apple.com>

        Add testing for display list replay, and skip clipped-out items on replay
        https://bugs.webkit.org/show_bug.cgi?id=153408

        Reviewed by Zalan Bujtas.

        Test that a clipped-out rectangle is not painted.

        In order to get the rect into the display list, we need to make the target
        compositing layer be tiled, and to be clipped by an ancestor so that only the
        second tile renders. (This complexity is required because in simpler scenarios,
        the rect is clipped out at recording time.)

        * displaylists/replay-skip-clipped-rect-expected.txt: Added.
        * displaylists/replay-skip-clipped-rect.html: Added.
        * displaylists/resources/dump-target-replay-list.js: Added.
        (doTest):

2016-01-23  Simon Fraser  <simon.fraser@apple.com>

        Layout Test displaylists/extent-includes-transforms.html is flaky on mac-wk1
        https://bugs.webkit.org/show_bug.cgi?id=153308

        Reviewed by Dan Bernstein.

        Rather than assuming that a zero-delay timer will fire after the next layer flush,
        force a flush with testRunner.display(), which fixes flakiness.

        * displaylists/resources/dump-target-display-list.js:
        (doTest):

2016-01-23  Wonchul Lee  <wonchul.lee@collabora.co.uk>

        [GTK] Fix media controls displaying without controls attribute
        https://bugs.webkit.org/show_bug.cgi?id=152500

        Media controls is not displayed without controls attribute by default
        when the video element has text track. It'll be displayed on fullscreen
        regardless of controls attribute.

        Reviewed by Michael Catanzaro.

        * media/video-controls-no-display-with-text-track-expected.txt: Added.
        * media/video-controls-no-display-with-text-track.html: Added.

2016-01-23  Brady Eidson  <beidson@apple.com>

        Modern IDB: Implement clearing object stores and opening cursors in the SQLite backend.
        https://bugs.webkit.org/show_bug.cgi?id=153396

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2016-01-22  Commit Queue  <commit-queue@webkit.org>

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

        Broke authenticaiton tests (leaks credentials) (Requested by
        ap on #webkit).

        Reverted changeset:

        "LayoutTest http/tests/security/xssAuditor/embed-tag-in-path-
        unterminated.html crashing"
        https://bugs.webkit.org/show_bug.cgi?id=153250
        http://trac.webkit.org/changeset/195493

2016-01-20  Ryosuke Niwa  <rniwa@webkit.org>

        HTMLElement::nodeName should not upper case non-ASCII characters
        https://bugs.webkit.org/show_bug.cgi?id=153231

        Reviewed by Darin Adler.

        Added a regression test since the rebaselined W3C test case is very simple and doesn't all permutations.

        * fast/dom/Element/tagName-must-be-ASCII-uppercase-in-HTML-document-expected.txt: Added.
        * fast/dom/Element/tagName-must-be-ASCII-uppercase-in-HTML-document.html: Added.

2016-01-22  Brady Eidson  <beidson@apple.com>

        Modern IDB: Disable simultaneous transactions in the SQLite backend for now.
        https://bugs.webkit.org/show_bug.cgi?id=153381

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2016-01-22  Chris Dumez  <cdumez@apple.com>

        document.charset should be an alias for document.characterSet
        https://bugs.webkit.org/show_bug.cgi?id=153367

        Reviewed by Ryosuke Niwa.

        Drop outdated tests.

        * fast/dom/Document/document-charset-expected.txt:
        * fast/dom/document-attribute-js-null-expected.txt:
        * fast/dom/document-attribute-js-null.html:
        * fast/encoding/css-charset-default-expected.txt:
        * fast/encoding/css-charset-default.xhtml:
        * fast/encoding/external-script-charset.js: Removed.
        * fast/encoding/external-script-charset.xhtml: Removed.

2016-01-22  Chris Dumez  <cdumez@apple.com>

        Document.open / Document.write should be prevented while the document is being unloaded
        https://bugs.webkit.org/show_bug.cgi?id=153255
        <rdar://problem/22741293>

        Reviewed by Ryosuke Niwa.

        Add layout tests that cover calling Document.open / Document.write from
        unload and pagehide handlers.

        * fast/frames/page-hide-document-open-expected.txt: Added.
        * fast/frames/page-hide-document-open.html: Added.
        * fast/frames/page-unload-document-open-expected.txt: Added.
        * fast/frames/page-unload-document-open.html: Added.
        * fast/frames/resources/finish-test.html: Added.
        * fast/frames/resources/page-hide-document-open-frame.html: Added.
        * fast/frames/resources/page-hide-document-open-win.html: Added.
        * fast/frames/resources/page-unload-document-open-frame.html: Added.
        * fast/frames/resources/page-unload-document-open-win.html: Added.

2016-01-22  Brady Eidson  <beidson@apple.com>

        Modern IDB: Implement put, get, and delete records for the SQLite backend.
        https://bugs.webkit.org/show_bug.cgi?id=153375

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2016-01-22  Daniel Bates  <dabates@apple.com>

        LayoutTest http/tests/security/xssAuditor/embed-tag-in-path-unterminated.html crashing
        https://bugs.webkit.org/show_bug.cgi?id=153250
        <rdar://problem/12172843>
        And
        <rdar://problem/24248040>

        Reviewed by Alexey Proskuryakov.

        The test case http/tests/xmlhttprequest/basic-auth-load-URL-with-consecutive-slashes.html was derived
        from a test case written by Yongjun Zhang in <https://bugs.webkit.org/attachment.cgi?id=65189> (bug #44461).

        * http/tests/loading/basic-auth-load-URL-with-consecutive-slashes-expected.txt: Added.
        * http/tests/loading/basic-auth-load-URL-with-consecutive-slashes.html: Added.
        * http/tests/xmlhttprequest/basic-auth-load-URL-with-consecutive-slashes-expected.txt: Added.
        * http/tests/xmlhttprequest/basic-auth-load-URL-with-consecutive-slashes.html: Added.
        * platform/wk2/http/tests/loading/basic-auth-load-URL-with-consecutive-slashes-expected.txt: Added.

2016-01-22  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaselining http/tests/security/originHeader/origin-header-for-https.html after r195477

        Unreviewed test gardening.

        * http/tests/security/originHeader/origin-header-for-https-expected.txt:

2016-01-22  Chris Dumez  <cdumez@apple.com>

        Document.URL / Document.documentURI should return "about:blank" instead of empty string / null
        https://bugs.webkit.org/show_bug.cgi?id=153363
        <rdar://problem/22549736>

        Reviewed by Ryosuke Niwa.

        Drop outdated tests.

        * dom/xhtml/level3/core/documentgetdocumenturi02-expected.txt: Removed.
        * dom/xhtml/level3/core/documentgetdocumenturi02.js: Removed.
        * dom/xhtml/level3/core/documentgetdocumenturi02.xhtml: Removed.
        * dom/xhtml/level3/core/documentgetdocumenturi03-expected.txt: Removed.
        * dom/xhtml/level3/core/documentgetdocumenturi03.js: Removed.
        * dom/xhtml/level3/core/documentgetdocumenturi03.xhtml: Removed.
        * dom/xhtml/level3/core/documentsetdocumenturi03-expected.txt: Removed.
        * dom/xhtml/level3/core/documentsetdocumenturi03.js: Removed.
        * dom/xhtml/level3/core/documentsetdocumenturi03.xhtml: Removed.
        * fast/dom/document-attribute-js-null-expected.txt:
        * fast/dom/document-attribute-js-null.html:

2016-01-22  Tim Horton  <timothy_horton@apple.com>

        Add a test for iOS arrow-key repeat
        https://bugs.webkit.org/show_bug.cgi?id=152857
        <rdar://problem/24017380>

        Reviewed by Darin Adler.

        * fast/events/ios/keyboard-scrolling-repeat-expected.txt: Added.
        * fast/events/ios/keyboard-scrolling-repeat.html: Added.
        Add the aforementioned test. It waits for the held-down arrow key to scroll twice, then sends the up.

2016-01-21  Sam Weinig  <sam@webkit.org>

        Treat non-https actions on secure pages as mixed content
        <rdar://problem/23144492>
        https://bugs.webkit.org/show_bug.cgi?id=153322
        
        Reviewed by Alexey Proskuryakov.

        * http/tests/security/mixedContent/insecure-form-in-iframe-expected.txt: Added.
        * http/tests/security/mixedContent/insecure-form-in-iframe.html: Added.
        * http/tests/security/mixedContent/insecure-form-in-main-frame-expected.txt: Added.
        * http/tests/security/mixedContent/insecure-form-in-main-frame.html: Added.
        * http/tests/security/mixedContent/javascript-url-form-in-main-frame-expected.txt: Added.
        * http/tests/security/mixedContent/javascript-url-form-in-main-frame.html: Added.
        * http/tests/security/mixedContent/resources/frame-with-insecure-form.html: Added.
        * http/tests/security/mixedContent/resources/frame-with-javascript-url-form.html: Added.

2016-01-22  Ryan Haddad  <ryanhaddad@apple.com>

        Marking imported/w3c/web-platform-tests/XMLHttpRequest/getresponseheader-chunked-trailer.htm as flaky on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=153371

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-01-22  Nan Wang  <n_wang@apple.com>

        AX: Crash in setTextMarkerDataWithCharacterOffset
        https://bugs.webkit.org/show_bug.cgi?id=153365
        <rdar://problem/24287924>

        Reviewed by Chris Fleizach.

        * accessibility/text-marker/text-marker-range-with-removed-node-crash-expected.txt: Added.
        * accessibility/text-marker/text-marker-range-with-removed-node-crash.html: Added.

2016-01-22  Brady Eidson  <beidson@apple.com>

        Modern IDB: Add transactions and create/delete object store to SQLite backend
        https://bugs.webkit.org/show_bug.cgi?id=153359

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2016-01-22  Chris Fleizach  <cfleizach@apple.com>

        AX: <code> group and friends should have a custom subrole
        https://bugs.webkit.org/show_bug.cgi?id=153282

        Reviewed by Mario Sanchez Prada.

        * accessibility/duplicate-child-nodes-expected.txt:
        * accessibility/mac/subroles-for-formatted-groups-expected.txt: Added.
        * accessibility/mac/subroles-for-formatted-groups.html: Added.
        * accessibility/roles-computedRoleString-expected.txt:
        * accessibility/roles-computedRoleString.html:

2016-01-22  Skachkov Oleksandr  <gskachkov@gmail.com>

        [ES6] Arrow function. Default arguments in arrow functions
        https://bugs.webkit.org/show_bug.cgi?id=152537

        Reviewed by Saam Barati.

        Default arguments in arrow function parameters have been already 
        implemented by patch from issue https://bugs.webkit.org/show_bug.cgi?id=146934. 
        Current patch adds only tests for this feature  

        * js/arrowfunction-syntax-expected.txt:
        * js/script-tests/arrowfunction-syntax.js:

2016-01-22  Keith Miller  <keith_miller@apple.com>

        [ES6] Add Symbol.species properties to the relevant constructors
        https://bugs.webkit.org/show_bug.cgi?id=153339

        Reviewed by Michael Saboff.

        Add species to the list of property names on the Symbol object.

        * js/Object-getOwnPropertyNames-expected.txt:
        * js/script-tests/Object-getOwnPropertyNames.js:

2016-01-22  Chris Fleizach  <cfleizach@apple.com>

        AX: ARIA combo boxes are not returning the right value for selected text range
        https://bugs.webkit.org/show_bug.cgi?id=153260

        Reviewed by Darin Adler.

        * accessibility/selected-text-range-aria-elements-expected.txt: Added.
        * accessibility/selected-text-range-aria-elements.html: Added.

2016-01-21  Dave Hyatt  <hyatt@apple.com>

        Elements with overflow and border-radius don't show in multicolumn properly.
        https://bugs.webkit.org/show_bug.cgi?id=152920

        Reviewed by Simon Fraser.

        * fast/multicol/border-radius-overflow-columns-expected.html: Added.
        * fast/multicol/border-radius-overflow-columns.html: Added.

2016-01-22  ChangSeok Oh  <changseok.oh@collabora.com>

        [GTK] Remove a focus ring on anchor node when focused by mouse.
        https://bugs.webkit.org/show_bug.cgi?id=136121

        Reviewed by Michael Catanzaro.

        Removed gtk and efl specific results for the test.

        * platform/efl/fast/events/click-focus-anchor-expected.txt: Removed.
        * platform/gtk/fast/events/click-focus-anchor-expected.txt: Removed.

2016-01-21  Simon Fraser  <simon.fraser@apple.com>

        REGRESSION (r168244): Content in horizontal-bt page is offset such that only the end is viewable and there is a white gap at the top
        https://bugs.webkit.org/show_bug.cgi?id=136019

        Reviewed by Dan Bernstein.

        Test that scrolls a horizontal-bt document.

        * fast/scrolling/programmatic-horizontal-bt-document-scroll-expected.html: Added.
        * fast/scrolling/programmatic-horizontal-bt-document-scroll.html: Added.

2016-01-21  Brady Eidson  <beidson@apple.com>

        Modern IDB: Support populating/extracting database metadata with SQLite backend.
        https://bugs.webkit.org/show_bug.cgi?id=153318

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations: Skip all of the tests that run against the
          SQLite backend and currently fail (which is most of them!)

2016-01-21  Nikita Vasilyev  <nvasilyev@apple.com>

        REGRESSION (r195305): Web Inspector: WebInspector.Object can dispatch constructor-level events multiple times
        https://bugs.webkit.org/show_bug.cgi?id=153269
        <rdar://problem/24253106>

        Reviewed by Timothy Hatcher.

        * inspector/unit-tests/object-expected.txt: Added.
        * inspector/unit-tests/object.html: Added.

2016-01-21  Yusuke Suzuki  <utatane.tea@gmail.com>

        [ES6] Catch parameter should accept BindingPattern
        https://bugs.webkit.org/show_bug.cgi?id=152385

        Reviewed by Saam Barati.

        * js/dom/reserved-words-as-property-expected.txt:
        * js/let-syntax-expected.txt:
        * js/mozilla/strict/12.14.1-expected.txt:
        * js/mozilla/strict/script-tests/12.14.1.js:
        * sputnik/Conformance/12_Statement/12.14_The_try_Statement/S12.14_A16_T10-expected.txt:
        * sputnik/Conformance/12_Statement/12.14_The_try_Statement/S12.14_A16_T13-expected.txt:
        * sputnik/Conformance/12_Statement/12.14_The_try_Statement/S12.14_A16_T5-expected.txt:
        * sputnik/Conformance/12_Statement/12.14_The_try_Statement/S12.14_A16_T7-expected.txt:
        * sputnik/Conformance/12_Statement/12.14_The_try_Statement/S12.14_A16_T8-expected.txt:

2016-01-21  Andy VanWagoner  <andy@instructure.com>

        [INTL] Implement Array.prototype.toLocaleString in ECMA-402
        https://bugs.webkit.org/show_bug.cgi?id=147614

        Reviewed by Benjamin Poulain.

        * js/array-toLocaleString-expected.txt: Added.
        * js/array-toLocaleString.html: Added.
        * js/script-tests/array-toLocaleString.js: Added.

2016-01-21  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline fast/block/float/overhanging-tall-block.html for ios-simulator-wk2
        https://bugs.webkit.org/show_bug.cgi?id=152440

        Reviewed by Zalan Bujtas.

        * platform/ios-simulator-wk2/fast/block/float/overhanging-tall-block-expected.txt:

2016-01-21  Brady Eidson  <beidson@apple.com>

        Modern IDB: Make -private copies of each w3c IDB test.
        https://bugs.webkit.org/show_bug.cgi?id=153319

        Reviewed by Alex Christensen.

        * platform/wk2/TestExpectations:

2016-01-21  Ryan Haddad  <ryanhaddad@apple.com>

        Remove a ios-simulator-wk2 specific expectation file since the results are identical on wk1 and wk2
        https://bugs.webkit.org/show_bug.cgi?id=152139

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valueMissing-expected.txt: Removed.

2016-01-21  Said Abou-Hallawa  <sabouhallawa@apple.com>

        A crash reproducible in Path::isEmpty() under RenderSVGShape::paint()
        https://bugs.webkit.org/show_bug.cgi?id=149613

        Reviewed by Darin Adler.
        
        When running the layout of an SVG root and it has resources which are
        referenced by clients in other SVG roots, make sure we run the layout
        for these resources before running the layout for their clients.

        * svg/custom/filter-update-different-root-expected.html: Added.
        * svg/custom/filter-update-different-root.html: Added.
        Without this patch this test crashes because we paint a dirty RenderSVGShape.
        
        * svg/custom/pattern-update-different-root-expected.html: Added.
        * svg/custom/pattern-update-different-root.html: Added.
        Without this patch this test works fine but it is good to have it to catch
        cases where the SVG root needs to run re-layout for its children resources
        and hence their clients if its size has changed.

        * svg/custom/unicode-in-tspan-multi-svg-crash-expected.txt:
        * svg/custom/unicode-in-tspan-multi-svg-crash.html:
        This test was ported from Blink in http://trac.webkit.org/changeset/166420.
        The expectation of this test was changed in Blink:
        https://src.chromium.org/viewvc/blink?revision=158480&view=revision.
        

2016-01-21  Nan Wang  <n_wang@apple.com>

        AX: [IOS] Implement next/previous text marker functions using TextIterator
        https://bugs.webkit.org/show_bug.cgi?id=153292
        <rdar://problem/24268243>

        Reviewed by Chris Fleizach.

        * accessibility/mac/previous-next-text-marker-expected.txt: Removed.
        * accessibility/mac/previous-next-text-marker.html: Removed.
        * accessibility/mac/text-marker-with-user-select-none-expected.txt: Removed.
        * accessibility/mac/text-marker-with-user-select-none.html: Removed.
        * accessibility/text-marker: Added.
        * accessibility/text-marker/text-marker-previous-next-expected.txt: Added.
        * accessibility/text-marker/text-marker-previous-next.html: Added.
        * accessibility/text-marker/text-marker-with-user-select-none-expected.txt: Added.
        * accessibility/text-marker/text-marker-with-user-select-none.html: Added.
        * platform/efl/TestExpectations:
        * platform/gtk/TestExpectations:
        * platform/ios-simulator/TestExpectations:
        * platform/win/TestExpectations:

2016-01-20  Zalan Bujtas  <zalan@apple.com>

        http://victordarras.fr/cssgame/ doesn't work in Safari.
        https://bugs.webkit.org/show_bug.cgi?id=153285
        <rdar://problem/24212369>

        Reviewed by Tim Horton.

        This patch adds support for hittesting ClipPathOperation::Reference.

        * svg/clip-path/hittest-clip-path-reference-miss-expected.html: Added.
        * svg/clip-path/hittest-clip-path-reference-miss.html: Added.

2016-01-20  Brady Eidson  <beidson@apple.com>

        Modern IDB: Add -private.html variants of every storage/indexeddb test that doesn't already have them.
        https://bugs.webkit.org/show_bug.cgi?id=153272

        Reviewed by Alex Christensen.

        This includes some cleanups to the shared js files to make each test more resilient to being run twice.
        
        * TestExpectations:
        * platform/mac-wk1/TestExpectations:
        * platform/wk2/TestExpectations:

        * storage/indexeddb/clone-exception-private-expected.txt: Added.
        * storage/indexeddb/clone-exception-private.html: Added.
        * storage/indexeddb/closed-cursor-private-expected.txt: Added.
        * storage/indexeddb/closed-cursor-private.html: Added.
        * storage/indexeddb/connection-leak-private-expected.txt: Added.
        * storage/indexeddb/connection-leak-private.html: Added.
        * storage/indexeddb/cursor-cast-private-expected.txt: Added.
        * storage/indexeddb/cursor-cast-private.html: Added.
        * storage/indexeddb/cursor-leak-private-expected.txt: Added.
        * storage/indexeddb/cursor-leak-private.html: Added.
        * storage/indexeddb/cursor-overloads-private-expected.txt: Added.
        * storage/indexeddb/cursor-overloads-private.html: Added.
        * storage/indexeddb/cursor-request-cycle-private-expected.txt: Added.
        * storage/indexeddb/cursor-request-cycle-private.html: Added.
        * storage/indexeddb/deleteIndex-bug110792-private-expected.txt: Added.
        * storage/indexeddb/deleteIndex-bug110792-private.html: Added.
        * storage/indexeddb/deletedatabase-delayed-by-versionchange-private-expected.txt: Removed.
        * storage/indexeddb/deletedatabase-transaction-private-expected.txt: Added.
        * storage/indexeddb/deletedatabase-transaction-private.html: Added.
        * storage/indexeddb/dont-commit-on-blocked-private-expected.txt: Added.
        * storage/indexeddb/dont-commit-on-blocked-private.html: Added.
        * storage/indexeddb/lazy-index-population-private-expected.txt: Added.
        * storage/indexeddb/lazy-index-population-private.html: Added.
        * storage/indexeddb/metadata-race-private-expected.txt: Added.
        * storage/indexeddb/metadata-race-private.html: Added.
        * storage/indexeddb/modern/abort-objectstore-info-private-expected.txt: Added.
        * storage/indexeddb/modern/abort-objectstore-info-private.html: Added.
        * storage/indexeddb/modern/abort-requests-cancelled-private-expected.txt: Added.
        * storage/indexeddb/modern/abort-requests-cancelled-private.html: Added.
        * storage/indexeddb/modern/aborted-put-private-expected.txt: Added.
        * storage/indexeddb/modern/aborted-put-private.html: Added.
        * storage/indexeddb/modern/autoincrement-abort-private-expected.txt: Added.
        * storage/indexeddb/modern/autoincrement-abort-private.html: Added.
        * storage/indexeddb/modern/basic-add-private-expected.txt: Added.
        * storage/indexeddb/modern/basic-add-private.html: Added.
        * storage/indexeddb/modern/basic-put-private-expected.txt: Added.
        * storage/indexeddb/modern/basic-put-private.html: Added.
        * storage/indexeddb/modern/blocked-open-db-requests-private-expected.txt: Added.
        * storage/indexeddb/modern/blocked-open-db-requests-private.html: Added.
        * storage/indexeddb/modern/create-index-failures-private-expected.txt: Added.
        * storage/indexeddb/modern/create-index-failures-private.html: Added.
        * storage/indexeddb/modern/createobjectstore-basic-private-expected.txt: Added.
        * storage/indexeddb/modern/createobjectstore-basic-private.html: Added.
        * storage/indexeddb/modern/createobjectstore-failures-private-expected.txt: Added.
        * storage/indexeddb/modern/createobjectstore-failures-private.html: Added.
        * storage/indexeddb/modern/cursor-1-private-expected.txt: Added.
        * storage/indexeddb/modern/cursor-1-private.html: Added.
        * storage/indexeddb/modern/cursor-2-private-expected.txt: Added.
        * storage/indexeddb/modern/cursor-2-private.html: Added.
        * storage/indexeddb/modern/cursor-3-private-expected.txt: Added.
        * storage/indexeddb/modern/cursor-3-private.html: Added.
        * storage/indexeddb/modern/cursor-4-private-expected.txt: Added.
        * storage/indexeddb/modern/cursor-4-private.html: Added.
        * storage/indexeddb/modern/cursor-5-private-expected.txt: Added.
        * storage/indexeddb/modern/cursor-5-private.html: Added.
        * storage/indexeddb/modern/cursor-6-private-expected.txt: Added.
        * storage/indexeddb/modern/cursor-6-private.html: Added.
        * storage/indexeddb/modern/cursor-7-private-expected.txt: Added.
        * storage/indexeddb/modern/cursor-7-private.html: Added.
        * storage/indexeddb/modern/cursor-8-private-expected.txt: Added.
        * storage/indexeddb/modern/cursor-8-private.html: Added.
        * storage/indexeddb/modern/date-basic-private-expected.txt: Added.
        * storage/indexeddb/modern/date-basic-private.html: Added.
        * storage/indexeddb/modern/deletedatabase-1-private-expected.txt: Added.
        * storage/indexeddb/modern/deletedatabase-1-private.html: Added.
        * storage/indexeddb/modern/deletedatabase-2-private-expected.txt: Added.
        * storage/indexeddb/modern/deletedatabase-2-private.html: Added.
        * storage/indexeddb/modern/deletedatabase-null-name-exception-private-expected.txt: Added.
        * storage/indexeddb/modern/deletedatabase-null-name-exception-private.html: Added.
        * storage/indexeddb/modern/deletedatabase-request-event-private-expected.txt: Added.
        * storage/indexeddb/modern/deletedatabase-request-event-private.html: Added.
        * storage/indexeddb/modern/deletedatabase-request-private-expected.txt: Added.
        * storage/indexeddb/modern/deletedatabase-request-private.html: Added.
        * storage/indexeddb/modern/deleteindex-1-private-expected.txt: Added.
        * storage/indexeddb/modern/deleteindex-1-private.html: Added.
        * storage/indexeddb/modern/deleteindex-2-private-expected.txt: Added.
        * storage/indexeddb/modern/deleteindex-2-private.html: Added.
        * storage/indexeddb/modern/deleteobjectstore-1-private-expected.txt: Added.
        * storage/indexeddb/modern/deleteobjectstore-1-private.html: Added.
        * storage/indexeddb/modern/double-abort-private-expected.txt: Added.
        * storage/indexeddb/modern/double-abort-private.html: Added.
        * storage/indexeddb/modern/double-open-private-expected.txt: Added.
        * storage/indexeddb/modern/double-open-private.html: Added.
        * storage/indexeddb/modern/get-index-failures-private-expected.txt: Added.
        * storage/indexeddb/modern/get-index-failures-private.html: Added.
        * storage/indexeddb/modern/get-keyrange-private-expected.txt: Added.
        * storage/indexeddb/modern/get-keyrange-private.html: Added.
        * storage/indexeddb/modern/idbdatabase-deleteobjectstore-failures-private-expected.txt: Added.
        * storage/indexeddb/modern/idbdatabase-deleteobjectstore-failures-private.html: Added.
        * storage/indexeddb/modern/idbdatabase-transaction-failures-private-expected.txt: Added.
        * storage/indexeddb/modern/idbdatabase-transaction-failures-private.html: Added.
        * storage/indexeddb/modern/idbindex-properties-basic-private-expected.txt: Added.
        * storage/indexeddb/modern/idbindex-properties-basic-private.html: Added.
        * storage/indexeddb/modern/idbobjectstore-clear-1-private-expected.txt: Added.
        * storage/indexeddb/modern/idbobjectstore-clear-1-private.html: Added.
        * storage/indexeddb/modern/idbobjectstore-clear-2-private-expected.txt: Added.
        * storage/indexeddb/modern/idbobjectstore-clear-2-private.html: Added.
        * storage/indexeddb/modern/idbobjectstore-count-1-private-expected.txt: Added.
        * storage/indexeddb/modern/idbobjectstore-count-1-private.html: Added.
        * storage/indexeddb/modern/idbobjectstore-count-failures-private-expected.txt: Added.
        * storage/indexeddb/modern/idbobjectstore-count-failures-private.html: Added.
        * storage/indexeddb/modern/idbobjectstore-delete-1-private-expected.txt: Added.
        * storage/indexeddb/modern/idbobjectstore-delete-1-private.html: Added.
        * storage/indexeddb/modern/idbobjectstore-delete-2-private-expected.txt: Added.
        * storage/indexeddb/modern/idbobjectstore-delete-2-private.html: Added.
        * storage/indexeddb/modern/idbobjectstore-delete-failures-private-expected.txt: Added.
        * storage/indexeddb/modern/idbobjectstore-delete-failures-private.html: Added.
        * storage/indexeddb/modern/idbobjectstore-get-failures-private-expected.txt: Added.
        * storage/indexeddb/modern/idbobjectstore-get-failures-private.html: Added.
        * storage/indexeddb/modern/idbobjectstore-put-and-clear-failures-private-expected.txt: Added.
        * storage/indexeddb/modern/idbobjectstore-put-and-clear-failures-private.html: Added.
        * storage/indexeddb/modern/idbtransaction-objectstore-failures-private-expected.txt: Added.
        * storage/indexeddb/modern/idbtransaction-objectstore-failures-private.html: Added.
        * storage/indexeddb/modern/index-1-private-expected.txt: Added.
        * storage/indexeddb/modern/index-1-private.html: Added.
        * storage/indexeddb/modern/index-2-private-expected.txt: Added.
        * storage/indexeddb/modern/index-2-private.html: Added.
        * storage/indexeddb/modern/index-3-private-expected.txt: Added.
        * storage/indexeddb/modern/index-3-private.html: Added.
        * storage/indexeddb/modern/index-4-private-expected.txt: Added.
        * storage/indexeddb/modern/index-4-private.html: Added.
        * storage/indexeddb/modern/index-5-private-expected.txt: Added.
        * storage/indexeddb/modern/index-5-private.html: Added.
        * storage/indexeddb/modern/index-cursor-1-private-expected.txt: Added.
        * storage/indexeddb/modern/index-cursor-1-private.html: Added.
        * storage/indexeddb/modern/index-cursor-2-private-expected.txt: Added.
        * storage/indexeddb/modern/index-cursor-2-private.html: Added.
        * storage/indexeddb/modern/index-cursor-3-private-expected.txt: Added.
        * storage/indexeddb/modern/index-cursor-3-private.html: Added.
        * storage/indexeddb/modern/index-get-count-basic-private-expected.txt: Added.
        * storage/indexeddb/modern/index-get-count-basic-private.html: Added.
        * storage/indexeddb/modern/index-get-count-failures-private-expected.txt: Added.
        * storage/indexeddb/modern/index-get-count-failures-private.html: Added.
        * storage/indexeddb/modern/keypath-basic-private-expected.txt: Added.
        * storage/indexeddb/modern/keypath-basic-private.html: Added.
        * storage/indexeddb/modern/memory-index-not-deleted-with-objectstore-private-expected.txt: Added.
        * storage/indexeddb/modern/memory-index-not-deleted-with-objectstore-private.html: Added.
        * storage/indexeddb/modern/objectstore-attributes-private-expected.txt: Added.
        * storage/indexeddb/modern/objectstore-attributes-private.html: Added.
        * storage/indexeddb/modern/objectstore-cursor-advance-failures-private-expected.txt: Added.
        * storage/indexeddb/modern/objectstore-cursor-advance-failures-private.html: Added.
        * storage/indexeddb/modern/objectstore-cursor-continue-failures-private-expected.txt: Added.
        * storage/indexeddb/modern/objectstore-cursor-continue-failures-private.html: Added.
        * storage/indexeddb/modern/opencursor-failures-private-expected.txt: Added.
        * storage/indexeddb/modern/opencursor-failures-private.html: Added.
        * storage/indexeddb/modern/opendatabase-request-event-private-expected.txt: Added.
        * storage/indexeddb/modern/opendatabase-request-event-private.html: Added.
        * storage/indexeddb/modern/opendatabase-request-private-expected.txt: Added.
        * storage/indexeddb/modern/opendatabase-request-private.html: Added.
        * storage/indexeddb/modern/opendatabase-success-after-versionchange-private-expected.txt: Added.
        * storage/indexeddb/modern/opendatabase-success-after-versionchange-private.html: Added.
        * storage/indexeddb/modern/opendatabase-versions-private-expected.txt: Added.
        * storage/indexeddb/modern/opendatabase-versions-private.html: Added.
        * storage/indexeddb/modern/request-readystate-private-expected.txt: Added.
        * storage/indexeddb/modern/request-readystate-private.html: Added.
        * storage/indexeddb/modern/resources/opendatabase-request-event.js:
        * storage/indexeddb/modern/resources/opendatabase-versions.js:
        * storage/indexeddb/modern/resources/request-readystate.js:
        * storage/indexeddb/modern/resources/versionchange-abort-then-reopen.js:
        * storage/indexeddb/modern/transaction-scheduler-1-private-expected.txt: Added.
        * storage/indexeddb/modern/transaction-scheduler-1-private.html: Added.
        * storage/indexeddb/modern/transaction-scheduler-2-private-expected.txt: Added.
        * storage/indexeddb/modern/transaction-scheduler-2-private.html: Added.
        * storage/indexeddb/modern/transaction-scheduler-3-private-expected.txt: Added.
        * storage/indexeddb/modern/transaction-scheduler-3-private.html: Added.
        * storage/indexeddb/modern/transaction-scheduler-4-private-expected.txt: Added.
        * storage/indexeddb/modern/transaction-scheduler-4-private.html: Added.
        * storage/indexeddb/modern/transaction-scheduler-5-private-expected.txt: Added.
        * storage/indexeddb/modern/transaction-scheduler-5-private.html: Added.
        * storage/indexeddb/modern/transaction-scheduler-6-private-expected.txt: Added.
        * storage/indexeddb/modern/transaction-scheduler-6-private.html: Added.
        * storage/indexeddb/modern/transactions-stop-on-navigation-private-expected.txt: Added.
        * storage/indexeddb/modern/transactions-stop-on-navigation-private.html: Added.
        * storage/indexeddb/modern/versionchange-abort-then-reopen-private-expected.txt: Added.
        * storage/indexeddb/modern/versionchange-abort-then-reopen-private.html: Added.
        * storage/indexeddb/modern/versionchange-event-private-expected.txt: Added.
        * storage/indexeddb/modern/versionchange-event-private.html: Added.
        * storage/indexeddb/mozilla/add-twice-failure-private-expected.txt: Added.
        * storage/indexeddb/mozilla/add-twice-failure-private.html: Added.
        * storage/indexeddb/mozilla/autoincrement-indexes-private-expected.txt: Added.
        * storage/indexeddb/mozilla/autoincrement-indexes-private.html: Added.
        * storage/indexeddb/mozilla/bad-keypath-private-expected.txt: Added.
        * storage/indexeddb/mozilla/bad-keypath-private.html: Added.
        * storage/indexeddb/mozilla/clear-private-expected.txt: Added.
        * storage/indexeddb/mozilla/clear-private.html: Added.
        * storage/indexeddb/mozilla/create-index-unique-private-expected.txt: Added.
        * storage/indexeddb/mozilla/create-index-unique-private.html: Added.
        * storage/indexeddb/mozilla/create-index-with-integer-keys-private-expected.txt: Added.
        * storage/indexeddb/mozilla/create-index-with-integer-keys-private.html: Added.
        * storage/indexeddb/mozilla/create-objectstore-basics-private-expected.txt: Added.
        * storage/indexeddb/mozilla/create-objectstore-basics-private.html: Added.
        * storage/indexeddb/mozilla/create-objectstore-null-name-private-expected.txt: Added.
        * storage/indexeddb/mozilla/create-objectstore-null-name-private.html: Added.
        * storage/indexeddb/mozilla/cursor-mutation-objectstore-only-private-expected.txt: Added.
        * storage/indexeddb/mozilla/cursor-mutation-objectstore-only-private.html: Added.
        * storage/indexeddb/mozilla/cursor-mutation-private-expected.txt: Added.
        * storage/indexeddb/mozilla/cursor-mutation-private.html: Added.
        * storage/indexeddb/mozilla/cursor-update-updates-indexes-private-expected.txt: Added.
        * storage/indexeddb/mozilla/cursor-update-updates-indexes-private.html: Added.
        * storage/indexeddb/mozilla/cursors-private-expected.txt: Added.
        * storage/indexeddb/mozilla/cursors-private.html: Added.
        * storage/indexeddb/mozilla/delete-result-private-expected.txt: Added.
        * storage/indexeddb/mozilla/delete-result-private.html: Added.
        * storage/indexeddb/mozilla/event-source-private-expected.txt: Added.
        * storage/indexeddb/mozilla/event-source-private.html: Added.
        * storage/indexeddb/mozilla/global-data-private-expected.txt: Added.
        * storage/indexeddb/mozilla/global-data-private.html: Added.
        * storage/indexeddb/mozilla/index-prev-no-duplicate-private-expected.txt: Added.
        * storage/indexeddb/mozilla/index-prev-no-duplicate-private.html: Added.
        * storage/indexeddb/mozilla/indexes-private-expected.txt: Added.
        * storage/indexeddb/mozilla/indexes-private.html: Added.
        * storage/indexeddb/mozilla/key-requirements-delete-null-key-private-expected.txt: Added.
        * storage/indexeddb/mozilla/key-requirements-delete-null-key-private.html: Added.
        * storage/indexeddb/mozilla/key-requirements-inline-and-passed-private-expected.txt: Added.
        * storage/indexeddb/mozilla/key-requirements-inline-and-passed-private.html: Added.
        * storage/indexeddb/mozilla/key-requirements-private-expected.txt: Added.
        * storage/indexeddb/mozilla/key-requirements-private.html: Added.
        * storage/indexeddb/mozilla/key-requirements-put-no-key-private-expected.txt: Added.
        * storage/indexeddb/mozilla/key-requirements-put-no-key-private.html: Added.
        * storage/indexeddb/mozilla/key-requirements-put-null-key-private-expected.txt: Added.
        * storage/indexeddb/mozilla/key-requirements-put-null-key-private.html: Added.
        * storage/indexeddb/mozilla/object-cursors-private-expected.txt: Added.
        * storage/indexeddb/mozilla/object-cursors-private.html: Added.
        * storage/indexeddb/mozilla/object-identity-private-expected.txt: Added.
        * storage/indexeddb/mozilla/object-identity-private.html: Added.
        * storage/indexeddb/mozilla/object-store-inline-autoincrement-key-added-on-put-private-expected.txt: Added.
        * storage/indexeddb/mozilla/object-store-inline-autoincrement-key-added-on-put-private.html: Added.
        * storage/indexeddb/mozilla/object-store-remove-values-private-expected.txt: Added.
        * storage/indexeddb/mozilla/object-store-remove-values-private.html: Added.
        * storage/indexeddb/mozilla/objectstorenames-private-expected.txt: Added.
        * storage/indexeddb/mozilla/objectstorenames-private.html: Added.
        * storage/indexeddb/mozilla/odd-result-order-private-expected.txt: Added.
        * storage/indexeddb/mozilla/odd-result-order-private.html: Added.
        * storage/indexeddb/mozilla/open-database-null-name-private-expected.txt: Added.
        * storage/indexeddb/mozilla/open-database-null-name-private.html: Added.
        * storage/indexeddb/mozilla/put-get-values-private-expected.txt: Added.
        * storage/indexeddb/mozilla/put-get-values-private.html: Added.
        * storage/indexeddb/mozilla/readonly-transactions-private-expected.txt: Added.
        * storage/indexeddb/mozilla/readonly-transactions-private.html: Added.
        * storage/indexeddb/mozilla/readwrite-transactions-private-expected.txt: Added.
        * storage/indexeddb/mozilla/readwrite-transactions-private.html: Added.
        * storage/indexeddb/mozilla/readyState-private-expected.txt: Added.
        * storage/indexeddb/mozilla/readyState-private.html: Added.
        * storage/indexeddb/mozilla/remove-index-private-expected.txt: Added.
        * storage/indexeddb/mozilla/remove-index-private.html: Added.
        * storage/indexeddb/mozilla/remove-objectstore-private-expected.txt: Added.
        * storage/indexeddb/mozilla/remove-objectstore-private.html: Added.
        * storage/indexeddb/mozilla/versionchange-abort-private-expected.txt: Added.
        * storage/indexeddb/mozilla/versionchange-abort-private.html: Added.
        * storage/indexeddb/noblobs-private-expected.txt: Added.
        * storage/indexeddb/noblobs-private.html: Added.
        * storage/indexeddb/object-lookups-in-versionchange-private-expected.txt: Added.
        * storage/indexeddb/object-lookups-in-versionchange-private.html: Added.
        * storage/indexeddb/open-bad-versions-private-expected.txt: Added.
        * storage/indexeddb/open-bad-versions-private.html: Added.
        * storage/indexeddb/optional-arguments-private-expected.txt: Added.
        * storage/indexeddb/optional-arguments-private.html: Added.
        * storage/indexeddb/pending-version-change-stuck-works-with-terminate-private-expected.txt: Added.
        * storage/indexeddb/pending-version-change-stuck-works-with-terminate-private.html: Added.
        * storage/indexeddb/prefetch-invalidation-private-expected.txt: Added.
        * storage/indexeddb/prefetch-invalidation-private.html: Added.
        * storage/indexeddb/prefetch-race-private-expected.txt: Added.
        * storage/indexeddb/prefetch-race-private.html: Added.
        * storage/indexeddb/primary-key-unique-to-objectstore-private-expected.txt: Added.
        * storage/indexeddb/primary-key-unique-to-objectstore-private.html: Added.
        * storage/indexeddb/request-leak-private-expected.txt: Added.
        * storage/indexeddb/request-leak-private.html: Added.
        * storage/indexeddb/request-result-cache-private-expected.txt: Added.
        * storage/indexeddb/request-result-cache-private.html: Added.
        * storage/indexeddb/resources/primary-key-unique-to-objectstore.js:
        * storage/indexeddb/resources/shared.js:
        * storage/indexeddb/resources/version-change-event-basic.js:
        * storage/indexeddb/structured-clone-private-expected.txt: Added.
        * storage/indexeddb/structured-clone-private.html: Added.
        * storage/indexeddb/transaction-complete-with-js-recursion-cross-frame-private-expected.txt: Added.
        * storage/indexeddb/transaction-complete-with-js-recursion-cross-frame-private.html: Added.
        * storage/indexeddb/transaction-complete-with-js-recursion-private-expected.txt: Added.
        * storage/indexeddb/transaction-complete-with-js-recursion-private.html: Added.
        * storage/indexeddb/transaction-crash-in-tasks-private-expected.txt: Added.
        * storage/indexeddb/transaction-crash-in-tasks-private.html: Added.
        * storage/indexeddb/transaction-ordering-private-expected.txt: Added.
        * storage/indexeddb/transaction-ordering-private.html: Added.
        * storage/indexeddb/transaction-overlapping-private-expected.txt: Added.
        * storage/indexeddb/transaction-overlapping-private.html: Added.
        * storage/indexeddb/transaction-starvation-private-expected.txt: Removed.
        * storage/indexeddb/version-change-event-basic-private-expected.txt: Added.
        * storage/indexeddb/version-change-event-basic-private.html: Added.
        * storage/indexeddb/version-change-event-private-expected.txt: Added.
        * storage/indexeddb/version-change-event-private.html: Added.

2016-01-20  Ryan Haddad  <ryanhaddad@apple.com>

        Update ios-simulator specific -expected.txt files after most recent WPT revision in r194580
        https://bugs.webkit.org/show_bug.cgi?id=152139

        Unreviewed test gardening.

        * platform/ios-simulator/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-checkValidity-expected.txt:
        * platform/ios-simulator/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valid-expected.txt:
        * platform/ios-simulator/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valueMissing-expected.txt:
        * platform/ios-simulator/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/input-textselection-01-expected.txt:
        * platform/ios-simulator/imported/w3c/web-platform-tests/html/semantics/forms/the-label-element/labelable-elements-expected.txt:

2016-01-20  Ryan Haddad  <ryanhaddad@apple.com>

        Follow up to r195361. Removing ios-simulator-wk2 fast/viewport/ios directory pass expectation, explicitly re-enabling passing tests
        https://bugs.webkit.org/show_bug.cgi?id=153110

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/TestExpectations:
        * platform/ios-simulator/TestExpectations:

2016-01-20  Andy VanWagoner  <thetalecrafter@gmail.com>

        [INTL] Implement Date.prototype.toLocaleTimeString in ECMA-402
        https://bugs.webkit.org/show_bug.cgi?id=147613

        Reviewed by Darin Adler.

        Added tests for toLocaleTimeString.

        * js/date-toLocaleString-expected.txt:
        * js/script-tests/date-toLocaleString.js:

2016-01-20  Brady Eidson  <beidson@apple.com>

        Modern IDB: Make storage/indexeddb/modern tests more modern.
        https://bugs.webkit.org/show_bug.cgi?id=153284

        Reviewed by Alex Christensen.

        * storage/indexeddb/modern/abort-requests-cancelled-expected.txt:
        * storage/indexeddb/modern/aborted-put-expected.txt:
        * storage/indexeddb/modern/autoincrement-abort-expected.txt:
        * storage/indexeddb/modern/basic-add-expected.txt:
        * storage/indexeddb/modern/basic-put-expected.txt:
        * storage/indexeddb/modern/create-index-failures-expected.txt:
        * storage/indexeddb/modern/createobjectstore-basic-expected.txt:
        * storage/indexeddb/modern/createobjectstore-failures-expected.txt:
        * storage/indexeddb/modern/cursor-1-expected.txt:
        * storage/indexeddb/modern/cursor-2-expected.txt:
        * storage/indexeddb/modern/cursor-3-expected.txt:
        * storage/indexeddb/modern/cursor-4-expected.txt:
        * storage/indexeddb/modern/cursor-5-expected.txt:
        * storage/indexeddb/modern/cursor-6-expected.txt:
        * storage/indexeddb/modern/cursor-7-expected.txt:
        * storage/indexeddb/modern/cursor-8-expected.txt:
        * storage/indexeddb/modern/date-basic-expected.txt:
        * storage/indexeddb/modern/deletedatabase-1-expected.txt:
        * storage/indexeddb/modern/deletedatabase-2-expected.txt:
        * storage/indexeddb/modern/deleteindex-1-expected.txt:
        * storage/indexeddb/modern/deleteindex-2-expected.txt:
        * storage/indexeddb/modern/deleteobjectstore-1-expected.txt:
        * storage/indexeddb/modern/double-abort-expected.txt:
        * storage/indexeddb/modern/get-index-failures-expected.txt:
        * storage/indexeddb/modern/get-keyrange-expected.txt:
        * storage/indexeddb/modern/idbdatabase-deleteobjectstore-failures-expected.txt:
        * storage/indexeddb/modern/idbdatabase-transaction-failures-expected.txt:
        * storage/indexeddb/modern/idbindex-properties-basic-expected.txt:
        * storage/indexeddb/modern/idbobjectstore-clear-1-expected.txt:
        * storage/indexeddb/modern/idbobjectstore-clear-2-expected.txt:
        * storage/indexeddb/modern/idbobjectstore-count-1-expected.txt:
        * storage/indexeddb/modern/idbobjectstore-count-failures-expected.txt:
        * storage/indexeddb/modern/idbobjectstore-delete-1-expected.txt:
        * storage/indexeddb/modern/idbobjectstore-delete-2-expected.txt:
        * storage/indexeddb/modern/idbobjectstore-delete-failures-expected.txt:
        * storage/indexeddb/modern/idbobjectstore-get-failures-expected.txt:
        * storage/indexeddb/modern/idbobjectstore-put-and-clear-failures-expected.txt:
        * storage/indexeddb/modern/idbtransaction-objectstore-failures-expected.txt:
        * storage/indexeddb/modern/index-1-expected.txt:
        * storage/indexeddb/modern/index-2-expected.txt:
        * storage/indexeddb/modern/index-3-expected.txt:
        * storage/indexeddb/modern/index-4-expected.txt:
        * storage/indexeddb/modern/index-5-expected.txt:
        * storage/indexeddb/modern/index-cursor-1-expected.txt:
        * storage/indexeddb/modern/index-cursor-2-expected.txt:
        * storage/indexeddb/modern/index-cursor-3-expected.txt:
        * storage/indexeddb/modern/index-get-count-basic-expected.txt:
        * storage/indexeddb/modern/index-get-count-failures-expected.txt:
        * storage/indexeddb/modern/keypath-basic-expected.txt:
        * storage/indexeddb/modern/objectstore-attributes-expected.txt:
        * storage/indexeddb/modern/objectstore-cursor-advance-failures-expected.txt:
        * storage/indexeddb/modern/objectstore-cursor-continue-failures-expected.txt:
        * storage/indexeddb/modern/opencursor-failures-expected.txt:
        * storage/indexeddb/modern/opendatabase-success-after-versionchange-expected.txt:
        * storage/indexeddb/modern/opendatabase-versions-expected.txt:
        * storage/indexeddb/modern/resources/abort-requests-cancelled.js:
        * storage/indexeddb/modern/resources/aborted-put.js:
        * storage/indexeddb/modern/resources/autoincrement-abort.js:
        * storage/indexeddb/modern/resources/basic-add.js:
        * storage/indexeddb/modern/resources/basic-put.js:
        * storage/indexeddb/modern/resources/create-index-failures.js:
        * storage/indexeddb/modern/resources/createobjectstore-basic.js:
        * storage/indexeddb/modern/resources/createobjectstore-failures.js:
        * storage/indexeddb/modern/resources/cursor-1.js:
        * storage/indexeddb/modern/resources/cursor-2.js:
        * storage/indexeddb/modern/resources/cursor-3.js:
        * storage/indexeddb/modern/resources/cursor-4.js:
        * storage/indexeddb/modern/resources/cursor-5.js:
        * storage/indexeddb/modern/resources/cursor-6.js:
        * storage/indexeddb/modern/resources/cursor-7.js:
        * storage/indexeddb/modern/resources/cursor-8.js:
        * storage/indexeddb/modern/resources/date-basic.js:
        * storage/indexeddb/modern/resources/deletedatabase-1.js:
        * storage/indexeddb/modern/resources/deletedatabase-2.js:
        * storage/indexeddb/modern/resources/deletedatabase-null-name-exception.js:
        * storage/indexeddb/modern/resources/deletedatabase-request-event.js:
        * storage/indexeddb/modern/resources/deletedatabase-request.js:
        * storage/indexeddb/modern/resources/deleteindex-1.js:
        * storage/indexeddb/modern/resources/deleteindex-2.js:
        * storage/indexeddb/modern/resources/deleteobjectstore-1.js:
        * storage/indexeddb/modern/resources/double-abort.js:
        * storage/indexeddb/modern/resources/double-open.js:
        * storage/indexeddb/modern/resources/get-index-failures.js:
        * storage/indexeddb/modern/resources/get-keyrange.js:
        * storage/indexeddb/modern/resources/idbdatabase-deleteobjectstore-failures.js:
        * storage/indexeddb/modern/resources/idbdatabase-transaction-failures.js:
        * storage/indexeddb/modern/resources/idbindex-properties-basic.js:
        * storage/indexeddb/modern/resources/idbobjectstore-clear-1.js:
        * storage/indexeddb/modern/resources/idbobjectstore-clear-2.js:
        * storage/indexeddb/modern/resources/idbobjectstore-count-1.js:
        * storage/indexeddb/modern/resources/idbobjectstore-count-failures.js:
        * storage/indexeddb/modern/resources/idbobjectstore-delete-1.js:
        * storage/indexeddb/modern/resources/idbobjectstore-delete-2.js:
        * storage/indexeddb/modern/resources/idbobjectstore-delete-failures.js:
        * storage/indexeddb/modern/resources/idbobjectstore-get-failures.js:
        * storage/indexeddb/modern/resources/idbobjectstore-put-and-clear-failures.js:
        * storage/indexeddb/modern/resources/idbtransaction-objectstore-failures.js:
        * storage/indexeddb/modern/resources/index-1.js:
        * storage/indexeddb/modern/resources/index-2.js:
        * storage/indexeddb/modern/resources/index-3.js:
        * storage/indexeddb/modern/resources/index-4.js:
        * storage/indexeddb/modern/resources/index-5.js:
        * storage/indexeddb/modern/resources/index-cursor-1.js:
        * storage/indexeddb/modern/resources/index-cursor-2.js:
        * storage/indexeddb/modern/resources/index-cursor-3.js:
        * storage/indexeddb/modern/resources/index-get-count-basic.js:
        * storage/indexeddb/modern/resources/index-get-count-failures.js:
        * storage/indexeddb/modern/resources/keypath-basic.js:
        * storage/indexeddb/modern/resources/objectstore-attributes.js:
        * storage/indexeddb/modern/resources/objectstore-cursor-advance-failures.js:
        * storage/indexeddb/modern/resources/objectstore-cursor-continue-failures.js:
        * storage/indexeddb/modern/resources/opencursor-failures.js:
        * storage/indexeddb/modern/resources/opendatabase-request-event.js:
        * storage/indexeddb/modern/resources/opendatabase-request.js:
        * storage/indexeddb/modern/resources/opendatabase-success-after-versionchange.js:
        * storage/indexeddb/modern/resources/opendatabase-versions.js:
        * storage/indexeddb/modern/resources/request-readystate.js:
        * storage/indexeddb/modern/resources/transaction-scheduler-1.js:
        * storage/indexeddb/modern/resources/transaction-scheduler-2.js:
        * storage/indexeddb/modern/resources/transaction-scheduler-3.js:
        * storage/indexeddb/modern/resources/transaction-scheduler-5.js:
        * storage/indexeddb/modern/resources/transaction-scheduler-6.js:
        * storage/indexeddb/modern/resources/versionchange-abort-then-reopen.js:
        * storage/indexeddb/modern/resources/versionchange-event.js:
        * storage/indexeddb/modern/transaction-scheduler-1-expected.txt:
        * storage/indexeddb/modern/transaction-scheduler-2-expected.txt:
        * storage/indexeddb/modern/transaction-scheduler-3-expected.txt:
        * storage/indexeddb/modern/transaction-scheduler-5-expected.txt:
        * storage/indexeddb/modern/transaction-scheduler-6-expected.txt:
        * storage/indexeddb/modern/versionchange-abort-then-reopen-expected.txt:
        * storage/indexeddb/modern/versionchange-event-expected.txt:

2016-01-20  Saam barati  <sbarati@apple.com>

        Web Inspector: Hook the sampling profiler into the Timelines UI
        https://bugs.webkit.org/show_bug.cgi?id=152766
        <rdar://problem/24066360>

        Reviewed by Joseph Pecoraro.

        * inspector/sampling-profiler: Added.
        * inspector/sampling-profiler/basic-expected.txt: Added.
        * inspector/sampling-profiler/basic.html: Added.
        * inspector/sampling-profiler/call-frame-with-dom-functions-expected.txt: Added.
        * inspector/sampling-profiler/call-frame-with-dom-functions.html: Added.
        * inspector/sampling-profiler/eval-source-url-expected.txt: Added.
        * inspector/sampling-profiler/eval-source-url.html: Added.
        * inspector/sampling-profiler/many-call-frames-expected.txt: Added.
        * inspector/sampling-profiler/many-call-frames.html: Added.
        * inspector/sampling-profiler/named-function-expression-expected.txt: Added.
        * inspector/sampling-profiler/named-function-expression.html: Added.
        * inspector/script-profiler/event-type-API-expected.txt:
        * inspector/script-profiler/event-type-API.html:
        * inspector/script-profiler/event-type-Microtask-expected.txt:
        * inspector/script-profiler/event-type-Microtask.html:
        * inspector/script-profiler/event-type-Other-expected.txt:
        * inspector/script-profiler/event-type-Other.html:
        * inspector/script-profiler/tracking-expected.txt:
        * inspector/script-profiler/tracking.html:

2016-01-20  Daniel Bates  <dabates@apple.com>

        CSP: Add tests to ensure that alternative text of an image is rendered when CSP blocks its load
        https://bugs.webkit.org/show_bug.cgi?id=153280

        Reviewed by Alexey Proskuryakov.

        These tests were inspired by the Blink test
        <https://src.chromium.org/viewvc/blink/trunk/LayoutTests/http/tests/security/contentSecurityPolicy/image-blocked-alt-content.html?revision=186800>.

        * http/tests/security/contentSecurityPolicy/image-blocked-alt-text-expected.html: Added.
        * http/tests/security/contentSecurityPolicy/image-blocked-alt-text.html: Added.
        * http/tests/security/contentSecurityPolicy/image-data-URL-blocked-alt-text-expected.html: Added.
        * http/tests/security/contentSecurityPolicy/image-data-URL-blocked-alt-text.html: Added.

2016-01-20  Daniel Bates  <dabates@apple.com>

        CSP: Merge from Blink many new tests and changes to existing tests
        https://bugs.webkit.org/show_bug.cgi?id=153277
        <rdar://problem/24260782>

        Reviewed by Brent Fulgham.

        Merge new Content Security Policy tests from Blink as well as changes made to existing tests
        as of Blink r202656: <https://src.chromium.org/viewvc/blink/trunk/LayoutTests/http/tests/security/contentSecurityPolicy/?pathrev=202656>.
        Many of these new tests fail and have been marked accordingly with associated WebKit bugs in
        TestExpectations. We also do not run CSP 1.1 tests as we do not compile with ENABLE(CSP_NEXT)
        enabled (see <https://bugs.webkit.org/show_bug.cgi?id=85558>). We will look to enable CSP 1.1
        and make all these merged tests pass in subsequent commits.

        One non-mechanical change I made is that I removed the sub-test for shared workers when
        merging http/tests/security/contentSecurityPolicy/worker-without-own-csp.html as WebKit does
        not support shared workers. I also swapped the argument order in the call to assert_equals()
        in the remaining sub-test so that the expected result, "xhr allowed", is the second argument (as
        expected by assert_equals()) and hence the failure message would read well.

        The tests http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-overrides-xfo.html,
        http/tests/security/contentSecurityPolicy/1.1/{script, style}hash-default-src.html do not have
        expected results and are skipped for now. These tests do not have expected results because no
        expected results were committed to Blink and it is not straightforward to generate the expected
        result without reasoning about the test or compiling Blink. When it comes time to enable CSP 1.1
        support we can generate the expected results and verify correctness.

        * TestExpectations:
        * http/tests/security/contentSecurityPolicy/1.1/child-src/frame-about-blank-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/frame-about-blank-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/frame-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/frame-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/frame-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/frame-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/frame-redirect-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/frame-redirect-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/worker-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/worker-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/worker-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/worker-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/worker-shared-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/worker-shared-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/worker-shared-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/child-src/worker-shared-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-none-block-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-none-block.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-self-block-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-self-block.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-star-allow-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-star-allow.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-url-allow-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-url-allow.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-url-block-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-url-block.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-none-block-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-none-block.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-self-block-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-self-block.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-star-allow-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-star-allow.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-url-allow-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-url-allow.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-url-block-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-url-block.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-none-block-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-none-block.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-self-block-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-self-block.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-star-allow-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-star-allow.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-url-allow-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-url-allow.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-url-block-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-url-block.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-none-block-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-none-block.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-self-allow-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-self-allow.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-star-allow-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-star-allow.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-url-allow-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-url-allow.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-url-block-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-url-block.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-none-block-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-none-block.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-overrides-xfo.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-protocolless-allow-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-protocolless-allow.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-self-allow-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-self-allow.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-self-block-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-self-block.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-star-allow-crossorigin-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-star-allow-crossorigin.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-star-allow-sameorigin-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-star-allow-sameorigin.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-url-allow-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-url-allow.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-url-block-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-url-block.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/meta-outside-head-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/meta-outside-head.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/plugintypes-affects-child-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/plugintypes-affects-child.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/plugintypes-invalid.html:
        * http/tests/security/contentSecurityPolicy/1.1/referrer-always-http-http-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-always-http-http.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-always-http-https-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-always-http-https.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-always-https-http-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-always-https-http.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-always-https-https-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-always-https-https.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-default-http-http-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-default-http-http.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-default-http-https-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-default-http-https.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-default-https-http-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-default-https-http.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-default-https-https-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-default-https-https.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-empty-http-http-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-empty-http-http.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-empty-http-https-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-empty-http-https.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-empty-https-http-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-empty-https-http.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-empty-https-https-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-empty-https-https.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-invalid-http-http-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-invalid-http-http.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-invalid-http-https-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-invalid-http-https.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-invalid-https-http-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-invalid-https-http.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-invalid-https-https-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-invalid-https-https.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-never-http-http-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-never-http-http.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-never-http-https-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-never-http-https.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-never-https-http-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-never-https-http.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-never-https-https-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-never-https-https.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-origin-http-http-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-origin-http-http.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-origin-http-https-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-origin-http-https.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-origin-https-http-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-origin-https-http.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-origin-https-https-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/referrer-origin-https-https.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/report-uri-effective-directive-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/reportonly-in-meta-ignored-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/reportonly-in-meta-ignored.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/scripthash-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/scripthash-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/scripthash-basic-blocked-error-event-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/scripthash-basic-blocked-error-event.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/scripthash-basic-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/scripthash-basic-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/scripthash-default-src.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/scripthash-ignore-unsafeinline-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/scripthash-ignore-unsafeinline.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/scripthash-malformed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/scripthash-malformed.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/scripthash-unicode-normalization-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/scripthash-unicode-normalization.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/scriptnonce-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/scriptnonce-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/scriptnonce-and-scripthash-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/scriptnonce-and-scripthash.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/scriptnonce-basic-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/scriptnonce-basic-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-expected.txt: Copied from LayoutTests/http/tests/security/contentSecurityPolicy/source-list-parsing-03-expected.txt.
        * http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/scriptnonce-ignore-unsafeinline-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/scriptnonce-ignore-unsafeinline.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/scriptnonce-invalidnonce-expected.txt: Copied from LayoutTests/http/tests/security/contentSecurityPolicy/source-list-parsing-07-expected.txt.
        * http/tests/security/contentSecurityPolicy/1.1/scriptnonce-invalidnonce.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/scriptnonce-redirect-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/scriptnonce-redirect.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-basics-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-basics.html:
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-cross-origin-image-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-cross-origin-image-from-script-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-cross-origin-image-from-script.html:
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-cross-origin-image.html:
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-image-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-image-from-script-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-image-from-script.html:
        * http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-image.html:
        * http/tests/security/contentSecurityPolicy/1.1/stylehash-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/stylehash-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/stylehash-basic-blocked-error-event-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/stylehash-basic-blocked-error-event.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/stylehash-basic-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/stylehash-basic-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/stylehash-default-src.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/stylehash-svg-style-basic-blocked-error-event-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/stylehash-svg-style-basic-blocked-error-event.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/stylenonce-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/stylenonce-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/stylenonce-basic-blocked-error-event-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/stylenonce-basic-blocked-error-event.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/stylenonce-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/stylenonce-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/1.1/stylenonce-svg-style-basic-blocked-error-event-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/1.1/stylenonce-svg-style-basic-blocked-error-event.html: Added.
        * http/tests/security/contentSecurityPolicy/blob-urls-match-self.html:
        * http/tests/security/contentSecurityPolicy/connect-src-eventsource-redirect-to-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/connect-src-eventsource-redirect-to-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/connect-src-xmlhttprequest-redirect-to-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/connect-src-xmlhttprequest-redirect-to-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/csp-header-is-sent-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/csp-header-is-sent.html: Added.
        * http/tests/security/contentSecurityPolicy/eval-allowed-in-report-only-mode-and-sends-report-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/eval-allowed-in-report-only-mode-and-sends-report.html: Added.
        * http/tests/security/contentSecurityPolicy/eval-blocked-and-sends-report-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/eval-blocked-and-sends-report.html: Added.
        * http/tests/security/contentSecurityPolicy/frame-src-cross-origin-load-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/frame-src-cross-origin-load.html: Added.
        * http/tests/security/contentSecurityPolicy/icon-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/icon-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/icon-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/icon-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/image-document-default-src-none-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/image-document-default-src-none.html: Added.
        * http/tests/security/contentSecurityPolicy/inline-event-handler-blocked-after-injecting-meta-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/inline-event-handler-blocked-after-injecting-meta.html: Added.
        * http/tests/security/contentSecurityPolicy/manifest-src-allowed-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/manifest-src-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/manifest-src-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/manifest-src-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/manifest.test/manifest.json: Added.
        * http/tests/security/contentSecurityPolicy/object-in-svg-foreignobject-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/object-in-svg-foreignobject.html: Added.
        * http/tests/security/contentSecurityPolicy/object-src-applet-archive-codebase-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/object-src-applet-archive-codebase.html: Added.
        * http/tests/security/contentSecurityPolicy/object-src-applet-archive-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/object-src-applet-archive.html: Added.
        * http/tests/security/contentSecurityPolicy/object-src-applet-code-codebase-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/object-src-applet-code-codebase.html: Added.
        * http/tests/security/contentSecurityPolicy/object-src-applet-code-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/object-src-applet-code.html: Added.
        * http/tests/security/contentSecurityPolicy/object-src-does-not-affect-child-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/object-src-does-not-affect-child.html: Added.
        * http/tests/security/contentSecurityPolicy/object-src-param-code-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/object-src-param-code-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/object-src-param-movie-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/object-src-param-movie-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/object-src-param-src-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/object-src-param-src-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/object-src-param-url-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/object-src-param-url-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/plugin-in-iframe-with-csp-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/plugin-in-iframe-with-csp.html: Added.
        * http/tests/security/contentSecurityPolicy/redirect-does-not-match-paths-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/redirect-does-not-match-paths.html: Added.
        * http/tests/security/contentSecurityPolicy/register-bypassing-scheme-partial-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/register-bypassing-scheme-partial.html: Added.
        * http/tests/security/contentSecurityPolicy/report-and-enforce-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-and-enforce.html:
        * http/tests/security/contentSecurityPolicy/report-blocked-data-uri-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-blocked-file-uri-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-blocked-uri-cross-origin-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-blocked-uri-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-multiple-violations-01-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/report-multiple-violations-01.html: Added.
        * http/tests/security/contentSecurityPolicy/report-multiple-violations-02-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/report-multiple-violations-02.html: Added.
        * http/tests/security/contentSecurityPolicy/report-only-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-only-from-header-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-same-origin-with-cookies-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-uri-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-uri-from-child-frame-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-uri-from-inline-javascript-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-uri-from-javascript-expected.txt:
        * http/tests/security/contentSecurityPolicy/report-uri-scheme-relative-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/report-uri-scheme-relative.html: Added.
        * http/tests/security/contentSecurityPolicy/resources/alert-pass.js: Added.
        * http/tests/security/contentSecurityPolicy/resources/child-src-test.js: Added.
        (window.onload):
        (injectFrame):
        (iframeLoaded):
        (injectFrameRedirectingTo):
        (injectWorker):
        (injectSharedWorker):
        * http/tests/security/contentSecurityPolicy/resources/csp-header-is-sent.js: Added.
        (async_test.xhr.onload):
        (async_test):
        (test):
        * http/tests/security/contentSecurityPolicy/resources/fail-to-inject-script.js: Added.
        (s.onerror):
        (s.onload):
        * http/tests/security/contentSecurityPolicy/resources/frame-ancestors-and-x-frame-options.pl: Added.
        * http/tests/security/contentSecurityPolicy/resources/frame-ancestors-test.js: Added.
        (injectNestedIframe):
        (injectIFrame):
        (iframeLoaded):
        (crossOriginFrameShouldBeBlocked.window.onload):
        (crossOriginFrameShouldBeBlocked):
        (crossOriginFrameShouldBeAllowed.window.onload):
        (crossOriginFrameShouldBeAllowed):
        (sameOriginFrameShouldBeBlocked.window.onload):
        (sameOriginFrameShouldBeBlocked):
        (sameOriginFrameShouldBeAllowed.window.onload):
        (sameOriginFrameShouldBeAllowed):
        (window.onload):
        (testNestedIFrame):
        * http/tests/security/contentSecurityPolicy/resources/frame-ancestors.pl: Added.
        * http/tests/security/contentSecurityPolicy/resources/frame-in-frame.pl: Added.
        * http/tests/security/contentSecurityPolicy/resources/generate-csp-report.html: Added.
        * http/tests/security/contentSecurityPolicy/resources/iframe-redirect-not-allowed.html: Added.
        * http/tests/security/contentSecurityPolicy/resources/image-document-default-src-none-iframe.php: Added.
        * http/tests/security/contentSecurityPolicy/resources/multiple-iframe-test.js:
        * http/tests/security/contentSecurityPolicy/resources/nph-cached-csp.pl:
        * http/tests/security/contentSecurityPolicy/resources/object-src-param.js: Added.
        (appendObjectElement.window.onload):
        (appendObjectElement):
        * http/tests/security/contentSecurityPolicy/resources/post-message.js: Added.
        * http/tests/security/contentSecurityPolicy/resources/redir.php: Added.
        * http/tests/security/contentSecurityPolicy/resources/redirect-does-not-match-paths.js: Added.
        (test):
        (async_test.img.onload):
        (async_test):
        (async_test.xhr.onload):
        * http/tests/security/contentSecurityPolicy/resources/redirect.pl: Added.
        * http/tests/security/contentSecurityPolicy/resources/referrer-test-endpoint.php: Added.
        * http/tests/security/contentSecurityPolicy/resources/referrer-test.js: Added.
        (ReferrerTest.bindHandler):
        (ReferrerTest.base):
        (ReferrerTest.generateFrameURL):
        (ReferrerTest.injectFrame):
        (expectFullReferrer):
        (expectNoReferrer):
        (expectOriginReferrer):
        * http/tests/security/contentSecurityPolicy/resources/referrer-test.php: Added.
        * http/tests/security/contentSecurityPolicy/resources/sandbox.php:
        * http/tests/security/contentSecurityPolicy/resources/script-redirect-not-allowed.js: Added.
        * http/tests/security/contentSecurityPolicy/resources/script-set-value.js: Added.
        * http/tests/security/contentSecurityPolicy/resources/style-set-red.css: Added.
        (p):
        * http/tests/security/contentSecurityPolicy/resources/stylesheet-redirect-not-allowed.css: Added.
        (body):
        * http/tests/security/contentSecurityPolicy/resources/test-csp-header.pl: Added.
        * http/tests/security/contentSecurityPolicy/resources/worker.php: Added.
        * http/tests/security/contentSecurityPolicy/resources/xhr-redirect-not-allowed.pl: Added.
        * http/tests/security/contentSecurityPolicy/sandbox-report-only-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/sandbox-report-only.html: Added.
        * http/tests/security/contentSecurityPolicy/script-src-appended-script-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/script-src-appended-script.html: Added.
        * http/tests/security/contentSecurityPolicy/script-src-blocked-error-event-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/script-src-blocked-error-event.html: Added.
        * http/tests/security/contentSecurityPolicy/script-src-redirect-expected.txt:
        * http/tests/security/contentSecurityPolicy/script-src-redirect.html:
        * http/tests/security/contentSecurityPolicy/source-list-parsing-03-expected.txt:
        * http/tests/security/contentSecurityPolicy/source-list-parsing-03.html:
        * http/tests/security/contentSecurityPolicy/source-list-parsing-07-expected.txt:
        * http/tests/security/contentSecurityPolicy/source-list-parsing-07.html:
        * http/tests/security/contentSecurityPolicy/source-list-parsing-paths-03-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/source-list-parsing-paths-03.html: Added.
        * http/tests/security/contentSecurityPolicy/style-src-blocked-error-event-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/style-src-blocked-error-event.html: Added.
        * http/tests/security/contentSecurityPolicy/worker-blob-inherits-csp-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/worker-blob-inherits-csp.html: Added.
        * http/tests/security/contentSecurityPolicy/worker-connect-src-allowed.html:
        * http/tests/security/contentSecurityPolicy/worker-connect-src-blocked.html:
        * http/tests/security/contentSecurityPolicy/worker-eval-blocked.html:
        * http/tests/security/contentSecurityPolicy/worker-function-function-blocked.html:
        * http/tests/security/contentSecurityPolicy/worker-importscripts-blocked-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/worker-importscripts-blocked.html: Added.
        * http/tests/security/contentSecurityPolicy/worker-multiple-csp-headers-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/worker-multiple-csp-headers.html: Added.
        * http/tests/security/contentSecurityPolicy/worker-script-src-expected.txt:
        * http/tests/security/contentSecurityPolicy/worker-script-src.html:
        * http/tests/security/contentSecurityPolicy/worker-set-timeout-blocked.html:
        * http/tests/security/contentSecurityPolicy/worker-without-own-csp-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/worker-without-own-csp.html: Added.
        * platform/wk2/TestExpectations:

2016-01-20  Ryan Haddad  <ryanhaddad@apple.com>

        Marking three fast/viewport/ios/width-is-device-width-overflowing* tests as flaky on ios-simulator.
        https://bugs.webkit.org/show_bug.cgi?id=153110

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-01-20  Chris Dumez  <cdumez@apple.com>

        Drop support for obsolete Node.isSupported()
        https://bugs.webkit.org/show_bug.cgi?id=153164

        Reviewed by Darin Adler.

        Drop obsolete DOM tests.

        * dom/html/level2/html/HTMLBodyElement07-expected.txt: Removed.
        * dom/html/level2/html/HTMLBodyElement07.html: Removed.
        * dom/html/level2/html/HTMLBodyElement07.js: Removed.
        * dom/html/level2/html/HTMLBodyElement08-expected.txt: Removed.
        * dom/html/level2/html/HTMLBodyElement08.html: Removed.
        * dom/html/level2/html/HTMLBodyElement08.js: Removed.
        * dom/html/level2/html/HTMLBodyElement09-expected.txt: Removed.
        * dom/html/level2/html/HTMLBodyElement09.html: Removed.
        * dom/html/level2/html/HTMLBodyElement09.js: Removed.
        * dom/html/level2/html/HTMLBodyElement10-expected.txt: Removed.
        * dom/html/level2/html/HTMLBodyElement10.html: Removed.
        * dom/html/level2/html/HTMLBodyElement10.js: Removed.
        * dom/html/level2/html/HTMLBodyElement11-expected.txt: Removed.
        * dom/html/level2/html/HTMLBodyElement11.html: Removed.
        * dom/html/level2/html/HTMLBodyElement11.js: Removed.
        * dom/html/level2/html/HTMLBodyElement12-expected.txt: Removed.
        * dom/html/level2/html/HTMLBodyElement12.html: Removed.
        * dom/html/level2/html/HTMLBodyElement12.js: Removed.
        * dom/html/level2/html/HTMLDocument22-expected.txt: Removed.
        * dom/html/level2/html/HTMLDocument22.html: Removed.
        * dom/html/level2/html/HTMLDocument22.js: Removed.
        * dom/html/level2/html/HTMLDocument23-expected.txt: Removed.
        * dom/html/level2/html/HTMLDocument23.html: Removed.
        * dom/html/level2/html/HTMLDocument23.js: Removed.
        * dom/html/level2/html/HTMLDocument24-expected.txt: Removed.
        * dom/html/level2/html/HTMLDocument24.html: Removed.
        * dom/html/level2/html/HTMLDocument24.js: Removed.
        * dom/html/level2/html/HTMLDocument25-expected.txt: Removed.
        * dom/html/level2/html/HTMLDocument25.html: Removed.
        * dom/html/level2/html/HTMLDocument25.js: Removed.
        * dom/html/level2/html/HTMLDocument26-expected.txt: Removed.
        * dom/html/level2/html/HTMLDocument26.html: Removed.
        * dom/html/level2/html/HTMLDocument26.js: Removed.
        * dom/html/level2/html/HTMLDocument27-expected.txt: Removed.
        * dom/html/level2/html/HTMLDocument27.html: Removed.
        * dom/html/level2/html/HTMLDocument27.js: Removed.
        * dom/svg/level3/xpath/Conformance_isSupported_3-expected.txt: Removed.
        * dom/svg/level3/xpath/Conformance_isSupported_3.js: Removed.
        * dom/svg/level3/xpath/Conformance_isSupported_3.svg: Removed.
        * dom/svg/level3/xpath/Conformance_isSupported_empty-expected.txt: Removed.
        * dom/svg/level3/xpath/Conformance_isSupported_empty.js: Removed.
        * dom/svg/level3/xpath/Conformance_isSupported_empty.svg: Removed.
        * dom/svg/level3/xpath/Conformance_isSupported_null-expected.txt: Removed.
        * dom/svg/level3/xpath/Conformance_isSupported_null.js: Removed.
        * dom/svg/level3/xpath/Conformance_isSupported_null.svg: Removed.
        * dom/xhtml/level2/html/HTMLBodyElement07-expected.txt: Removed.
        * dom/xhtml/level2/html/HTMLBodyElement07.js: Removed.
        * dom/xhtml/level2/html/HTMLBodyElement07.xhtml: Removed.
        * dom/xhtml/level2/html/HTMLBodyElement08-expected.txt: Removed.
        * dom/xhtml/level2/html/HTMLBodyElement08.js: Removed.
        * dom/xhtml/level2/html/HTMLBodyElement08.xhtml: Removed.
        * dom/xhtml/level2/html/HTMLBodyElement09-expected.txt: Removed.
        * dom/xhtml/level2/html/HTMLBodyElement09.js: Removed.
        * dom/xhtml/level2/html/HTMLBodyElement09.xhtml: Removed.
        * dom/xhtml/level2/html/HTMLBodyElement10-expected.txt: Removed.
        * dom/xhtml/level2/html/HTMLBodyElement10.js: Removed.
        * dom/xhtml/level2/html/HTMLBodyElement10.xhtml: Removed.
        * dom/xhtml/level2/html/HTMLBodyElement11-expected.txt: Removed.
        * dom/xhtml/level2/html/HTMLBodyElement11.js: Removed.
        * dom/xhtml/level2/html/HTMLBodyElement11.xhtml: Removed.
        * dom/xhtml/level2/html/HTMLBodyElement12-expected.txt: Removed.
        * dom/xhtml/level2/html/HTMLBodyElement12.js: Removed.
        * dom/xhtml/level2/html/HTMLBodyElement12.xhtml: Removed.
        * dom/xhtml/level2/html/HTMLDocument22-expected.txt: Removed.
        * dom/xhtml/level2/html/HTMLDocument22.js: Removed.
        * dom/xhtml/level2/html/HTMLDocument22.xhtml: Removed.
        * dom/xhtml/level2/html/HTMLDocument23-expected.txt: Removed.
        * dom/xhtml/level2/html/HTMLDocument23.js: Removed.
        * dom/xhtml/level2/html/HTMLDocument23.xhtml: Removed.
        * dom/xhtml/level2/html/HTMLDocument24-expected.txt: Removed.
        * dom/xhtml/level2/html/HTMLDocument24.js: Removed.
        * dom/xhtml/level2/html/HTMLDocument24.xhtml: Removed.
        * dom/xhtml/level2/html/HTMLDocument25-expected.txt: Removed.
        * dom/xhtml/level2/html/HTMLDocument25.js: Removed.
        * dom/xhtml/level2/html/HTMLDocument25.xhtml: Removed.
        * dom/xhtml/level2/html/HTMLDocument26-expected.txt: Removed.
        * dom/xhtml/level2/html/HTMLDocument26.js: Removed.
        * dom/xhtml/level2/html/HTMLDocument26.xhtml: Removed.
        * dom/xhtml/level2/html/HTMLDocument27-expected.txt: Removed.
        * dom/xhtml/level2/html/HTMLDocument27.js: Removed.
        * dom/xhtml/level2/html/HTMLDocument27.xhtml: Removed.
        * fast/dom/features-expected.txt:
        * fast/dom/features.html:

2016-01-19  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: Fix inspector/model/remote-object.html test
        https://bugs.webkit.org/show_bug.cgi?id=153261
        <rdar://problem/24249553>

        Reviewed by Timothy Hatcher.

        Rebaseline the test for Mac platform that broke in r195305.

        * platform/mac/inspector/model/remote-object-expected.txt:

2016-01-19  Chris Dumez  <cdumez@apple.com>

        DocumentType.publicId / systemId should never return null
        https://bugs.webkit.org/show_bug.cgi?id=153264

        Reviewed by Ryosuke Niwa.

        Drop outdated DOM test.

        * dom/xhtml/level3/core/documentgetdoctype01-expected.txt: Removed.
        * dom/xhtml/level3/core/documentgetdoctype01.js: Removed.
        * dom/xhtml/level3/core/documentgetdoctype01.xhtml: Removed.

2016-01-19  Brady Eidson  <beidson@apple.com>

        Modern IDB: Remove unneeded "Alert: " string from storage/indexeddb/modern tests.
        https://bugs.webkit.org/show_bug.cgi?id=153257

        Reviewed by Sam Weinig.
        
        These were put in to minimize the diff for https://trac.webkit.org/changeset/195321 and
        make it easier to review.
        
        Now they can be removed.

        * storage/indexeddb/modern/aborted-put-expected.txt:
        * storage/indexeddb/modern/autoincrement-abort-expected.txt:
        * storage/indexeddb/modern/basic-add-expected.txt:
        * storage/indexeddb/modern/basic-put-expected.txt:
        * storage/indexeddb/modern/createobjectstore-basic-expected.txt:
        * storage/indexeddb/modern/createobjectstore-failures-expected.txt:
        * storage/indexeddb/modern/date-basic-expected.txt:
        * storage/indexeddb/modern/deletedatabase-null-name-exception-expected.txt:
        * storage/indexeddb/modern/deletedatabase-request-event-expected.txt:
        * storage/indexeddb/modern/deletedatabase-request-expected.txt:
        * storage/indexeddb/modern/deleteobjectstore-1-expected.txt:
        * storage/indexeddb/modern/double-abort-expected.txt:
        * storage/indexeddb/modern/get-keyrange-expected.txt:
        * storage/indexeddb/modern/idbdatabase-deleteobjectstore-failures-expected.txt:
        * storage/indexeddb/modern/idbdatabase-transaction-failures-expected.txt:
        * storage/indexeddb/modern/idbindex-properties-basic-expected.txt:
        * storage/indexeddb/modern/idbobjectstore-clear-1-expected.txt:
        * storage/indexeddb/modern/idbobjectstore-clear-2-expected.txt:
        * storage/indexeddb/modern/idbobjectstore-count-1-expected.txt:
        * storage/indexeddb/modern/idbobjectstore-count-failures-expected.txt:
        * storage/indexeddb/modern/idbobjectstore-get-failures-expected.txt:
        * storage/indexeddb/modern/idbobjectstore-put-and-clear-failures-expected.txt:
        * storage/indexeddb/modern/idbtransaction-objectstore-failures-expected.txt:
        * storage/indexeddb/modern/keypath-basic-expected.txt:
        * storage/indexeddb/modern/opendatabase-request-event-expected.txt:
        * storage/indexeddb/modern/opendatabase-request-expected.txt:
        * storage/indexeddb/modern/resources/aborted-put.js:
        * storage/indexeddb/modern/resources/autoincrement-abort.js:
        * storage/indexeddb/modern/resources/basic-add.js:
        * storage/indexeddb/modern/resources/basic-put.js:
        * storage/indexeddb/modern/resources/createobjectstore-basic.js:
        * storage/indexeddb/modern/resources/createobjectstore-failures.js:
        * storage/indexeddb/modern/resources/date-basic.js:
        * storage/indexeddb/modern/resources/deletedatabase-null-name-exception.js:
        * storage/indexeddb/modern/resources/deletedatabase-request-event.js:
        * storage/indexeddb/modern/resources/deletedatabase-request.js:
        * storage/indexeddb/modern/resources/deleteobjectstore-1.js:
        * storage/indexeddb/modern/resources/double-abort.js:
        * storage/indexeddb/modern/resources/get-keyrange.js:
        * storage/indexeddb/modern/resources/idbdatabase-deleteobjectstore-failures.js:
        * storage/indexeddb/modern/resources/idbdatabase-transaction-failures.js:
        * storage/indexeddb/modern/resources/idbindex-properties-basic.js:
        * storage/indexeddb/modern/resources/idbobjectstore-clear-1.js:
        * storage/indexeddb/modern/resources/idbobjectstore-clear-2.js:
        * storage/indexeddb/modern/resources/idbobjectstore-count-1.js:
        * storage/indexeddb/modern/resources/idbobjectstore-count-failures.js:
        * storage/indexeddb/modern/resources/idbobjectstore-get-failures.js:
        * storage/indexeddb/modern/resources/idbobjectstore-put-and-clear-failures.js:
        * storage/indexeddb/modern/resources/idbtransaction-objectstore-failures.js:
        * storage/indexeddb/modern/resources/keypath-basic.js:
        * storage/indexeddb/modern/resources/opendatabase-request-event.js:
        * storage/indexeddb/modern/resources/opendatabase-request.js:
        * storage/indexeddb/modern/resources/transaction-scheduler-1.js:
        * storage/indexeddb/modern/resources/transaction-scheduler-2.js:
        * storage/indexeddb/modern/resources/transaction-scheduler-3.js:
        * storage/indexeddb/modern/resources/transaction-scheduler-5.js:
        * storage/indexeddb/modern/resources/transaction-scheduler-6.js:
        * storage/indexeddb/modern/resources/versionchange-abort-then-reopen.js:
        * storage/indexeddb/modern/resources/versionchange-event.js:
        * storage/indexeddb/modern/transaction-scheduler-1-expected.txt:
        * storage/indexeddb/modern/transaction-scheduler-2-expected.txt:
        * storage/indexeddb/modern/transaction-scheduler-3-expected.txt:
        * storage/indexeddb/modern/transaction-scheduler-5-expected.txt:
        * storage/indexeddb/modern/transaction-scheduler-6-expected.txt:
        * storage/indexeddb/modern/versionchange-abort-then-reopen-expected.txt:
        * storage/indexeddb/modern/versionchange-event-expected.txt:

2016-01-19  Andy VanWagoner  <thetalecrafter@gmail.com>

        [INTL] Implement Date.prototype.toLocaleDateString in ECMA-402
        https://bugs.webkit.org/show_bug.cgi?id=147612

        Reviewed by Benjamin Poulain.

        Added tests for toLocaleDateString.

        * js/date-toLocaleString-expected.txt:
        * js/script-tests/date-toLocaleString.js:

2016-01-19  Brady Eidson  <beidson@apple.com>

        Modern IDB: Split all storage/indexeddb/modern tests into separate HTML + JS format.
        https://bugs.webkit.org/show_bug.cgi?id=153251

        Reviewed by Sam Weinig.

        * storage/indexeddb/modern/abort-requests-cancelled-expected.txt:
        * storage/indexeddb/modern/abort-requests-cancelled.html:
        * storage/indexeddb/modern/aborted-put-expected.txt:
        * storage/indexeddb/modern/aborted-put.html:
        * storage/indexeddb/modern/autoincrement-abort-expected.txt:
        * storage/indexeddb/modern/autoincrement-abort.html:
        * storage/indexeddb/modern/basic-add-expected.txt:
        * storage/indexeddb/modern/basic-add.html:
        * storage/indexeddb/modern/basic-put-expected.txt:
        * storage/indexeddb/modern/basic-put.html:
        * storage/indexeddb/modern/create-index-failures-expected.txt:
        * storage/indexeddb/modern/create-index-failures.html:
        * storage/indexeddb/modern/createobjectstore-basic-expected.txt:
        * storage/indexeddb/modern/createobjectstore-basic.html:
        * storage/indexeddb/modern/createobjectstore-failures-expected.txt:
        * storage/indexeddb/modern/createobjectstore-failures.html:
        * storage/indexeddb/modern/cursor-1-expected.txt:
        * storage/indexeddb/modern/cursor-1.html:
        * storage/indexeddb/modern/cursor-2-expected.txt:
        * storage/indexeddb/modern/cursor-2.html:
        * storage/indexeddb/modern/cursor-3-expected.txt:
        * storage/indexeddb/modern/cursor-3.html:
        * storage/indexeddb/modern/cursor-4-expected.txt:
        * storage/indexeddb/modern/cursor-4.html:
        * storage/indexeddb/modern/cursor-5-expected.txt:
        * storage/indexeddb/modern/cursor-5.html:
        * storage/indexeddb/modern/cursor-6-expected.txt:
        * storage/indexeddb/modern/cursor-6.html:
        * storage/indexeddb/modern/cursor-7-expected.txt:
        * storage/indexeddb/modern/cursor-7.html:
        * storage/indexeddb/modern/cursor-8-expected.txt:
        * storage/indexeddb/modern/cursor-8.html:
        * storage/indexeddb/modern/date-basic-expected.txt:
        * storage/indexeddb/modern/date-basic.html:
        * storage/indexeddb/modern/deletedatabase-1-expected.txt:
        * storage/indexeddb/modern/deletedatabase-1.html:
        * storage/indexeddb/modern/deletedatabase-2-expected.txt:
        * storage/indexeddb/modern/deletedatabase-2.html:
        * storage/indexeddb/modern/deletedatabase-null-name-exception-expected.txt:
        * storage/indexeddb/modern/deletedatabase-null-name-exception.html:
        * storage/indexeddb/modern/deletedatabase-request-event-expected.txt:
        * storage/indexeddb/modern/deletedatabase-request-event.html:
        * storage/indexeddb/modern/deletedatabase-request-expected.txt:
        * storage/indexeddb/modern/deletedatabase-request.html:
        * storage/indexeddb/modern/deleteindex-1-expected.txt:
        * storage/indexeddb/modern/deleteindex-1.html:
        * storage/indexeddb/modern/deleteindex-2-expected.txt:
        * storage/indexeddb/modern/deleteindex-2.html:
        * storage/indexeddb/modern/deleteobjectstore-1-expected.txt:
        * storage/indexeddb/modern/deleteobjectstore-1.html:
        * storage/indexeddb/modern/double-abort-expected.txt:
        * storage/indexeddb/modern/double-abort.html:
        * storage/indexeddb/modern/double-open-expected.txt:
        * storage/indexeddb/modern/double-open.html:
        * storage/indexeddb/modern/get-index-failures-expected.txt:
        * storage/indexeddb/modern/get-index-failures.html:
        * storage/indexeddb/modern/get-keyrange-expected.txt:
        * storage/indexeddb/modern/get-keyrange.html:
        * storage/indexeddb/modern/idbdatabase-deleteobjectstore-failures-expected.txt:
        * storage/indexeddb/modern/idbdatabase-deleteobjectstore-failures.html:
        * storage/indexeddb/modern/idbdatabase-transaction-failures-expected.txt:
        * storage/indexeddb/modern/idbdatabase-transaction-failures.html:
        * storage/indexeddb/modern/idbindex-properties-basic-expected.txt:
        * storage/indexeddb/modern/idbindex-properties-basic.html:
        * storage/indexeddb/modern/idbobjectstore-clear-1-expected.txt:
        * storage/indexeddb/modern/idbobjectstore-clear-1.html:
        * storage/indexeddb/modern/idbobjectstore-clear-2-expected.txt:
        * storage/indexeddb/modern/idbobjectstore-clear-2.html:
        * storage/indexeddb/modern/idbobjectstore-count-1-expected.txt:
        * storage/indexeddb/modern/idbobjectstore-count-1.html:
        * storage/indexeddb/modern/idbobjectstore-count-failures-expected.txt:
        * storage/indexeddb/modern/idbobjectstore-count-failures.html:
        * storage/indexeddb/modern/idbobjectstore-delete-1-expected.txt:
        * storage/indexeddb/modern/idbobjectstore-delete-1.html:
        * storage/indexeddb/modern/idbobjectstore-delete-2-expected.txt:
        * storage/indexeddb/modern/idbobjectstore-delete-2.html:
        * storage/indexeddb/modern/idbobjectstore-delete-failures-expected.txt:
        * storage/indexeddb/modern/idbobjectstore-delete-failures.html:
        * storage/indexeddb/modern/idbobjectstore-get-failures-expected.txt:
        * storage/indexeddb/modern/idbobjectstore-get-failures.html:
        * storage/indexeddb/modern/idbobjectstore-put-and-clear-failures-expected.txt:
        * storage/indexeddb/modern/idbobjectstore-put-and-clear-failures.html:
        * storage/indexeddb/modern/idbtransaction-objectstore-failures-expected.txt:
        * storage/indexeddb/modern/idbtransaction-objectstore-failures.html:
        * storage/indexeddb/modern/index-1-expected.txt:
        * storage/indexeddb/modern/index-1.html:
        * storage/indexeddb/modern/index-2-expected.txt:
        * storage/indexeddb/modern/index-2.html:
        * storage/indexeddb/modern/index-3-expected.txt:
        * storage/indexeddb/modern/index-3.html:
        * storage/indexeddb/modern/index-4-expected.txt:
        * storage/indexeddb/modern/index-4.html:
        * storage/indexeddb/modern/index-5-expected.txt:
        * storage/indexeddb/modern/index-5.html:
        * storage/indexeddb/modern/index-cursor-1-expected.txt:
        * storage/indexeddb/modern/index-cursor-1.html:
        * storage/indexeddb/modern/index-cursor-2-expected.txt:
        * storage/indexeddb/modern/index-cursor-2.html:
        * storage/indexeddb/modern/index-cursor-3-expected.txt:
        * storage/indexeddb/modern/index-cursor-3.html:
        * storage/indexeddb/modern/index-get-count-basic-expected.txt:
        * storage/indexeddb/modern/index-get-count-basic.html:
        * storage/indexeddb/modern/index-get-count-failures-expected.txt:
        * storage/indexeddb/modern/index-get-count-failures.html:
        * storage/indexeddb/modern/keypath-basic-expected.txt:
        * storage/indexeddb/modern/keypath-basic.html:
        * storage/indexeddb/modern/objectstore-attributes-expected.txt:
        * storage/indexeddb/modern/objectstore-attributes.html:
        * storage/indexeddb/modern/objectstore-cursor-advance-failures-expected.txt:
        * storage/indexeddb/modern/objectstore-cursor-advance-failures.html:
        * storage/indexeddb/modern/objectstore-cursor-continue-failures-expected.txt:
        * storage/indexeddb/modern/objectstore-cursor-continue-failures.html:
        * storage/indexeddb/modern/opencursor-failures-expected.txt:
        * storage/indexeddb/modern/opencursor-failures.html:
        * storage/indexeddb/modern/opendatabase-request-event-expected.txt:
        * storage/indexeddb/modern/opendatabase-request-event.html:
        * storage/indexeddb/modern/opendatabase-request-expected.txt:
        * storage/indexeddb/modern/opendatabase-request.html:
        * storage/indexeddb/modern/opendatabase-success-after-versionchange-expected.txt:
        * storage/indexeddb/modern/opendatabase-success-after-versionchange.html:
        * storage/indexeddb/modern/opendatabase-versions-expected.txt:
        * storage/indexeddb/modern/opendatabase-versions.html:
        * storage/indexeddb/modern/request-readystate-expected.txt:
        * storage/indexeddb/modern/request-readystate.html:
        * storage/indexeddb/modern/resources/abort-requests-cancelled.js: Copied from LayoutTests/storage/indexeddb/modern/abort-requests-cancelled.html.
        * storage/indexeddb/modern/resources/aborted-put.js: Copied from LayoutTests/storage/indexeddb/modern/aborted-put.html.
        * storage/indexeddb/modern/resources/autoincrement-abort.js: Copied from LayoutTests/storage/indexeddb/modern/autoincrement-abort.html.
        * storage/indexeddb/modern/resources/basic-add.js: Copied from LayoutTests/storage/indexeddb/modern/basic-add.html.
        * storage/indexeddb/modern/resources/basic-put.js: Copied from LayoutTests/storage/indexeddb/modern/basic-put.html.
        * storage/indexeddb/modern/resources/create-index-failures.js: Copied from LayoutTests/storage/indexeddb/modern/create-index-failures.html.
        * storage/indexeddb/modern/resources/createobjectstore-basic.js: Copied from LayoutTests/storage/indexeddb/modern/createobjectstore-basic.html.
        * storage/indexeddb/modern/resources/createobjectstore-failures.js: Copied from LayoutTests/storage/indexeddb/modern/createobjectstore-failures.html.
        * storage/indexeddb/modern/resources/cursor-1.js: Copied from LayoutTests/storage/indexeddb/modern/cursor-1.html.
        * storage/indexeddb/modern/resources/cursor-2.js: Copied from LayoutTests/storage/indexeddb/modern/cursor-2.html.
        * storage/indexeddb/modern/resources/cursor-3.js: Copied from LayoutTests/storage/indexeddb/modern/cursor-3.html.
        * storage/indexeddb/modern/resources/cursor-4.js: Copied from LayoutTests/storage/indexeddb/modern/cursor-4.html.
        * storage/indexeddb/modern/resources/cursor-5.js: Copied from LayoutTests/storage/indexeddb/modern/cursor-5.html.
        * storage/indexeddb/modern/resources/cursor-6.js: Copied from LayoutTests/storage/indexeddb/modern/cursor-6.html.
        * storage/indexeddb/modern/resources/cursor-7.js: Copied from LayoutTests/storage/indexeddb/modern/cursor-7.html.
        * storage/indexeddb/modern/resources/cursor-8.js: Copied from LayoutTests/storage/indexeddb/modern/cursor-8.html.
        * storage/indexeddb/modern/resources/date-basic.js: Copied from LayoutTests/storage/indexeddb/modern/date-basic.html.
        * storage/indexeddb/modern/resources/deletedatabase-1.js: Copied from LayoutTests/storage/indexeddb/modern/deletedatabase-1.html.
        * storage/indexeddb/modern/resources/deletedatabase-2.js: Copied from LayoutTests/storage/indexeddb/modern/deletedatabase-2.html.
        * storage/indexeddb/modern/resources/deletedatabase-null-name-exception.js: Added.
        * storage/indexeddb/modern/resources/deletedatabase-request-event.js: Copied from LayoutTests/storage/indexeddb/modern/deletedatabase-request-event.html.
        * storage/indexeddb/modern/resources/deletedatabase-request.js: Added.
        * storage/indexeddb/modern/resources/deleteindex-1.js: Copied from LayoutTests/storage/indexeddb/modern/deleteindex-1.html.
        * storage/indexeddb/modern/resources/deleteindex-2.js: Copied from LayoutTests/storage/indexeddb/modern/deleteindex-2.html.
        * storage/indexeddb/modern/resources/deleteobjectstore-1.js: Copied from LayoutTests/storage/indexeddb/modern/deleteobjectstore-1.html.
        * storage/indexeddb/modern/resources/double-abort.js: Copied from LayoutTests/storage/indexeddb/modern/double-abort.html.
        * storage/indexeddb/modern/resources/double-open.js: Added.
        * storage/indexeddb/modern/resources/get-index-failures.js: Copied from LayoutTests/storage/indexeddb/modern/get-index-failures.html.
        * storage/indexeddb/modern/resources/get-keyrange.js: Copied from LayoutTests/storage/indexeddb/modern/get-keyrange.html.
        * storage/indexeddb/modern/resources/idbdatabase-deleteobjectstore-failures.js: Copied from LayoutTests/storage/indexeddb/modern/idbdatabase-deleteobjectstore-failures.html.
        * storage/indexeddb/modern/resources/idbdatabase-transaction-failures.js: Copied from LayoutTests/storage/indexeddb/modern/idbdatabase-transaction-failures.html.
        * storage/indexeddb/modern/resources/idbindex-properties-basic.js: Copied from LayoutTests/storage/indexeddb/modern/idbindex-properties-basic.html.
        * storage/indexeddb/modern/resources/idbobjectstore-clear-1.js: Copied from LayoutTests/storage/indexeddb/modern/idbobjectstore-clear-1.html.
        * storage/indexeddb/modern/resources/idbobjectstore-clear-2.js: Copied from LayoutTests/storage/indexeddb/modern/idbobjectstore-clear-2.html.
        * storage/indexeddb/modern/resources/idbobjectstore-count-1.js: Copied from LayoutTests/storage/indexeddb/modern/idbobjectstore-count-1.html.
        * storage/indexeddb/modern/resources/idbobjectstore-count-failures.js: Copied from LayoutTests/storage/indexeddb/modern/idbobjectstore-count-failures.html.
        * storage/indexeddb/modern/resources/idbobjectstore-delete-1.js: Copied from LayoutTests/storage/indexeddb/modern/idbobjectstore-delete-1.html.
        * storage/indexeddb/modern/resources/idbobjectstore-delete-2.js: Copied from LayoutTests/storage/indexeddb/modern/idbobjectstore-delete-2.html.
        * storage/indexeddb/modern/resources/idbobjectstore-delete-failures.js: Copied from LayoutTests/storage/indexeddb/modern/idbobjectstore-delete-failures.html.
        * storage/indexeddb/modern/resources/idbobjectstore-get-failures.js: Copied from LayoutTests/storage/indexeddb/modern/idbobjectstore-get-failures.html.
        * storage/indexeddb/modern/resources/idbobjectstore-put-and-clear-failures.js: Copied from LayoutTests/storage/indexeddb/modern/idbobjectstore-put-and-clear-failures.html.
        * storage/indexeddb/modern/resources/idbtransaction-objectstore-failures.js: Added.
        * storage/indexeddb/modern/resources/index-1.js: Copied from LayoutTests/storage/indexeddb/modern/index-1.html.
        * storage/indexeddb/modern/resources/index-2.js: Copied from LayoutTests/storage/indexeddb/modern/index-2.html.
        * storage/indexeddb/modern/resources/index-3.js: Copied from LayoutTests/storage/indexeddb/modern/index-3.html.
        * storage/indexeddb/modern/resources/index-4.js: Copied from LayoutTests/storage/indexeddb/modern/index-4.html.
        * storage/indexeddb/modern/resources/index-5.js: Copied from LayoutTests/storage/indexeddb/modern/index-5.html.
        * storage/indexeddb/modern/resources/index-cursor-1.js: Copied from LayoutTests/storage/indexeddb/modern/index-cursor-1.html.
        * storage/indexeddb/modern/resources/index-cursor-2.js: Copied from LayoutTests/storage/indexeddb/modern/index-cursor-2.html.
        * storage/indexeddb/modern/resources/index-cursor-3.js: Copied from LayoutTests/storage/indexeddb/modern/index-cursor-3.html.
        * storage/indexeddb/modern/resources/index-get-count-basic.js: Copied from LayoutTests/storage/indexeddb/modern/index-get-count-basic.html.
        * storage/indexeddb/modern/resources/index-get-count-failures.js: Copied from LayoutTests/storage/indexeddb/modern/index-get-count-failures.html.
        * storage/indexeddb/modern/resources/keypath-basic.js: Copied from LayoutTests/storage/indexeddb/modern/keypath-basic.html.
        * storage/indexeddb/modern/resources/objectstore-attributes.js: Copied from LayoutTests/storage/indexeddb/modern/objectstore-attributes.html.
        * storage/indexeddb/modern/resources/objectstore-cursor-advance-failures.js: Copied from LayoutTests/storage/indexeddb/modern/objectstore-cursor-advance-failures.html.
        * storage/indexeddb/modern/resources/objectstore-cursor-continue-failures.js: Copied from LayoutTests/storage/indexeddb/modern/objectstore-cursor-continue-failures.html.
        * storage/indexeddb/modern/resources/opencursor-failures.js: Copied from LayoutTests/storage/indexeddb/modern/opencursor-failures.html.
        * storage/indexeddb/modern/resources/opendatabase-request-event.js: Added.
        * storage/indexeddb/modern/resources/opendatabase-request.js: Copied from LayoutTests/storage/indexeddb/modern/opendatabase-request.html.
        * storage/indexeddb/modern/resources/opendatabase-success-after-versionchange.js: Copied from LayoutTests/storage/indexeddb/modern/opendatabase-success-after-versionchange.html.
        * storage/indexeddb/modern/resources/opendatabase-versions.js: Copied from LayoutTests/storage/indexeddb/modern/opendatabase-versions.html.
        * storage/indexeddb/modern/resources/request-readystate.js: Added.
        * storage/indexeddb/modern/resources/transaction-scheduler-1.js: Copied from LayoutTests/storage/indexeddb/modern/transaction-scheduler-1.html.
        * storage/indexeddb/modern/resources/transaction-scheduler-2.js: Copied from LayoutTests/storage/indexeddb/modern/transaction-scheduler-2.html.
        * storage/indexeddb/modern/resources/transaction-scheduler-3.js: Copied from LayoutTests/storage/indexeddb/modern/transaction-scheduler-3.html.
        * storage/indexeddb/modern/resources/transaction-scheduler-5.js: Copied from LayoutTests/storage/indexeddb/modern/transaction-scheduler-5.html.
        * storage/indexeddb/modern/resources/transaction-scheduler-6.js: Copied from LayoutTests/storage/indexeddb/modern/transaction-scheduler-6.html.
        * storage/indexeddb/modern/resources/transactions-stop-on-navigation-2.html:
        * storage/indexeddb/modern/resources/versionchange-abort-then-reopen.js: Copied from LayoutTests/storage/indexeddb/modern/versionchange-abort-then-reopen.html.
        * storage/indexeddb/modern/resources/versionchange-event.js: Copied from LayoutTests/storage/indexeddb/modern/versionchange-event.html.
        * storage/indexeddb/modern/transaction-scheduler-1-expected.txt:
        * storage/indexeddb/modern/transaction-scheduler-1.html:
        * storage/indexeddb/modern/transaction-scheduler-2-expected.txt:
        * storage/indexeddb/modern/transaction-scheduler-2.html:
        * storage/indexeddb/modern/transaction-scheduler-3-expected.txt:
        * storage/indexeddb/modern/transaction-scheduler-3.html:
        * storage/indexeddb/modern/transaction-scheduler-5-expected.txt:
        * storage/indexeddb/modern/transaction-scheduler-5.html:
        * storage/indexeddb/modern/transaction-scheduler-6-expected.txt:
        * storage/indexeddb/modern/transaction-scheduler-6.html:
        * storage/indexeddb/modern/transactions-stop-on-navigation-expected.txt:
        * storage/indexeddb/modern/versionchange-abort-then-reopen-expected.txt:
        * storage/indexeddb/modern/versionchange-abort-then-reopen.html:
        * storage/indexeddb/modern/versionchange-event-expected.txt:
        * storage/indexeddb/modern/versionchange-event.html:

2016-01-19  Zalan Bujtas  <zalan@apple.com>

        outline-offset does not work for inlines.
        https://bugs.webkit.org/show_bug.cgi?id=153238

        Reviewed by Simon Fraser.

        Adjust outline box width/height with outline-offset.

        Test: fast/inline/inlines-with-outline-offset.html

        * fast/inline/inlines-with-outline-offset-expected.html: Added.
        * fast/inline/inlines-with-outline-offset.html: Added.

2016-01-19  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: WebInspector.Object.addEventListener is O(n), make it O(1)
        https://bugs.webkit.org/show_bug.cgi?id=152422
        <rdar://problem/24038047>

        Reviewed by Timothy Hatcher.

        * inspector/console/console-api-expected.txt:
        * inspector/console/console-table-expected.txt:
        * inspector/model/remote-object-expected.txt:
        Rebaseline tests, add "_listeners: null" to all WebInspector.Object instances.

        * inspector/unit-tests/linked-list-expected.txt: Added.
        * inspector/unit-tests/linked-list.html: Added.
        * inspector/unit-tests/list-multimap-expected.txt: Added.
        * inspector/unit-tests/list-multimap.html: Added.

2016-01-19  Brady Eidson  <beidson@apple.com>

        Modern IDB: Split all storage/indexeddb/mozilla tests into separate HTML + JS format.
        https://bugs.webkit.org/show_bug.cgi?id=153237

        Reviewed by Sam Weinig.

        * storage/indexeddb/mozilla/index-prev-no-duplicate.html:
        * storage/indexeddb/mozilla/resources/index-prev-no-duplicate.js: Copied from LayoutTests/storage/indexeddb/mozilla/index-prev-no-duplicate.html.

2016-01-19  Brady Eidson  <beidson@apple.com>

        Modern IDB: Split all storage/indexeddb tests into separate HTML + JS format.
        https://bugs.webkit.org/show_bug.cgi?id=153178

        Reviewed by Sam Weinig.

        * storage/indexeddb/clone-exception.html:
        * storage/indexeddb/closed-cursor.html:
        * storage/indexeddb/connection-leak.html:
        * storage/indexeddb/cursor-cast.html:
        * storage/indexeddb/cursor-leak.html:
        * storage/indexeddb/cursor-overloads.html:
        * storage/indexeddb/cursor-request-cycle.html:
        * storage/indexeddb/deleteIndex-bug110792.html:
        * storage/indexeddb/deletedatabase-transaction.html:
        * storage/indexeddb/metadata-race.html:
        * storage/indexeddb/noblobs.html:
        * storage/indexeddb/object-lookups-in-versionchange.html:
        * storage/indexeddb/open-bad-versions.html:
        * storage/indexeddb/optional-arguments.html:
        * storage/indexeddb/prefetch-invalidation.html:
        * storage/indexeddb/prefetch-race.html:
        * storage/indexeddb/primary-key-unique-to-objectstore.html:
        * storage/indexeddb/request-leak.html:
        * storage/indexeddb/request-result-cache.html:
        * storage/indexeddb/resources/clone-exception.js: Copied from LayoutTests/storage/indexeddb/clone-exception.html.
        * storage/indexeddb/resources/closed-cursor.js: Copied from LayoutTests/storage/indexeddb/closed-cursor.html.
        * storage/indexeddb/resources/connection-leak.js: Copied from LayoutTests/storage/indexeddb/connection-leak.html.
        * storage/indexeddb/resources/cursor-cast.js: Copied from LayoutTests/storage/indexeddb/cursor-cast.html.
        * storage/indexeddb/resources/cursor-leak.js: Copied from LayoutTests/storage/indexeddb/cursor-leak.html.
        * storage/indexeddb/resources/cursor-overloads.js: Copied from LayoutTests/storage/indexeddb/cursor-overloads.html.
        * storage/indexeddb/resources/cursor-request-cycle.js: Copied from LayoutTests/storage/indexeddb/cursor-request-cycle.html.
        * storage/indexeddb/resources/deleteIndex-bug110792.js: Copied from LayoutTests/storage/indexeddb/deleteIndex-bug110792.html.
        * storage/indexeddb/resources/deletedatabase-transaction.js: Copied from LayoutTests/storage/indexeddb/deletedatabase-transaction.html.
        * storage/indexeddb/resources/metadata-race.js: Copied from LayoutTests/storage/indexeddb/metadata-race.html.
        * storage/indexeddb/resources/noblobs.js: Copied from LayoutTests/storage/indexeddb/noblobs.html.
        * storage/indexeddb/resources/object-lookups-in-versionchange.js: Copied from LayoutTests/storage/indexeddb/object-lookups-in-versionchange.html.
        * storage/indexeddb/resources/open-bad-versions.js: Copied from LayoutTests/storage/indexeddb/open-bad-versions.html.
        * storage/indexeddb/resources/optional-arguments.js: Copied from LayoutTests/storage/indexeddb/optional-arguments.html.
        * storage/indexeddb/resources/prefetch-invalidation.js: Copied from LayoutTests/storage/indexeddb/prefetch-invalidation.html.
        * storage/indexeddb/resources/prefetch-race.js: Copied from LayoutTests/storage/indexeddb/prefetch-race.html.
        * storage/indexeddb/resources/primary-key-unique-to-objectstore.js: Copied from LayoutTests/storage/indexeddb/primary-key-unique-to-objectstore.html.
        * storage/indexeddb/resources/request-leak.js: Copied from LayoutTests/storage/indexeddb/request-leak.html.
        * storage/indexeddb/resources/request-result-cache.js: Copied from LayoutTests/storage/indexeddb/request-result-cache.html.
        * storage/indexeddb/resources/structured-clone.js: Copied from LayoutTests/storage/indexeddb/structured-clone.html.
        * storage/indexeddb/resources/transaction-complete-with-js-recursion-cross-frame.js: Copied from LayoutTests/storage/indexeddb/transaction-complete-with-js-recursion-cross-frame.html.
        * storage/indexeddb/resources/transaction-complete-with-js-recursion.js: Copied from LayoutTests/storage/indexeddb/transaction-complete-with-js-recursion.html.
        * storage/indexeddb/resources/transaction-crash-in-tasks.js: Copied from LayoutTests/storage/indexeddb/transaction-crash-in-tasks.html.
        * storage/indexeddb/resources/transaction-ordering.js: Copied from LayoutTests/storage/indexeddb/transaction-ordering.html.
        * storage/indexeddb/resources/transaction-overlapping.js: Copied from LayoutTests/storage/indexeddb/transaction-overlapping.html.
        * storage/indexeddb/resources/version-change-event-basic.js: Copied from LayoutTests/storage/indexeddb/version-change-event-basic.html.
        * storage/indexeddb/resources/version-change-event.js: Copied from LayoutTests/storage/indexeddb/version-change-event.html.
        * storage/indexeddb/structured-clone.html:
        * storage/indexeddb/transaction-complete-with-js-recursion-cross-frame.html:
        * storage/indexeddb/transaction-complete-with-js-recursion.html:
        * storage/indexeddb/transaction-crash-in-tasks.html:
        * storage/indexeddb/transaction-ordering.html:
        * storage/indexeddb/transaction-overlapping.html:
        * storage/indexeddb/transaction-starvation.html:
        * storage/indexeddb/version-change-event-basic.html:
        * storage/indexeddb/version-change-event.html:

2016-01-19  Javier Fernandez  <jfernandez@igalia.com>

        [css-grid][css-align] justify-self stretch is not applied for img elements
        https://bugs.webkit.org/show_bug.cgi?id=153206

        Reviewed by Darin Adler.

        Test to verify Replaced Elements, like images, are stretched in the inline
        axis, when fulfilling the Box Alignment restrictions on this regard.

        * fast/css-grid-layout/grid-align-stretching-replaced-items-expected.txt: Added.
        * fast/css-grid-layout/grid-align-stretching-replaced-items.html: Added.

2016-01-19  Ryosuke Niwa  <rniwa@webkit.org>

        Text::splitText doesn't update Range end points anchored on parent nodes
        https://bugs.webkit.org/show_bug.cgi?id=153227

        Reviewed by Antti Koivisto.

        Added a regression test since the rebaselined W3C test is incomprehensible.

        * fast/dom/Range/update-range-in-split-text-expected.txt: Added.
        * fast/dom/Range/update-range-in-split-text.html: Added.

2016-01-19  Ryosuke Niwa  <rniwa@webkit.org>

        innerHTML should always add a mutation record for removing all children
        https://bugs.webkit.org/show_bug.cgi?id=148782
        <rdar://problem/22571962>

        Reviewed by Antti Koivisto.

        Add a more comprehensive test for replacing a single text node with innerHTML's setter to ensure
        WebKit's optimization to avoid replacing the node should not be observable by scripts in any way.

        * fast/dom/innerHTML-single-text-node-expected.txt: Added.
        * fast/dom/innerHTML-single-text-node.html: Added.

2016-01-18  Ryosuke Niwa  <rniwa@webkit.org>

        createAttribute should lowercase the attribute name in a HTML document
        https://bugs.webkit.org/show_bug.cgi?id=153112

        Reviewed by Darin Adler.

        Update tests, rebaseline tests, and add more test cases as needed.

        createAttribute lowercases localName and getAttributeNode finds attribute ignoring cases
        whereas createAttributeNS preserves localName's case and getAttributeNodeNS finds attribute preserving cases

        * fast/dom/Element/mozilla-dom-base-tests/test_bug1075702-expected.txt: Since the test is adding "aa" as well
        as "AA" as Attr nodes, we should be able to get both.
        * fast/dom/Element/mozilla-dom-base-tests/test_bug1075702.xhtml: Renamed from .html file since test cases here
        are more relevant for XHTML documents.

        * fast/dom/Element/getAttribute-check-case-sensitivity-expected.txt:
        * fast/dom/Element/script-tests/getAttribute-check-case-sensitivity.js:
        (testGetAttributeNodeMixedCase): Change the test case to retrieve the attribute name with lowercase name
        since createAttribute always lowercases the name in a HTML document.
        (testAttribNodeNamePreservesCase): Use getAttributeNode instead of getAttributeNodeNS since the former does
        case insensitive lookup as needed here.
        (testAttribNodeNamePreservesCaseGetNode): Ditto.
        (testAttribNodeNamePreservesCaseGetNode2): Ditto. Use createAttributeNS to create a case-preserving Attr node.

        * fast/dom/Element/setAttributeNode-case-insensitivity-expected.txt:
        * fast/dom/Element/setAttributeNode-case-insensitivity.html: Since getAttributeNode does a case-insensitive
        lookup, we should be getting the same Attr node for both 'style' and 'STYLE'.

        * fast/dom/Element/setAttributeNode-for-existing-attribute-expected.txt: Rebaselined. This is a progression
        since we're now getting "green" when querying style.backgroundColor as expected.

        * fast/dom/Element/setAttributeNode-overriding-lowercase-values-1-expected.txt:
        * fast/dom/Element/setAttributeNode-overriding-lowercase-values-1.html: Updated test cases for new behavior.

        * fast/dom/Element/setAttributeNode-overriding-lowercase-values-1-xml-expected.txt: Added.
        * fast/dom/Element/setAttributeNode-overriding-lowercase-values-1-xml.xhtml: Added. Test behaviors in a XML
        document.

2016-01-18  Brady Eidson  <beidson@apple.com>

        Modern IDB: Add private-browsing variant for many IDB tests, and enable private browsing in Modern IDB.
        https://bugs.webkit.org/show_bug.cgi?id=153179

        Reviewed by Darin Adler.

        Update many expectations files to skip some of the new tests on some platforms:
        * TestExpectations:
        * platform/mac-wk1/TestExpectations:
        * platform/wk2/TestExpectations:
        
        Add a special case for URLs that end with "-private.html" to enable private browsing:
        * resources/js-test.js:
        
        Add a whole bunch of -private.html wrappers along with new test expectations, along 
        with some minor test changes to remove unnecessary ambiguity due to .html filename:
        * storage/indexeddb/aborted-versionchange-closes-private-expected.txt: Added.
        * storage/indexeddb/aborted-versionchange-closes-private.html: Added.
        * storage/indexeddb/basics-private-expected.txt: Added.
        * storage/indexeddb/basics-private.html: Added.
        * storage/indexeddb/create-and-remove-object-store-private-expected.txt: Added.
        * storage/indexeddb/create-and-remove-object-store-private.html: Added.
        * storage/indexeddb/create-object-store-options-private-expected.txt: Added.
        * storage/indexeddb/create-object-store-options-private.html: Added.
        * storage/indexeddb/createIndex-after-failure-private-expected.txt: Added.
        * storage/indexeddb/createIndex-after-failure-private.html: Added.
        * storage/indexeddb/createObjectStore-name-argument-required-private-expected.txt: Added.
        * storage/indexeddb/createObjectStore-name-argument-required-private.html: Added.
        * storage/indexeddb/createObjectStore-null-name-private-expected.txt: Added.
        * storage/indexeddb/createObjectStore-null-name-private.html: Added.
        * storage/indexeddb/cursor-added-bug-private-expected.txt: Added.
        * storage/indexeddb/cursor-added-bug-private.html: Added.
        * storage/indexeddb/cursor-advance-private-expected.txt: Added.
        * storage/indexeddb/cursor-advance-private.html: Added.
        * storage/indexeddb/cursor-basics-private-expected.txt: Added.
        * storage/indexeddb/cursor-basics-private.html: Added.
        * storage/indexeddb/cursor-continue-dir-private-expected.txt: Added.
        * storage/indexeddb/cursor-continue-dir-private.html: Added.
        * storage/indexeddb/cursor-continue-private-expected.txt: Added.
        * storage/indexeddb/cursor-continue-private.html: Added.
        * storage/indexeddb/cursor-continue-validity-private-expected.txt: Added.
        * storage/indexeddb/cursor-continue-validity-private.html: Added.
        * storage/indexeddb/cursor-delete-private-expected.txt: Added.
        * storage/indexeddb/cursor-delete-private.html: Added.
        * storage/indexeddb/cursor-finished-private-expected.txt: Added.
        * storage/indexeddb/cursor-finished-private.html: Added.
        * storage/indexeddb/cursor-inconsistency-private-expected.txt: Added.
        * storage/indexeddb/cursor-inconsistency-private.html: Added.
        * storage/indexeddb/cursor-index-delete-private-expected.txt: Added.
        * storage/indexeddb/cursor-index-delete-private.html: Added.
        * storage/indexeddb/cursor-key-order-private-expected.txt: Added.
        * storage/indexeddb/cursor-key-order-private.html: Added.
        * storage/indexeddb/cursor-prev-no-duplicate-private-expected.txt: Added.
        * storage/indexeddb/cursor-prev-no-duplicate-private.html: Added.
        * storage/indexeddb/cursor-primary-key-order-private-expected.txt: Added.
        * storage/indexeddb/cursor-primary-key-order-private.html: Added.
        * storage/indexeddb/cursor-properties-private-expected.txt: Added.
        * storage/indexeddb/cursor-properties-private.html: Added.
        * storage/indexeddb/cursor-reverse-bug-private-expected.txt: Added.
        * storage/indexeddb/cursor-reverse-bug-private.html: Added.
        * storage/indexeddb/cursor-skip-deleted-private-expected.txt: Added.
        * storage/indexeddb/cursor-skip-deleted-private.html: Added.
        * storage/indexeddb/cursor-update-private-expected.txt: Added.
        * storage/indexeddb/cursor-update-private.html: Added.
        * storage/indexeddb/cursor-update-value-argument-required-private-expected.txt: Added.
        * storage/indexeddb/cursor-update-value-argument-required-private.html: Added.
        * storage/indexeddb/cursor-value-private-expected.txt: Added.
        * storage/indexeddb/cursor-value-private.html: Added.
        * storage/indexeddb/database-basics-private-expected.txt: Added.
        * storage/indexeddb/database-basics-private.html: Added.
        * storage/indexeddb/database-close-private-expected.txt: Added.
        * storage/indexeddb/database-close-private.html: Added.
        * storage/indexeddb/database-closepending-flag-private-expected.txt: Added.
        * storage/indexeddb/database-closepending-flag-private.html: Added.
        * storage/indexeddb/database-deletepending-flag-private-expected.txt: Added.
        * storage/indexeddb/database-deletepending-flag-private.html: Added.
        * storage/indexeddb/database-name-undefined-private-expected.txt: Added.
        * storage/indexeddb/database-name-undefined-private.html: Added.
        * storage/indexeddb/database-odd-names-private-expected.txt: Added.
        * storage/indexeddb/database-odd-names-private.html: Added.
        * storage/indexeddb/database-quota-private-expected.txt: Added.
        * storage/indexeddb/database-quota-private.html: Added.
        * storage/indexeddb/database-wrapper-private-expected.txt: Added.
        * storage/indexeddb/database-wrapper-private.html: Added.
        * storage/indexeddb/delete-closed-database-object-private-expected.txt: Added.
        * storage/indexeddb/delete-closed-database-object-private.html: Added.
        * storage/indexeddb/delete-in-upgradeneeded-close-in-open-success-private-expected.txt: Added.
        * storage/indexeddb/delete-in-upgradeneeded-close-in-open-success-private.html: Added.
        * storage/indexeddb/delete-in-upgradeneeded-close-in-versionchange-private-expected.txt: Added.
        * storage/indexeddb/delete-in-upgradeneeded-close-in-versionchange-private.html: Added.
        * storage/indexeddb/delete-range-private-expected.txt: Added.
        * storage/indexeddb/delete-range-private.html: Added.
        * storage/indexeddb/deleteIndex-private-expected.txt: Added.
        * storage/indexeddb/deleteIndex-private.html: Added.
        * storage/indexeddb/deleteObjectStore-name-argument-required-private-expected.txt: Added.
        * storage/indexeddb/deleteObjectStore-name-argument-required-private.html: Added.
        * storage/indexeddb/deleteObjectStore-null-name-private-expected.txt: Added.
        * storage/indexeddb/deleteObjectStore-null-name-private.html: Added.
        * storage/indexeddb/deleted-objects-private-expected.txt: Added.
        * storage/indexeddb/deleted-objects-private.html: Added.
        * storage/indexeddb/deletedatabase-blocked-private-expected.txt: Added.
        * storage/indexeddb/deletedatabase-blocked-private.html: Added.
        * storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-private-expected.txt: Added.
        * storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-private.html: Added.
        * storage/indexeddb/deletedatabase-delayed-by-versionchange-private-expected.txt: Added.
        * storage/indexeddb/deletedatabase-not-blocked-private-expected.txt: Added.
        * storage/indexeddb/deletedatabase-not-blocked-private.html: Added.
        * storage/indexeddb/dont-wedge-private-expected.txt: Added.
        * storage/indexeddb/dont-wedge-private.html: Added.
        * storage/indexeddb/duplicates-private-expected.txt: Added.
        * storage/indexeddb/duplicates-private.html: Added.
        * storage/indexeddb/error-causes-abort-by-default-private-expected.txt: Added.
        * storage/indexeddb/error-causes-abort-by-default-private.html: Added.
        * storage/indexeddb/events-private-expected.txt: Added.
        * storage/indexeddb/events-private.html: Added.
        * storage/indexeddb/exception-in-event-aborts-private-expected.txt: Added.
        * storage/indexeddb/exception-in-event-aborts-private.html: Added.
        * storage/indexeddb/exceptions-private-expected.txt: Added.
        * storage/indexeddb/exceptions-private.html: Added.
        * storage/indexeddb/factory-cmp-private-expected.txt: Added.
        * storage/indexeddb/factory-cmp-private.html: Added.
        * storage/indexeddb/factory-deletedatabase-private-expected.txt: Added.
        * storage/indexeddb/factory-deletedatabase-private.html: Added.
        * storage/indexeddb/get-keyrange-private-expected.txt: Added.
        * storage/indexeddb/get-keyrange-private.html: Added.
        * storage/indexeddb/index-basics-private-expected.txt: Added.
        * storage/indexeddb/index-basics-private.html: Added.
        * storage/indexeddb/index-count-private-expected.txt: Added.
        * storage/indexeddb/index-count-private.html: Added.
        * storage/indexeddb/index-cursor-private-expected.txt: Added.
        * storage/indexeddb/index-cursor-private.html: Added.
        * storage/indexeddb/index-duplicate-keypaths-private-expected.txt: Added.
        * storage/indexeddb/index-duplicate-keypaths-private.html: Added.
        * storage/indexeddb/index-get-key-argument-required-private-expected.txt: Added.
        * storage/indexeddb/index-get-key-argument-required-private.html: Added.
        * storage/indexeddb/index-multientry-private-expected.txt: Added.
        * storage/indexeddb/index-multientry-private.html: Added.
        * storage/indexeddb/index-population-private-expected.txt: Added.
        * storage/indexeddb/index-population-private.html: Added.
        * storage/indexeddb/index-unique-private-expected.txt: Added.
        * storage/indexeddb/index-unique-private.html: Added.
        * storage/indexeddb/interfaces-private-expected.txt: Added.
        * storage/indexeddb/interfaces-private.html: Added.
        * storage/indexeddb/intversion-abort-in-initial-upgradeneeded-private-expected.txt: Added.
        * storage/indexeddb/intversion-abort-in-initial-upgradeneeded-private.html: Added.
        * storage/indexeddb/intversion-bad-parameters-private-expected.txt: Added.
        * storage/indexeddb/intversion-bad-parameters-private.html: Added.
        * storage/indexeddb/intversion-blocked-private-expected.txt: Added.
        * storage/indexeddb/intversion-blocked-private.html: Added.
        * storage/indexeddb/intversion-close-between-events-private-expected.txt: Added.
        * storage/indexeddb/intversion-close-between-events-private.html: Added.
        * storage/indexeddb/intversion-close-in-oncomplete-private-expected.txt: Added.
        * storage/indexeddb/intversion-close-in-oncomplete-private.html: Added.
        * storage/indexeddb/intversion-close-in-upgradeneeded-private-expected.txt: Added.
        * storage/indexeddb/intversion-close-in-upgradeneeded-private.html: Added.
        * storage/indexeddb/intversion-encoding-private-expected.txt: Added.
        * storage/indexeddb/intversion-encoding-private.html: Added.
        * storage/indexeddb/intversion-gated-on-delete-private-expected.txt: Added.
        * storage/indexeddb/intversion-gated-on-delete-private.html: Added.
        * storage/indexeddb/intversion-long-queue-private-expected.txt: Added.
        * storage/indexeddb/intversion-long-queue-private.html: Added.
        * storage/indexeddb/intversion-omit-parameter-private-expected.txt: Added.
        * storage/indexeddb/intversion-omit-parameter-private.html: Added.
        * storage/indexeddb/intversion-open-in-upgradeneeded-private-expected.txt: Added.
        * storage/indexeddb/intversion-open-in-upgradeneeded-private.html: Added.
        * storage/indexeddb/intversion-open-with-version-private-expected.txt: Added.
        * storage/indexeddb/intversion-open-with-version-private.html: Added.
        * storage/indexeddb/intversion-pending-version-changes-ascending-private-expected.txt: Added.
        * storage/indexeddb/intversion-pending-version-changes-ascending-private.html: Added.
        * storage/indexeddb/intversion-pending-version-changes-descending-private-expected.txt: Added.
        * storage/indexeddb/intversion-pending-version-changes-descending-private.html: Added.
        * storage/indexeddb/intversion-pending-version-changes-same-private-expected.txt: Added.
        * storage/indexeddb/intversion-pending-version-changes-same-private.html: Added.
        * storage/indexeddb/intversion-persistence-private-expected.txt: Added.
        * storage/indexeddb/intversion-persistence-private.html: Added.
        * storage/indexeddb/intversion-revert-on-abort-private-expected.txt: Added.
        * storage/indexeddb/intversion-revert-on-abort-private.html: Added.
        * storage/indexeddb/intversion-two-opens-no-versions-private-expected.txt: Added.
        * storage/indexeddb/intversion-two-opens-no-versions-private.html: Added.
        * storage/indexeddb/intversion-upgrades-private-expected.txt: Added.
        * storage/indexeddb/intversion-upgrades-private.html: Added.
        * storage/indexeddb/invalid-keys-private-expected.txt: Added.
        * storage/indexeddb/invalid-keys-private.html: Added.
        * storage/indexeddb/key-generator-private-expected.txt: Added.
        * storage/indexeddb/key-generator-private.html: Added.
        * storage/indexeddb/key-sort-order-across-types-private-expected.txt: Added.
        * storage/indexeddb/key-sort-order-across-types-private.html: Added.
        * storage/indexeddb/key-sort-order-date-private-expected.txt: Added.
        * storage/indexeddb/key-sort-order-date-private.html: Added.
        * storage/indexeddb/key-type-array-private-expected.txt: Added.
        * storage/indexeddb/key-type-array-private.html: Added.
        * storage/indexeddb/key-type-binary-private-expected.txt: Added.
        * storage/indexeddb/key-type-binary-private.html: Added.
        * storage/indexeddb/key-type-infinity-private-expected.txt: Added.
        * storage/indexeddb/key-type-infinity-private.html: Added.
        * storage/indexeddb/keypath-arrays-private-expected.txt: Added.
        * storage/indexeddb/keypath-arrays-private.html: Added.
        * storage/indexeddb/keypath-basics-private-expected.txt: Added.
        * storage/indexeddb/keypath-basics-private.html: Added.
        * storage/indexeddb/keypath-edges-private-expected.txt: Added.
        * storage/indexeddb/keypath-edges-private.html: Added.
        * storage/indexeddb/keypath-fetch-key-private-expected.txt: Added.
        * storage/indexeddb/keypath-fetch-key-private.html: Added.
        * storage/indexeddb/keypath-intrinsic-properties-private-expected.txt: Added.
        * storage/indexeddb/keypath-intrinsic-properties-private.html: Added.
        * storage/indexeddb/keyrange-private-expected.txt: Added.
        * storage/indexeddb/keyrange-private.html: Added.
        * storage/indexeddb/keyrange-required-arguments-private-expected.txt: Added.
        * storage/indexeddb/keyrange-required-arguments-private.html: Added.
        * storage/indexeddb/lazy-index-types-private-expected.txt: Added.
        * storage/indexeddb/lazy-index-types-private.html: Added.
        * storage/indexeddb/legacy-constants-private-expected.txt: Added.
        * storage/indexeddb/legacy-constants-private.html: Added.
        * storage/indexeddb/list-ordering-private-expected.txt: Added.
        * storage/indexeddb/list-ordering-private.html: Added.
        * storage/indexeddb/metadata-private-expected.txt: Added.
        * storage/indexeddb/metadata-private.html: Added.
        * storage/indexeddb/mutating-cursor-private-expected.txt: Added.
        * storage/indexeddb/mutating-cursor-private.html: Added.
        * storage/indexeddb/objectStore-required-arguments-private-expected.txt: Added.
        * storage/indexeddb/objectStore-required-arguments-private.html: Added.
        * storage/indexeddb/objectstore-autoincrement-private-expected.txt: Added.
        * storage/indexeddb/objectstore-autoincrement-private.html: Added.
        * storage/indexeddb/objectstore-basics-private-expected.txt: Added.
        * storage/indexeddb/objectstore-basics-private.html: Added.
        * storage/indexeddb/objectstore-clear-private-expected.txt: Added.
        * storage/indexeddb/objectstore-clear-private.html: Added.
        * storage/indexeddb/objectstore-count-private-expected.txt: Added.
        * storage/indexeddb/objectstore-count-private.html: Added.
        * storage/indexeddb/objectstore-cursor-private-expected.txt: Added.
        * storage/indexeddb/objectstore-cursor-private.html: Added.
        * storage/indexeddb/objectstore-removeobjectstore-private-expected.txt: Added.
        * storage/indexeddb/objectstore-removeobjectstore-private.html: Added.
        * storage/indexeddb/odd-strings-private-expected.txt: Added.
        * storage/indexeddb/odd-strings-private.html: Added.
        * storage/indexeddb/open-cursor-private-expected.txt: Added.
        * storage/indexeddb/open-cursor-private.html: Added.
        * storage/indexeddb/open-during-transaction-private-expected.txt: Added.
        * storage/indexeddb/open-during-transaction-private.html: Added.
        * storage/indexeddb/open-ordering-private-expected.txt: Added.
        * storage/indexeddb/open-ordering-private.html: Added.
        * storage/indexeddb/opencursor-key-private-expected.txt: Added.
        * storage/indexeddb/opencursor-key-private.html: Added.
        * storage/indexeddb/pending-activity-private-expected.txt: Added.
        * storage/indexeddb/pending-activity-private.html: Added.
        * storage/indexeddb/pending-version-change-on-exit-private-expected.txt: Added.
        * storage/indexeddb/pending-version-change-on-exit-private.html: Added.
        * storage/indexeddb/pending-version-change-stuck-private-expected.txt: Added.
        * storage/indexeddb/pending-version-change-stuck-private.html: Added.
        * storage/indexeddb/persistence-expected.txt:
        * storage/indexeddb/persistence-private-expected.txt: Copied from LayoutTests/storage/indexeddb/persistence-expected.txt.
        * storage/indexeddb/persistence-private.html: Added.
        * storage/indexeddb/prefetch-bugfix-108071-private-expected.txt: Added.
        * storage/indexeddb/prefetch-bugfix-108071-private.html: Added.
        * storage/indexeddb/queued-commands-private-expected.txt: Added.
        * storage/indexeddb/queued-commands-private.html: Added.
        * storage/indexeddb/readonly-private-expected.txt: Added.
        * storage/indexeddb/readonly-private.html: Added.
        * storage/indexeddb/readonly-properties-private-expected.txt: Added.
        * storage/indexeddb/readonly-properties-private.html: Added.
        * storage/indexeddb/removed-private-expected.txt: Added.
        * storage/indexeddb/removed-private.html: Added.
        * storage/indexeddb/request-continue-abort-private-expected.txt: Added.
        * storage/indexeddb/request-continue-abort-private.html: Added.
        * storage/indexeddb/request-event-propagation-private-expected.txt: Added.
        * storage/indexeddb/request-event-propagation-private.html: Added.
        * storage/indexeddb/resources/persistence.js:
        * storage/indexeddb/set_version_blocked-private-expected.txt: Added.
        * storage/indexeddb/set_version_blocked-private.html: Added.
        * storage/indexeddb/setversion-blocked-by-versionchange-close-private-expected.txt: Added.
        * storage/indexeddb/setversion-blocked-by-versionchange-close-private.html: Added.
        * storage/indexeddb/setversion-not-blocked-private-expected.txt: Added.
        * storage/indexeddb/setversion-not-blocked-private.html: Added.
        * storage/indexeddb/transaction-abort-private-expected.txt: Added.
        * storage/indexeddb/transaction-abort-private.html: Added.
        * storage/indexeddb/transaction-active-flag-private-expected.txt: Added.
        * storage/indexeddb/transaction-active-flag-private.html: Added.
        * storage/indexeddb/transaction-after-close-private-expected.txt: Added.
        * storage/indexeddb/transaction-after-close-private.html: Added.
        * storage/indexeddb/transaction-and-objectstore-calls-private-expected.txt: Added.
        * storage/indexeddb/transaction-and-objectstore-calls-private.html: Added.
        * storage/indexeddb/transaction-basics-private-expected.txt: Added.
        * storage/indexeddb/transaction-basics-private.html: Added.
        * storage/indexeddb/transaction-complete-workers-private-expected.txt: Added.
        * storage/indexeddb/transaction-complete-workers-private.html: Added.
        * storage/indexeddb/transaction-coordination-across-databases-private-expected.txt: Added.
        * storage/indexeddb/transaction-coordination-across-databases-private.html: Added.
        * storage/indexeddb/transaction-coordination-within-database-private-expected.txt: Added.
        * storage/indexeddb/transaction-coordination-within-database-private.html: Added.
        * storage/indexeddb/transaction-crash-on-abort-private-expected.txt: Added.
        * storage/indexeddb/transaction-crash-on-abort-private.html: Added.
        * storage/indexeddb/transaction-error-private-expected.txt: Added.
        * storage/indexeddb/transaction-error-private.html: Added.
        * storage/indexeddb/transaction-event-propagation-private-expected.txt: Added.
        * storage/indexeddb/transaction-event-propagation-private.html: Added.
        * storage/indexeddb/transaction-read-only-private-expected.txt: Added.
        * storage/indexeddb/transaction-read-only-private.html: Added.
        * storage/indexeddb/transaction-readwrite-exclusive-private-expected.txt: Added.
        * storage/indexeddb/transaction-readwrite-exclusive-private.html: Added.
        * storage/indexeddb/transaction-rollback-private-expected.txt: Added.
        * storage/indexeddb/transaction-rollback-private.html: Added.
        * storage/indexeddb/transaction-scope-sequencing-private-expected.txt: Added.
        * storage/indexeddb/transaction-scope-sequencing-private.html: Added.
        * storage/indexeddb/transaction-starvation-private-expected.txt: Added.
        * storage/indexeddb/transaction-storeNames-required-private-expected.txt: Added.
        * storage/indexeddb/transaction-storeNames-required-private.html: Added.
        * storage/indexeddb/unblocked-version-changes-private-expected.txt: Added.
        * storage/indexeddb/unblocked-version-changes-private.html: Added.
        * storage/indexeddb/unprefix-private-expected.txt: Added.
        * storage/indexeddb/unprefix-private.html: Added.
        * storage/indexeddb/value-undefined-private-expected.txt: Added.
        * storage/indexeddb/value-undefined-private.html: Added.
        * storage/indexeddb/values-odd-types-private-expected.txt: Added.
        * storage/indexeddb/values-odd-types-private.html: Added.
        * storage/indexeddb/version-change-abort-private-expected.txt: Added.
        * storage/indexeddb/version-change-abort-private.html: Added.
        * storage/indexeddb/version-change-exclusive-private-expected.txt: Added.
        * storage/indexeddb/version-change-exclusive-private.html: Added.
        * storage/indexeddb/versionchangerequest-activedomobject-private-expected.txt: Added.
        * storage/indexeddb/versionchangerequest-activedomobject-private.html: Added.

2016-01-18  Nan Wang  <n_wang@apple.com>

        AX: [Mac] Implement next/previous text marker functions using TextIterator
        https://bugs.webkit.org/show_bug.cgi?id=152728

        Reviewed by Chris Fleizach.

        * accessibility/mac/previous-next-text-marker-expected.txt: Added.
        * accessibility/mac/previous-next-text-marker.html: Added.
        * accessibility/mac/text-marker-with-user-select-none-expected.txt: Added.
        * accessibility/mac/text-marker-with-user-select-none.html: Added.

2016-01-17  Simon Fraser  <simon.fraser@apple.com>

        More displaylist tests, and minor cleanup
        https://bugs.webkit.org/show_bug.cgi?id=153198

        Reviewed by Zalan Bujtas.

        A couple more display list tests that check that the computed extent of an item
        includes shadows and transforms.

        WK1 results differ in that they disable should-subpixel-quantize-fonts in the state
        (which is a bug).

        Move some shared JS into a helper file.

        * displaylists/extent-includes-shadow-expected.txt: Added.
        * displaylists/extent-includes-shadow.html: Added.
        * displaylists/extent-includes-transforms-expected.txt: Added.
        * displaylists/extent-includes-transforms.html: Added.
        * displaylists/layer-dispay-list.html:
        * displaylists/resources/dump-target-display-list.js: Added.
        (doTest):
        * platform/mac-wk1/displaylists/extent-includes-shadow-expected.txt: Added.
        * platform/mac-wk1/displaylists/extent-includes-transforms-expected.txt: Added.

2016-01-17  Brady Eidson  <beidson@apple.com>

        Modern IDB: .js test files should not log database names.
        https://bugs.webkit.org/show_bug.cgi?id=153181

        Reviewed by Alex Christensen.

        We'll be sharing .js files as well as test expectations between different HTML test files,
        and logging the filename is counter to this goal, as it will change depending on the HTML
        driver running the test.
        
        * storage/indexeddb/resources/shared.js:
        (setDBNameFromPath): eval() setting the filename instead of evalAndLog().

        * platform/wk2/storage/indexeddb/aborted-versionchange-closes-expected.txt:
        * platform/wk2/storage/indexeddb/create-and-remove-object-store-expected.txt:
        * platform/wk2/storage/indexeddb/cursor-continue-dir-expected.txt:
        * platform/wk2/storage/indexeddb/cursor-continue-expected.txt:
        * platform/wk2/storage/indexeddb/cursor-finished-expected.txt:
        * platform/wk2/storage/indexeddb/database-basics-expected.txt:
        * platform/wk2/storage/indexeddb/index-count-expected.txt:
        * platform/wk2/storage/indexeddb/intversion-abort-in-initial-upgradeneeded-expected.txt:
        * platform/wk2/storage/indexeddb/intversion-close-in-oncomplete-expected.txt:
        * platform/wk2/storage/indexeddb/intversion-close-in-upgradeneeded-expected.txt:
        * platform/wk2/storage/indexeddb/invalid-keys-expected.txt:
        * platform/wk2/storage/indexeddb/key-type-array-expected.txt:
        * platform/wk2/storage/indexeddb/keypath-arrays-expected.txt:
        * platform/wk2/storage/indexeddb/keypath-edges-expected.txt:
        * platform/wk2/storage/indexeddb/mozilla/bad-keypath-expected.txt:
        * platform/wk2/storage/indexeddb/mozilla/clear-expected.txt:
        * platform/wk2/storage/indexeddb/mozilla/create-objectstore-basics-expected.txt:
        * platform/wk2/storage/indexeddb/mozilla/cursors-expected.txt:
        * platform/wk2/storage/indexeddb/mozilla/key-requirements-delete-null-key-expected.txt:
        * platform/wk2/storage/indexeddb/mozilla/key-requirements-inline-and-passed-expected.txt:
        * platform/wk2/storage/indexeddb/mozilla/key-requirements-put-no-key-expected.txt:
        * platform/wk2/storage/indexeddb/mozilla/key-requirements-put-null-key-expected.txt:
        * platform/wk2/storage/indexeddb/mozilla/readonly-transactions-expected.txt:
        * platform/wk2/storage/indexeddb/object-lookups-in-versionchange-expected.txt:
        * platform/wk2/storage/indexeddb/objectstore-count-expected.txt:
        * platform/wk2/storage/indexeddb/open-cursor-expected.txt:
        * platform/wk2/storage/indexeddb/request-result-cache-expected.txt:
        * platform/wk2/storage/indexeddb/transaction-abort-expected.txt:
        * platform/wk2/storage/indexeddb/transaction-active-flag-expected.txt:
        * platform/wk2/storage/indexeddb/transaction-after-close-expected.txt:
        * platform/wk2/storage/indexeddb/transaction-read-only-expected.txt:
        * platform/wk2/storage/indexeddb/version-change-exclusive-expected.txt:
        * storage/indexeddb/aborted-versionchange-closes-expected.txt:
        * storage/indexeddb/clone-exception-expected.txt:
        * storage/indexeddb/closed-cursor-expected.txt:
        * storage/indexeddb/create-and-remove-object-store-expected.txt:
        * storage/indexeddb/create-object-store-options-expected.txt:
        * storage/indexeddb/createIndex-after-failure-expected.txt:
        * storage/indexeddb/createObjectStore-name-argument-required-expected.txt:
        * storage/indexeddb/createObjectStore-null-name-expected.txt:
        * storage/indexeddb/cursor-added-bug-expected.txt:
        * storage/indexeddb/cursor-advance-expected.txt:
        * storage/indexeddb/cursor-basics-expected.txt:
        * storage/indexeddb/cursor-cast-expected.txt:
        * storage/indexeddb/cursor-continue-dir-expected.txt:
        * storage/indexeddb/cursor-continue-expected.txt:
        * storage/indexeddb/cursor-continue-validity-expected.txt:
        * storage/indexeddb/cursor-delete-expected.txt:
        * storage/indexeddb/cursor-finished-expected.txt:
        * storage/indexeddb/cursor-inconsistency-expected.txt:
        * storage/indexeddb/cursor-index-delete-expected.txt:
        * storage/indexeddb/cursor-key-order-expected.txt:
        * storage/indexeddb/cursor-overloads-expected.txt:
        * storage/indexeddb/cursor-prev-no-duplicate-expected.txt:
        * storage/indexeddb/cursor-primary-key-order-expected.txt:
        * storage/indexeddb/cursor-properties-expected.txt:
        * storage/indexeddb/cursor-reverse-bug-expected.txt:
        * storage/indexeddb/cursor-skip-deleted-expected.txt:
        * storage/indexeddb/cursor-update-expected.txt:
        * storage/indexeddb/cursor-update-value-argument-required-expected.txt:
        * storage/indexeddb/cursor-value-expected.txt:
        * storage/indexeddb/database-basics-expected.txt:
        * storage/indexeddb/database-close-expected.txt:
        * storage/indexeddb/database-closepending-flag-expected.txt:
        * storage/indexeddb/database-deletepending-flag-expected.txt:
        * storage/indexeddb/database-wrapper-expected.txt:
        * storage/indexeddb/delete-closed-database-object-expected.txt:
        * storage/indexeddb/delete-in-upgradeneeded-close-in-open-success-expected.txt:
        * storage/indexeddb/delete-in-upgradeneeded-close-in-versionchange-expected.txt:
        * storage/indexeddb/delete-range-expected.txt:
        * storage/indexeddb/deleteIndex-expected.txt:
        * storage/indexeddb/deleteObjectStore-name-argument-required-expected.txt:
        * storage/indexeddb/deleteObjectStore-null-name-expected.txt:
        * storage/indexeddb/deleted-objects-expected.txt:
        * storage/indexeddb/deletedatabase-blocked-expected.txt:
        * storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-expected.txt:
        * storage/indexeddb/deletedatabase-not-blocked-expected.txt:
        * storage/indexeddb/deletedatabase-transaction-expected.txt:
        * storage/indexeddb/dont-wedge-expected.txt:
        * storage/indexeddb/duplicates-expected.txt:
        * storage/indexeddb/error-causes-abort-by-default-expected.txt:
        * storage/indexeddb/exception-in-event-aborts-expected.txt:
        * storage/indexeddb/exceptions-expected.txt:
        * storage/indexeddb/factory-deletedatabase-expected.txt:
        * storage/indexeddb/get-keyrange-expected.txt:
        * storage/indexeddb/index-basics-expected.txt:
        * storage/indexeddb/index-count-expected.txt:
        * storage/indexeddb/index-cursor-expected.txt:
        * storage/indexeddb/index-duplicate-keypaths-expected.txt:
        * storage/indexeddb/index-get-key-argument-required-expected.txt:
        * storage/indexeddb/index-multientry-expected.txt:
        * storage/indexeddb/index-population-expected.txt:
        * storage/indexeddb/index-unique-expected.txt:
        * storage/indexeddb/intversion-abort-in-initial-upgradeneeded-expected.txt:
        * storage/indexeddb/intversion-bad-parameters-expected.txt:
        * storage/indexeddb/intversion-blocked-expected.txt:
        * storage/indexeddb/intversion-close-between-events-expected.txt:
        * storage/indexeddb/intversion-close-in-oncomplete-expected.txt:
        * storage/indexeddb/intversion-close-in-upgradeneeded-expected.txt:
        * storage/indexeddb/intversion-encoding-expected.txt:
        * storage/indexeddb/intversion-gated-on-delete-expected.txt:
        * storage/indexeddb/intversion-long-queue-expected.txt:
        * storage/indexeddb/intversion-omit-parameter-expected.txt:
        * storage/indexeddb/intversion-open-in-upgradeneeded-expected.txt:
        * storage/indexeddb/intversion-open-with-version-expected.txt:
        * storage/indexeddb/intversion-pending-version-changes-ascending-expected.txt:
        * storage/indexeddb/intversion-pending-version-changes-descending-expected.txt:
        * storage/indexeddb/intversion-pending-version-changes-same-expected.txt:
        * storage/indexeddb/intversion-persistence-expected.txt:
        * storage/indexeddb/intversion-revert-on-abort-expected.txt:
        * storage/indexeddb/intversion-two-opens-no-versions-expected.txt:
        * storage/indexeddb/intversion-upgrades-expected.txt:
        * storage/indexeddb/invalid-keys-expected.txt:
        * storage/indexeddb/key-generator-expected.txt:
        * storage/indexeddb/key-sort-order-across-types-expected.txt:
        * storage/indexeddb/key-sort-order-date-expected.txt:
        * storage/indexeddb/key-type-array-expected.txt:
        * storage/indexeddb/key-type-binary-expected.txt:
        * storage/indexeddb/key-type-infinity-expected.txt:
        * storage/indexeddb/keypath-arrays-expected.txt:
        * storage/indexeddb/keypath-basics-expected.txt:
        * storage/indexeddb/keypath-edges-expected.txt:
        * storage/indexeddb/keypath-fetch-key-expected.txt:
        * storage/indexeddb/keypath-intrinsic-properties-expected.txt:
        * storage/indexeddb/lazy-index-population-expected.txt:
        * storage/indexeddb/lazy-index-types-expected.txt:
        * storage/indexeddb/list-ordering-expected.txt:
        * storage/indexeddb/metadata-expected.txt:
        * storage/indexeddb/metadata-race-expected.txt:
        * storage/indexeddb/modern/abort-objectstore-info-expected.txt:
        * storage/indexeddb/modern/blocked-open-db-requests-expected.txt:
        * storage/indexeddb/modern/memory-index-not-deleted-with-objectstore-expected.txt:
        * storage/indexeddb/modern/transaction-scheduler-4-expected.txt:
        * storage/indexeddb/mozilla/add-twice-failure-expected.txt:
        * storage/indexeddb/mozilla/autoincrement-indexes-expected.txt:
        * storage/indexeddb/mozilla/bad-keypath-expected.txt:
        * storage/indexeddb/mozilla/clear-expected.txt:
        * storage/indexeddb/mozilla/create-index-unique-expected.txt:
        * storage/indexeddb/mozilla/create-index-with-integer-keys-expected.txt:
        * storage/indexeddb/mozilla/create-objectstore-basics-expected.txt:
        * storage/indexeddb/mozilla/create-objectstore-null-name-expected.txt:
        * storage/indexeddb/mozilla/cursor-mutation-expected.txt:
        * storage/indexeddb/mozilla/cursor-mutation-objectstore-only-expected.txt:
        * storage/indexeddb/mozilla/cursor-update-updates-indexes-expected.txt:
        * storage/indexeddb/mozilla/cursors-expected.txt:
        * storage/indexeddb/mozilla/delete-result-expected.txt:
        * storage/indexeddb/mozilla/event-source-expected.txt:
        * storage/indexeddb/mozilla/global-data-expected.txt:
        * storage/indexeddb/mozilla/index-prev-no-duplicate-expected.txt:
        * storage/indexeddb/mozilla/indexes-expected.txt:
        * storage/indexeddb/mozilla/key-requirements-delete-null-key-expected.txt:
        * storage/indexeddb/mozilla/key-requirements-expected.txt:
        * storage/indexeddb/mozilla/key-requirements-inline-and-passed-expected.txt:
        * storage/indexeddb/mozilla/key-requirements-put-no-key-expected.txt:
        * storage/indexeddb/mozilla/key-requirements-put-null-key-expected.txt:
        * storage/indexeddb/mozilla/object-cursors-expected.txt:
        * storage/indexeddb/mozilla/object-identity-expected.txt:
        * storage/indexeddb/mozilla/object-store-inline-autoincrement-key-added-on-put-expected.txt:
        * storage/indexeddb/mozilla/object-store-remove-values-expected.txt:
        * storage/indexeddb/mozilla/objectstorenames-expected.txt:
        * storage/indexeddb/mozilla/odd-result-order-expected.txt:
        * storage/indexeddb/mozilla/put-get-values-expected.txt:
        * storage/indexeddb/mozilla/readonly-transactions-expected.txt:
        * storage/indexeddb/mozilla/readwrite-transactions-expected.txt:
        * storage/indexeddb/mozilla/readyState-expected.txt:
        * storage/indexeddb/mozilla/remove-index-expected.txt:
        * storage/indexeddb/mozilla/remove-objectstore-expected.txt:
        * storage/indexeddb/mozilla/versionchange-abort-expected.txt:
        * storage/indexeddb/mutating-cursor-expected.txt:
        * storage/indexeddb/noblobs-expected.txt:
        * storage/indexeddb/object-lookups-in-versionchange-expected.txt:
        * storage/indexeddb/objectStore-required-arguments-expected.txt:
        * storage/indexeddb/objectstore-autoincrement-expected.txt:
        * storage/indexeddb/objectstore-basics-expected.txt:
        * storage/indexeddb/objectstore-clear-expected.txt:
        * storage/indexeddb/objectstore-count-expected.txt:
        * storage/indexeddb/objectstore-cursor-expected.txt:
        * storage/indexeddb/objectstore-removeobjectstore-expected.txt:
        * storage/indexeddb/open-cursor-expected.txt:
        * storage/indexeddb/open-during-transaction-expected.txt:
        * storage/indexeddb/open-ordering-expected.txt:
        * storage/indexeddb/opencursor-key-expected.txt:
        * storage/indexeddb/optional-arguments-expected.txt:
        * storage/indexeddb/pending-activity-expected.txt:
        * storage/indexeddb/persistence-expected.txt:
        * storage/indexeddb/prefetch-bugfix-108071-expected.txt:
        * storage/indexeddb/prefetch-invalidation-expected.txt:
        * storage/indexeddb/prefetch-race-expected.txt:
        * storage/indexeddb/queued-commands-expected.txt:
        * storage/indexeddb/readonly-expected.txt:
        * storage/indexeddb/readonly-properties-expected.txt:
        * storage/indexeddb/request-continue-abort-expected.txt:
        * storage/indexeddb/request-event-propagation-expected.txt:
        * storage/indexeddb/request-result-cache-expected.txt:
        * storage/indexeddb/set_version_blocked-expected.txt:
        * storage/indexeddb/setversion-blocked-by-versionchange-close-expected.txt:
        * storage/indexeddb/setversion-not-blocked-expected.txt:
        * storage/indexeddb/structured-clone-expected.txt:
        * storage/indexeddb/transaction-abort-expected.txt:
        * storage/indexeddb/transaction-active-flag-expected.txt:
        * storage/indexeddb/transaction-after-close-expected.txt:
        * storage/indexeddb/transaction-and-objectstore-calls-expected.txt:
        * storage/indexeddb/transaction-basics-expected.txt:
        * storage/indexeddb/transaction-complete-with-js-recursion-cross-frame-expected.txt:
        * storage/indexeddb/transaction-complete-with-js-recursion-expected.txt:
        * storage/indexeddb/transaction-coordination-across-databases-expected.txt:
        * storage/indexeddb/transaction-coordination-within-database-expected.txt:
        * storage/indexeddb/transaction-crash-in-tasks-expected.txt:
        * storage/indexeddb/transaction-crash-on-abort-expected.txt:
        * storage/indexeddb/transaction-error-expected.txt:
        * storage/indexeddb/transaction-event-propagation-expected.txt:
        * storage/indexeddb/transaction-ordering-expected.txt:
        * storage/indexeddb/transaction-overlapping-expected.txt:
        * storage/indexeddb/transaction-read-only-expected.txt:
        * storage/indexeddb/transaction-readwrite-exclusive-expected.txt:
        * storage/indexeddb/transaction-rollback-expected.txt:
        * storage/indexeddb/transaction-scope-sequencing-expected.txt:
        * storage/indexeddb/transaction-starvation-expected.txt:
        * storage/indexeddb/transaction-storeNames-required-expected.txt:
        * storage/indexeddb/unblocked-version-changes-expected.txt:
        * storage/indexeddb/value-undefined-expected.txt:
        * storage/indexeddb/values-odd-types-expected.txt:
        * storage/indexeddb/version-change-abort-expected.txt:
        * storage/indexeddb/version-change-event-expected.txt:
        * storage/indexeddb/version-change-exclusive-expected.txt:

2016-01-16  Myles C. Maxfield  <mmaxfield@apple.com>

        Remove TextRun::allowsRoundingHacks()
        https://bugs.webkit.org/show_bug.cgi?id=153185

        Reviewed by Simon Fraser.

        * platform/mac/fast/text/rounding-hacks-expansion.html: Removed.
        * platform/mac/fast/text/rounding-hacks.html: Removed.
        * platform/mac/platform/mac/fast/text/rounding-hacks-expansion-expected.png: Removed.
        * platform/mac/platform/mac/fast/text/rounding-hacks-expansion-expected.txt: Removed.
        * platform/mac/platform/mac/fast/text/rounding-hacks-expected.png: Removed.
        * platform/mac/platform/mac/fast/text/rounding-hacks-expected.txt: Removed.
        * svg/text/svg-font-word-rounding-hacks-spaces-expected.html: Removed.
        * svg/text/svg-font-word-rounding-hacks-spaces.html: Removed.

2016-01-16  Skachkov Oleksandr  <gskachkov@gmail.com>

        [ES6] Arrow function syntax. Arrow function should support the destructuring parameters.
        https://bugs.webkit.org/show_bug.cgi?id=146934

        Reviewed by Saam Barati.

        * js/arrowfunction-syntax-errors-expected.txt:
        * js/arrowfunction-syntax-expected.txt:
        * js/script-tests/arrowfunction-syntax-errors.js:
        * js/script-tests/arrowfunction-syntax.js:

2016-01-16  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Add tests for Array Utilities like lowerBound/upperBound
        https://bugs.webkit.org/show_bug.cgi?id=153177

        Reviewed by Timothy Hatcher.

        * inspector/unit-tests/array-utilities-expected.txt: Added.
        * inspector/unit-tests/array-utilities.html: Added.

2016-01-16  Simon Fraser  <simon.fraser@apple.com>

        This test needs to force layout before calling setElementUsesDisplayListDrawing(),
        so that the layer already has its "drawsContents" property updated.

        * displaylists/layer-dispay-list.html:

2016-01-15  Jiewen Tan  <jiewen_tan@apple.com>

        FrameLoaderClient::didReceiveServerRedirectForProvisionalLoadForFrame() is never called when loading a main resource from the memory cache
        https://bugs.webkit.org/show_bug.cgi?id=152520
        <rdar://problem/23305737>

        Reviewed by Andy Estes.

        * http/tests/loading/resources/server-redirect-result.html: Added.
        * http/tests/loading/resources/server-redirect.php: Added.
        * http/tests/loading/server-redirect-for-provisional-load-caching-expected.txt: Added.
        * http/tests/loading/server-redirect-for-provisional-load-caching.html: Added.

2016-01-15  Myles C. Maxfield  <mmaxfield@apple.com>

        Content blocking console messages are not deterministic for one test
        https://bugs.webkit.org/show_bug.cgi?id=153051

        Unreviewed.

        Console messages will print the line number of whichever JavaScript line is
        being parsed. However, font requests (and therefore content blockers) are
        not run in response to script. The solution is to add the webfont style
        from script, so the line number is deterministic.

        * http/tests/contentextensions/font-display-none-repeated-layout.html:

2016-01-15  Chris Dumez  <cdumez@apple.com>

        Drop obsolete HTMLDocument.width / height attributes
        https://bugs.webkit.org/show_bug.cgi?id=153144

        Reviewed by Ryosuke Niwa.

        * fast/dom/HTMLDocument/width-and-height-expected.txt: Removed.
        * fast/dom/HTMLDocument/width-and-height.html: Removed.
        Drop outdated test.

        * fast/dom/Window/window-property-invalid-characters-ignored-expected.txt:
        * fast/dom/Window/window-property-invalid-characters-ignored.html:
        Stop relying on Document.width / height as these are obsolete.

2016-01-15  Beth Dakin  <bdakin@apple.com>

        Add a test for touch events in scaled documents
        https://bugs.webkit.org/show_bug.cgi?id=153149
        -and corresponding-
        rdar://problem/24181371

        Reviewed by Simon Fraser.

        * fast/events/touch/ios/touch-event-in-scaled-document-expected.txt: Added.
        * fast/events/touch/ios/touch-event-in-scaled-document.html: Added.

2016-01-10  Simon Fraser  <simon.fraser@apple.com>

        Make a way to test display-list drawing
        https://bugs.webkit.org/show_bug.cgi?id=152956

        Reviewed by Ryosuke Niwa.
        
        Enable displaylists tests on Mac and iOS.

        * TestExpectations:
        * displaylists/layer-dispay-list-expected.txt: Added.
        * displaylists/layer-dispay-list.html: Added.
        * platform/ios-simulator/TestExpectations:
        * platform/mac/TestExpectations:

2016-01-15  Ryosuke Niwa  <rniwa@webkit.org>

        createElementNS and createAttributeNS should treat undefined namespaceURI as null string
        https://bugs.webkit.org/show_bug.cgi?id=153119

        Reviewed by Chris Dumez.

        Add a regression test for calling createAttributeNS with undefined namespaceURI.

        * fast/dom/Document/createAttributeNS-undefined-namespace-expected.txt: Added.
        * fast/dom/Document/createAttributeNS-undefined-namespace.html: Added.

2016-01-15  Jiewen Tan  <jiewen_tan@apple.com>

        Refine http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer*
        https://bugs.webkit.org/show_bug.cgi?id=153140

        Reviewed by Alexey Proskuryakov.

        * http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-always.html:
        * http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-default.html:
        * http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-never.html:
        * http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-no-referrer-when-downgrade.html:
        * http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-no-referrer.html:
        * http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-origin.html:
        * http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-unsafe-url.html:
        * http/tests/contentdispositionattachmentsandbox/referer-header-stripped.html:
        * http/tests/contentdispositionattachmentsandbox/resources/referer-header-stripped.js:
        (onload):
        (navigation): Deleted.
        The reason why the tests are not completed after calling testRunner.notifyDone() is that the original navigation()
        is bound as the onload of the iframe which will dispatch two load events. Therefore, navigation() will be called
        twice. Here, change the navigation() to be bound with the main frame's onload function, which will restrict it to
        be called only once.

2016-01-15  Myles C. Maxfield  <mmaxfield@apple.com>

        [Cocoa] Font features are not applied to the system font
        https://bugs.webkit.org/show_bug.cgi?id=153053

        Reviewed by Dean Jackson.

        * fast/text/system-font-features-expected.html: Added.
        * fast/text/system-font-features.html: Added.

2016-01-15  Joseph Pecoraro  <pecoraro@apple.com>

        Media Query (-webkit-video-playable-inline) is failing as an invalid media query expression
        https://bugs.webkit.org/show_bug.cgi?id=153111

        Reviewed by Dean Jackson.

        * fast/media/video-playable-inline-media-query-expected.txt: Added.
        * fast/media/video-playable-inline-media-query.html: Added.
        * platform/ios-simulator/ios/fast/media/video-inline-expected.txt: Removed.
        * platform/ios-simulator/ios/fast/media/video-inline.html: Removed.

2016-01-15  Joseph Pecoraro  <pecoraro@apple.com>

        LayoutTest inspector/script-profiler/event-type-Other.html is flaky
        https://bugs.webkit.org/show_bug.cgi?id=153016
        <rdar://problem/24192919>

        Reviewed by Brian Burg.

        Introduce a better way for the inspected page to signal to
        the inspector page by dispatching an event with JSON data.
        Use it in this test to try to eliminate flakyness.

        * http/tests/inspector/resources/inspector-test.js:
        (TestPage.dispatchEventToFrontend):
        * http/tests/inspector/resources/protocol-test.js:
        (TestPage.runTest.window.runTest):
        (TestPage.dispatchEventToFrontend):
        * inspector/script-profiler/event-type-Other.html:
        * inspector/unit-tests/inspector-test-dispatch-event-to-frontend-expected.txt: Added.
        * inspector/unit-tests/inspector-test-dispatch-event-to-frontend.html: Added.
        * inspector/unit-tests/protocol-test-dispatch-event-to-frontend-expected.txt: Added.
        * inspector/unit-tests/protocol-test-dispatch-event-to-frontend.html: Added.
        * platform/mac/TestExpectations:

2016-01-15  Zalan Bujtas  <zalan@apple.com>

        ASSERTION FAILED: canHaveChildren() || canHaveGeneratedChildren() in WebCore::RenderElement::insertChildInternal
        https://bugs.webkit.org/show_bug.cgi?id=123331

        Reviewed by Darin Adler.

        Do not set named flow fragment bit on the flow until after the renderer is attached. Setting/resetting it too early
        could affect the attach/detach process itself (This is similar to attaching a multi column flow thread).

        * fast/regions/input-box-with-region-assert-expected.txt: Added.
        * fast/regions/input-box-with-region-assert.html: Added.

2016-01-15  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Fix some typos in unit tests
        https://bugs.webkit.org/show_bug.cgi?id=153141

        Reviewed by Brian Burg.

        * inspector/unit-tests/async-test-suite-expected.txt:
        * inspector/unit-tests/async-test-suite.html:
        * inspector/unit-tests/sync-test-suite-expected.txt:
        * inspector/unit-tests/sync-test-suite.html:
        Fix some typos.

2016-01-15  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline tables/mozilla_expected_failures/bugs/bug89315.html for ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=152130

        Unreviewed test gardening.

        * platform/ios-simulator/tables/mozilla_expected_failures/bugs/bug89315-expected.txt:

2016-01-15  Andy VanWagoner  <thetalecrafter@gmail.com>

        [INTL] Implement Date.prototype.toLocaleString in ECMA-402
        https://bugs.webkit.org/show_bug.cgi?id=147611

        Reviewed by Benjamin Poulain.

        * js/intl-datetimeformat-expected.txt: Added test for null options.
        * js/date-toLocaleString-expected.txt: Added.
        * js/date-toLocaleString.html: Added.
        * js/script-tests/intl-datetimeformat.js: Added test for null options.
        * js/script-tests/date-toLocaleString.js: Added.

2016-01-15  Antti Koivisto  <antti@apple.com>

        Switch out from ES6 arrow function syntax to allow the test to work with an older WebKit.

        * fast/loader/cache-encoding.html:

2016-01-15  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        [Streams API] Expose ReadableStream and relatives to Worker
        https://bugs.webkit.org/show_bug.cgi?id=152066

        Reviewed by Darin Adler.

        Rebasing tests as ReadableStream is now available in workers.

        * js/dom/global-constructors-attributes-dedicated-worker-expected.txt:
        * platform/efl/js/dom/global-constructors-attributes-dedicated-worker-expected.txt:

2016-01-15  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        CORS: Fix the handling of redirected request containing Origin null.
        https://bugs.webkit.org/show_bug.cgi?id=128816

        Reviewed by Brent Fulgham.

        Merging Blink patch from George Ancil (https://chromiumcodereview.appspot.com/20735002)

        Added two tests to check CORS with Origin null in HTTP redirect and iframe cases.
        Updated two test sandboxed iframes test expectations (requests are still denied but error messages are different).

        * http/tests/xmlhttprequest/access-control-sandboxed-iframe-allow-origin-null-expected.txt: Added.
        * http/tests/xmlhttprequest/access-control-sandboxed-iframe-allow-origin-null.html: Added.
        * http/tests/xmlhttprequest/access-control-sandboxed-iframe-denied-expected.txt:
        * http/tests/xmlhttprequest/access-control-sandboxed-iframe-denied-without-wildcard-expected.txt:
        * http/tests/xmlhttprequest/redirect-cors-origin-null-expected.txt: Added.
        * http/tests/xmlhttprequest/redirect-cors-origin-null.html: Added.
        * http/tests/xmlhttprequest/resources/access-control-sandboxed-iframe-allow-origin-null-iframe.html: Added.
        * http/tests/xmlhttprequest/resources/access-control-sandboxed-iframe-allow-origin-null.cgi: Added.
        * http/tests/xmlhttprequest/resources/redirect-cors-origin-null-pass.php: Added.
        * http/tests/xmlhttprequest/resources/redirect-cors-origin-null.php: Added.

2016-01-14  Commit Queue  <commit-queue@webkit.org>

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

        test fails most of the time (Requested by alexchristensen on
        #webkit).

        Reverted changeset:

        "Avoid downloading the wrong image for <picture> elements."
        https://bugs.webkit.org/show_bug.cgi?id=153027
        http://trac.webkit.org/changeset/195064

2016-01-14  Myles C. Maxfield  <mmaxfield@apple.com>

        Test gardening after r195088

        Unreviewed.

        * http/tests/contentextensions/font-display-none-repeated-layout-expected.txt:

2016-01-14  Myles C. Maxfield  <mmaxfield@apple.com>

        Mixing Content Blocking of fonts and display:none rules causes battery drain
        https://bugs.webkit.org/show_bug.cgi?id=153051
        <rdar://problem/23187709>

        Reviewed by Alex Christensen.

        Make sure that layoutCount does not skyrocket.

        * http/tests/contentextensions/font-display-none-repeated-layout-expected.txt: Added.
        * http/tests/contentextensions/font-display-none-repeated-layout.html: Added.
        * http/tests/contentextensions/font-display-none-repeated-layout.html.json: Added.

2016-01-14  Ryosuke Niwa  <rniwa@webkit.org>

        Add document.defineCustomElement
        https://bugs.webkit.org/show_bug.cgi?id=153092

        Reviewed by Chris Dumez.

        Added tests for document.defineCustomElement and instantiating custom elements.

        * TestExpectations: Skipped the tests on non-Mac ports.
        * fast/custom-elements: Added.
        * fast/custom-elements/Document-defineCustomElement-expected.txt: Added.
        * fast/custom-elements/Document-defineCustomElement.html: Added.
        * fast/custom-elements/HTMLElement-constructor-expected.txt: Added.
        * fast/custom-elements/HTMLElement-constructor.html: Added.
        * platform/mac/TestExpectations:

2016-01-14  Beth Dakin  <bdakin@apple.com>

        WK2: Request completion candidates when needed
        https://bugs.webkit.org/show_bug.cgi?id=153040
        -and corresponding-
        rdar://problem/24155631

        Reviewed by Enrica Casucci and Tim Horton.

        Getting updated EditorState in platformEditorState causes some extra layout 
        to happen, so now the layout test results for WK2 reflect the results that we 
        already see on iOS for this test and they reflect the render tree as it is 
        when you load the page in browser.
        * platform/mac/fast/dom/focus-contenteditable-expected.txt:

        WebKit 1 is not affected by these new results, so this adds WK-1 only results 
        that match the old Mac results.
        * platform/mac-wk1/fast/dom: Added.
        * platform/mac-wk1/fast/dom/focus-contenteditable-expected.txt: Added.

2016-01-14  Daniel Bates  <dabates@apple.com>

        Disallow use of Geolocation service from unique origins
        https://bugs.webkit.org/show_bug.cgi?id=153102
        <rdar://problem/23055645>

        Reviewed by Alexey Proskuryakov.

        * fast/dom/Geolocation/dataURL-getCurrentPosition-expected.txt: Added.
        * fast/dom/Geolocation/dataURL-getCurrentPosition.html: Added.
        * fast/dom/Geolocation/dataURL-watchPosition-expected.txt: Added.
        * fast/dom/Geolocation/dataURL-watchPosition.html: Added.
        * fast/dom/Geolocation/srcdoc-getCurrentPosition-expected.txt: Added.
        * fast/dom/Geolocation/srcdoc-getCurrentPosition.html: Added.
        * fast/dom/Geolocation/srcdoc-watchPosition-expected.txt: Added.
        * fast/dom/Geolocation/srcdoc-watchPosition.html: Added.
        * http/tests/security/resources/checkThatPositionErrorCallbackIsCalledWithPositionUnavailableForGeolocationMethod.js: Added.
        (done):
        (logMessage):
        (didReceivePosition):
        (didReceiveError):
        (checkThatPositionErrorCallbackIsCalledWithPositionUnavailableForGeolocationMethod):
        (markupToCheckThatPositionErrorCallbackIsCalledWithPositionUnavailableForGeolocationMethod):
        (dataURLToCheckThatPositionErrorCallbackIsCalledWithPositionUnavailableForGeolocationMethod):
        * http/tests/security/resources/sandboxed-iframe-geolocation-getCurrentPosition.html: Added.
        * http/tests/security/resources/sandboxed-iframe-geolocation-watchPosition.html: Added.
        * http/tests/security/sandboxed-iframe-geolocation-getCurrentPosition-expected.txt: Added.
        * http/tests/security/sandboxed-iframe-geolocation-getCurrentPosition.html: Added.
        * http/tests/security/sandboxed-iframe-geolocation-watchPosition-expected.txt: Added.
        * http/tests/security/sandboxed-iframe-geolocation-watchPosition.html: Added.

2016-01-14  Daniel Bates  <dabates@apple.com>

        [XSS Auditor] Partial bypass when web server collapses path components
        https://bugs.webkit.org/show_bug.cgi?id=152872

        Reviewed by Brent Fulgham.

        Merged from Blink (patch by Tom Sepez <tsepez@chromium.org>):
        <https://src.chromium.org/viewvc/blink?revision=167610&view=revision>

        * http/tests/security/xssAuditor/embed-tag-in-path-unterminated-expected.txt: Added.
        * http/tests/security/xssAuditor/embed-tag-in-path-unterminated.html: Added.
        * http/tests/security/xssAuditor/intercept/.htaccess:

2016-01-14  Zalan Bujtas  <zalan@apple.com>

        [iOS Simulator] fast/table/003.html failing
        https://bugs.webkit.org/show_bug.cgi?id=152444

        Unreviewed gardening.

        * platform/ios-simulator/fast/table/003-expected.txt:

2016-01-14  Keith Miller  <keith_miller@apple.com>

        [ES6] Support subclassing Function.
        https://bugs.webkit.org/show_bug.cgi?id=153081

        Reviewed by Geoffrey Garen.

        Rebasline tests with the new clearer error message.

        * js/class-syntax-extends-expected.txt:
        * js/script-tests/class-syntax-extends.js:

2016-01-14  Zalan Bujtas  <zalan@apple.com>

        ASSERTION FAILED: !newRelayoutRoot.container() || !newRelayoutRoot.container()->needsLayout() in WebCore::FrameView::scheduleRelayoutOfSubtree
        https://bugs.webkit.org/show_bug.cgi?id=151605#c1

        Reviewed by David Hyatt.

        Do not let RenderMultiColumnSet/RenderFlowThread mark ancestors dirty while updating scrollbars
        for overflow content. While updating scrollbars, we only layout descendants so marking parents dirty
        is unnecessary and could lead to an invalid dirty state.

        * fast/multicol/body-stuck-with-dirty-bit-with-columns-expected.txt: Added.
        * fast/multicol/body-stuck-with-dirty-bit-with-columns.html: Added.

2016-01-14  Dave Hyatt  <hyatt@apple.com>

        Avoid downloading the wrong image for <picture> elements.
        https://bugs.webkit.org/show_bug.cgi?id=153027

        Reviewed by Dean Jackson.

        * fast/picture/image-picture-loads-1x-expected.txt: Added.
        * fast/picture/image-picture-loads-1x.html: Added.

2016-01-14  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        Move streams/webkitGetUserMedia-shadowing-then.html to fast/mediastream
        https://bugs.webkit.org/show_bug.cgi?id=152973

        Reviewed by Brent Fulgham.

        Moved the test, made it asynchronous to ensure that the error callback is called.

        * fast/mediastream/webkitGetUserMedia-shadowing-then-expected.txt: Renamed from LayoutTests/streams/webkitGetUserMedia-shadowing-then-expected.txt.
        * fast/mediastream/webkitGetUserMedia-shadowing-then.html: Renamed from LayoutTests/streams/webkitGetUserMedia-shadowing-then.html.

2016-01-14  Commit Queue  <commit-queue@webkit.org>

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

        Crashes many/most editing tests (Requested by ap on #webkit).

        Reverted changeset:

        "WK2: Request completion candidates when needed"
        https://bugs.webkit.org/show_bug.cgi?id=153040
        http://trac.webkit.org/changeset/195002

2016-01-14  Martin Robinson  <mrobinson@igalia.com>

        [GTK] [EFL] Hyphenation can never work in practice due to requirements on lang tags
        https://bugs.webkit.org/show_bug.cgi?id=147310

        Reviewed by Michael Catanzaro.

        Update some baselines and add a GTK+ specific test for locale variations.

        * platform/gtk/fast/text/hyphenate-flexible-locales-expected.html: Added.
        * platform/gtk/fast/text/hyphenate-flexible-locales.html: Added.
        * platform/gtk/fast/text/hyphenate-locale-expected.png: We now properly hyphenate
        text with the 'en' locale.
        * platform/gtk/fast/text/hyphenate-locale-expected.txt:

2016-01-14  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        Fix problems with cross-origin redirects
        https://bugs.webkit.org/show_bug.cgi?id=116075

        Reviewed by Daniel Bates.

        Merging https://chromium.googlesource.com/chromium/blink/+/7ea774e478f84f355748108d2aaabca15355d512 by Ken Russell
        This merge adds tests for cross origin requests triggered from same origin redirection responses with and without credentials).
        Rebaseline of some tests due to console error messages generated from newly hit CORS checks.

        * TestExpectations: Disabled WPT tests that require access to non localhost URLs which are currently blocked by DTR/WTR.
        * http/tests/xmlhttprequest/access-control-and-redirects-async-expected.txt:
        * http/tests/xmlhttprequest/access-control-and-redirects-async-same-origin-expected.txt: Added.
        * http/tests/xmlhttprequest/access-control-and-redirects-async-same-origin.html: Added.
        * http/tests/xmlhttprequest/access-control-and-redirects-async.html:
        * http/tests/xmlhttprequest/access-control-and-redirects-expected.txt:
        * http/tests/xmlhttprequest/access-control-and-redirects.html:
        * http/tests/xmlhttprequest/redirect-cross-origin-2-expected.txt:
        * http/tests/xmlhttprequest/redirect-cross-origin-expected.txt:
        * http/tests/xmlhttprequest/redirect-cross-origin-post-expected.txt:
        * http/tests/xmlhttprequest/redirect-cross-origin-tripmine-expected.txt:
        * http/tests/xmlhttprequest/resources/access-control-basic-allow-no-credentials.cgi: Added.
        * http/tests/xmlhttprequest/xmlhttprequest-unsafe-redirect-expected.txt:

2016-01-13  Ryan Haddad  <ryanhaddad@apple.com>

        Marking test as flaky: sputnik/Conformance/15_Native_Objects/15.1_The_Global_Object/15.1.3/15.1.3.3_encodeURI/S15.1.3.3_A2.4_T2.html
        https://bugs.webkit.org/show_bug.cgi?id=153086

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-01-13  Beth Dakin  <bdakin@apple.com>

        WK2: Request completion candidates when needed
        https://bugs.webkit.org/show_bug.cgi?id=153040
        -and corresponding-
        rdar://problem/24155631

        Reviewed by Enrica Casucci.

        Getting updated EditorState in platformEditorState causes some extra layout 
        to happen, so now the layout test results for WK2 reflect the results that we 
        already see on iOS for this test and they reflect the render tree as it is 
        when you load the page in browser.
        * platform/mac/fast/dom/focus-contenteditable-expected.txt:

        WebKit 1 is not affected by these new results, so this adds WK-1 only results 
        that match the old Mac results.
        * platform/mac-wk1/fast/dom: Added.
        * platform/mac-wk1/fast/dom/focus-contenteditable-expected.txt: Added.

2016-01-12  Ryosuke Niwa  <rniwa@webkit.org>

        formaction must return document's address when formaction is missing
        https://bugs.webkit.org/show_bug.cgi?id=148874

        Reviewed by Chris Dumez.

        Added a regression test and rebaselined imported W3C tests.

        * fast/forms/formaction-attribute-with-empty-value-expected.txt: Added.
        * fast/forms/formaction-attribute-with-empty-value.html: Added.
        * fast/forms/submit-form-attributes-expected.txt:
        * fast/forms/submit-form-attributes.html:

2016-01-13  Mark Lam  <mark.lam@apple.com>

        The StringFromCharCode DFG intrinsic should support untyped operands.
        https://bugs.webkit.org/show_bug.cgi?id=153046

        Reviewed by Geoffrey Garen.

        * js/regress/ftl-polymorphic-StringFromCharCode-expected.txt: Added.
        * js/regress/ftl-polymorphic-StringFromCharCode.html: Added.
        * js/regress/script-tests/ftl-polymorphic-StringFromCharCode.js: Added.
        (o1.valueOf):
        (foo):

2016-01-13  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Inspector should use the last sourceURL / sourceMappingURL directive
        https://bugs.webkit.org/show_bug.cgi?id=153072
        <rdar://problem/24168312>

        Reviewed by Timothy Hatcher.

        * inspector/console/console-api-expected.txt:
        * inspector/console/console-table-expected.txt:
        * platform/mac/inspector/model/remote-object-expected.txt:
        Updated line number in output now that code evaluated through the frontend
        gets the __WebInspectorInternal__ sourceURL prepended to the start instead
        of appended to the end.

        * inspector/debugger/sourceURLs-expected.txt:
        * inspector/debugger/sourceURLs.html:
        Update the test to find the second sourceURL, not the first.

2016-01-13  Daniel Bates  <dabates@apple.com>

        [XSS Auditor] Do not include trailing comment characters in JavaScript snippets
        https://bugs.webkit.org/show_bug.cgi?id=152873

        Reviewed by Brent Fulgham.

        Merged from Blink (patch by Tom Sepez <tsepez@chromium.org>):
        <https://src.chromium.org/viewvc/blink?view=rev&revision=169967>

        * http/tests/security/xssAuditor/script-tag-with-injected-comment-expected.txt: Added.
        * http/tests/security/xssAuditor/script-tag-with-injected-comment.html: Added.

2016-01-13  Daniel Bates  <dabates@apple.com>

        [XSS Auditor] Add test when XSS payload is in the path portion of the URL
        https://bugs.webkit.org/show_bug.cgi?id=152871

        Reviewed by Brent Fulgham.

        Merged from Blink (patch by Tom Sepez <tsepez@chromium.org>):
        <https://src.chromium.org/viewvc/blink?revision=164746&view=revision>

        Add infrastructure and a test for an XSS attack where the payload is
        embedded in the path portion of the URL.

        Many XSS Auditor tests pass the XSS payload to CGI scripts via the
        query string portion of the URL. Now we also support calling these
        same scripts with the payload embedded in the path portion of the
        URL.

        Loading <http://127.0.0.1:8000/security/xssAuditor/intercept/X/Y>
        returns a response whose content is identical to <http://127.0.0.1:8000/security/xssAuditor/resoures/X?q=Y>,
        where X is the filename of some CGI script in directory LayoutTests/http/tests/security/xssAuditor/resources
        and Y is the XSS payload.

        * http/tests/security/xssAuditor/intercept/.htaccess: Added.
        * http/tests/security/xssAuditor/reflection-in-path-expected.txt: Added.
        * http/tests/security/xssAuditor/reflection-in-path.html: Added.
        * http/tests/security/xssAuditor/resources/echo-form-action.pl: Added.

2016-01-13  Adam Bergkvist  <adam.bergkvist@ericsson.com>

        WebRTC: Add support for RTCRtpSender.replaceTrack()
        https://bugs.webkit.org/show_bug.cgi?id=153063

        Reviewed by Eric Carlson.

        Add API test for RTCRtpSender.replaceTrack(). A successful call is still
        rejected (promise) until proper support is available in the WebRTC backend.

        * fast/mediastream/RTCRtpSender-replaceTrack-expected.txt: Added.
        * fast/mediastream/RTCRtpSender-replaceTrack.html: Added.

2016-01-13  Mario Sanchez Prada  <mario@webkit.org>

        [GTK] Unreviewed gardening.

        * platform/gtk/TestExpectations: Mark three tests failing in the
        GTK bots as Crash, Timeout (release builds only) and Failure.

2016-01-12  Ryan Haddad  <ryanhaddad@apple.com>

        Changing expectation from flaky to skip for two crashing tests.
        https://bugs.webkit.org/show_bug.cgi?id=152279

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-01-12  Commit Queue  <commit-queue@webkit.org>

        Unreviewed, rolling out r194926 and r194928.
        https://bugs.webkit.org/show_bug.cgi?id=153048

        This change is causing LayoutTest crashes (Requested by
        ryanhaddad on #webkit).

        Reverted changesets:

        "Avoid downloading the wrong image for <picture> elements."
        https://bugs.webkit.org/show_bug.cgi?id=153027
        http://trac.webkit.org/changeset/194926

        "Avoid downloading the wrong image for <picture> elements."
        https://bugs.webkit.org/show_bug.cgi?id=153027
        http://trac.webkit.org/changeset/194928

2016-01-12  Dean Jackson  <dino@apple.com>

        [iOS] Antialiasing doesn't work in WebGL
        https://bugs.webkit.org/show_bug.cgi?id=153000
        <rdar://problem/9165531>

        Reviewed by Alex Christensen.

        New test to check if WebGL antialiasing happened on a rendered canvas.

        * fast/canvas/webgl/antialiasing-enabled-expected.txt: Added.
        * fast/canvas/webgl/antialiasing-enabled.html: Added.

2016-01-12  Ryan Haddad  <ryanhaddad@apple.com>

        Skipped more tests related to picture element on ios-simulator and grouped them together in TestExpectations file.

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-01-12  Ryan Haddad  <ryanhaddad@apple.com>

        Skipping crashing test fast/picture/image-picture-loads-1x.html on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=153043

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-01-12  Dave Hyatt  <hyatt@apple.com>

        Avoid downloading the wrong image for <picture> elements.
        https://bugs.webkit.org/show_bug.cgi?id=153027

        Reviewed by Dean Jackson.

        * fast/picture/image-picture-loads-1x-expected.txt: Added.
        * fast/picture/image-picture-loads-1x.html: Added.

2016-01-12  Daniel Bates  <dabates@apple.com>

        XSS Auditor should navigate to empty substitute data on full page block
        https://bugs.webkit.org/show_bug.cgi?id=152868
        <rdar://problem/18658448>

        Reviewed by David Kilzer and Andy Estes.

        Derived from Blink patch (by Tom Sepez <tsepez@chromium.org>):
        <https://src.chromium.org/viewvc/blink?view=rev&revision=179240>

        Added additional test block-does-not-leak-that-page-was-blocked-using-empty-data-url.html to explicitly
        tests that we do redirect to an empty data URL when a full page block is triggered.

        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-allow-block-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-allow-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-block-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-filter-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-invalid-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-block-unset-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-filter-block-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-invalid-block-expected.txt:
        * http/tests/security/contentSecurityPolicy/1.1/reflected-xss-and-xss-protection-unset-block-expected.txt:
        * http/tests/security/xssAuditor/block-does-not-leak-location-expected.txt:
        * http/tests/security/xssAuditor/block-does-not-leak-referrer-expected.txt:
        * http/tests/security/xssAuditor/block-does-not-leak-that-page-was-blocked-using-empty-data-url-expected.txt: Added.
        * http/tests/security/xssAuditor/block-does-not-leak-that-page-was-blocked-using-empty-data-url.html: Added.
        * http/tests/security/xssAuditor/full-block-base-href-expected.txt:
        * http/tests/security/xssAuditor/full-block-iframe-javascript-url-expected.txt:
        * http/tests/security/xssAuditor/full-block-javascript-link-expected.txt:
        * http/tests/security/xssAuditor/full-block-link-onclick-expected.txt:
        * http/tests/security/xssAuditor/full-block-object-tag-expected.txt:
        * http/tests/security/xssAuditor/full-block-script-tag-cross-domain-expected.txt:
        * http/tests/security/xssAuditor/full-block-script-tag-expected.txt:
        * http/tests/security/xssAuditor/full-block-script-tag-with-source-expected.txt:
        * http/tests/security/xssAuditor/full-block-script-tag.html:
        * http/tests/security/xssAuditor/xss-protection-parsing-03-expected.txt:
        * http/tests/security/xssAuditor/xss-protection-parsing-04-expected.txt:

2016-01-12  Jiewen Tan  <jiewen_tan@apple.com>

        Null dereference loading Blink layout test fast/frames/navigation-in-pagehide.html
        https://bugs.webkit.org/show_bug.cgi?id=149303
        <rdar://problem/22747634>

        Reviewed by Brent Fulgham.

        * imported/blink/fast/frames/navigation-in-pagehide-expected.txt: Added.
        * imported/blink/fast/frames/navigation-in-pagehide.html: Added.

2016-01-12  Adam Bergkvist  <adam.bergkvist@ericsson.com>

        WebRTC: Update RTCPeerConnection.add/removeTrack() and add test
        https://bugs.webkit.org/show_bug.cgi?id=153010

        Reviewed by Eric Carlson.

        Add test for RTCPeerConnection.add/removeTrack() (currently not covered by other tests).
        This test also covers some of the functionality of RTCRtpSender.

        * fast/mediastream/RTCPeerConnection-add-removeTrack-expected.txt: Added.
        * fast/mediastream/RTCPeerConnection-add-removeTrack.html: Added.

2016-01-12  Jiewen Tan  <jiewen_tan@apple.com>

        Null dereference loading Blink layout test editing/selection/selectstart-event-crash.html
        https://bugs.webkit.org/show_bug.cgi?id=150210
        <rdar://problem/23137259>

        Reviewed by Brent Fulgham.

        * imported/blink/editing/selection/selectstart-event-crash-expected.txt: Added.
        * imported/blink/editing/selection/selectstart-event-crash.html: Added.
        * platform/ios-simulator-wk2/TestExpectations:

2016-01-12  Jiewen Tan  <jiewen_tan@apple.com>

        Null dereference loading Blink layout test editing/apply-inline-style-to-element-with-no-renderer-crash.html
        https://bugs.webkit.org/show_bug.cgi?id=149287
        <rdar://problem/22746217>

        Reviewed by Brent Fulgham.

        * imported/blink/editing/apply-inline-style-to-element-with-no-renderer-crash-expected.txt: Added.
        * imported/blink/editing/apply-inline-style-to-element-with-no-renderer-crash.html: Added.

2016-01-12  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/dont-wedge.html is flaky.
        https://bugs.webkit.org/show_bug.cgi?id=152892

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2016-01-12  Antti Koivisto  <antti@apple.com>

        Don't reuse memory cache entries with different charset
        https://bugs.webkit.org/show_bug.cgi?id=110031

        Reviewed by Andreas Kling.

        * fast/loader/cache-encoding-expected.txt: Added.
        * fast/loader/cache-encoding.html: Added.
        * fast/loader/resources/success.js: Added.

2016-01-12  Ryan Haddad  <ryanhaddad@apple.com>

        Marking inspector/model/scope-chain-node.html as flaky on Mac debug
        https://bugs.webkit.org/show_bug.cgi?id=153018

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-01-12  Ryan Haddad  <ryanhaddad@apple.com>

        Marking inspector/script-profiler/event-type-Other.html as flaky on Mac
        https://bugs.webkit.org/show_bug.cgi?id=153016

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-01-12  Carlos Garcia Campos  <cgarcia@igalia.com>

        Unreviewed GTK+ gardening. Rebaseline test results after r194847.

        Before r194847 we were always taking the separator of combo boxes
        into account when calculating the size of menu list buttons, even
        when we didn't render the separator. In r194847 we removed all the
        code to deal with separators in combo boxes. Also, since r194847
        we are correctly adding the padding between the icon and the text
        in search fileds.

        * platform/gtk/css3/selectors3/html/css3-modsel-161-expected.txt:
        * platform/gtk/css3/selectors3/xhtml/css3-modsel-161-expected.txt:
        * platform/gtk/css3/selectors3/xml/css3-modsel-161-expected.txt:
        * platform/gtk/editing/pasteboard/4641033-expected.txt:
        * platform/gtk/editing/pasteboard/4944770-1-expected.txt:
        * platform/gtk/editing/pasteboard/4944770-2-expected.txt:
        * platform/gtk/editing/selection/caret-before-select-expected.txt:
        * platform/gtk/editing/selection/replaced-boundaries-3-expected.txt:
        * platform/gtk/editing/selection/select-box-expected.txt:
        * platform/gtk/editing/selection/select-element-paragraph-boundary-expected.txt:
        * platform/gtk/fast/css/focus-ring-exists-for-search-field-expected.txt:
        * platform/gtk/fast/css/input-search-padding-expected.txt:
        * platform/gtk/fast/css/text-input-with-webkit-border-radius-expected.txt:
        * platform/gtk/fast/css/text-overflow-input-expected.txt:
        * platform/gtk/fast/css/text-transform-select-expected.txt:
        * platform/gtk/fast/forms/001-expected.txt:
        * platform/gtk/fast/forms/003-expected.txt:
        * platform/gtk/fast/forms/004-expected.txt:
        * platform/gtk/fast/forms/basic-inputs-expected.txt:
        * platform/gtk/fast/forms/basic-selects-expected.txt:
        * platform/gtk/fast/forms/box-shadow-override-expected.txt:
        * platform/gtk/fast/forms/control-restrict-line-height-expected.txt:
        * platform/gtk/fast/forms/disabled-select-change-index-expected.txt:
        * platform/gtk/fast/forms/form-element-geometry-expected.txt:
        * platform/gtk/fast/forms/input-appearance-height-expected.txt:
        * platform/gtk/fast/forms/input-value-expected.txt:
        * platform/gtk/fast/forms/menulist-deselect-update-expected.txt:
        * platform/gtk/fast/forms/menulist-narrow-width-expected.txt:
        * platform/gtk/fast/forms/menulist-no-overflow-expected.txt:
        * platform/gtk/fast/forms/menulist-restrict-line-height-expected.txt:
        * platform/gtk/fast/forms/menulist-separator-painting-expected.txt:
        * platform/gtk/fast/forms/menulist-style-color-expected.txt:
        * platform/gtk/fast/forms/menulist-width-change-expected.txt:
        * platform/gtk/fast/forms/option-script-expected.txt:
        * platform/gtk/fast/forms/option-strip-whitespace-expected.txt:
        * platform/gtk/fast/forms/placeholder-position-expected.txt:
        * platform/gtk/fast/forms/placeholder-pseudo-style-expected.txt:
        * platform/gtk/fast/forms/search-cancel-button-style-sharing-expected.txt:
        * platform/gtk/fast/forms/search-display-none-cancel-button-expected.txt:
        * platform/gtk/fast/forms/search-rtl-expected.txt:
        * platform/gtk/fast/forms/search-styled-expected.txt:
        * platform/gtk/fast/forms/search/search-size-with-decorations-expected.txt:
        * platform/gtk/fast/forms/searchfield-heights-expected.txt:
        * platform/gtk/fast/forms/select-background-none-expected.txt:
        * platform/gtk/fast/forms/select-baseline-expected.txt:
        * platform/gtk/fast/forms/select-change-listbox-to-popup-expected.txt:
        * platform/gtk/fast/forms/select-dirty-parent-pref-widths-expected.txt:
        * platform/gtk/fast/forms/select-disabled-appearance-expected.txt:
        * platform/gtk/fast/forms/select-element-focus-ring-expected.txt:
        * platform/gtk/fast/forms/select-initial-position-expected.txt:
        * platform/gtk/fast/forms/select-selected-expected.txt:
        * platform/gtk/fast/forms/select-size-expected.txt:
        * platform/gtk/fast/forms/select-style-expected.txt:
        * platform/gtk/fast/forms/select-visual-hebrew-expected.txt:
        * platform/gtk/fast/forms/select/optgroup-rendering-expected.txt:
        * platform/gtk/fast/forms/selectlist-minsize-expected.txt:
        * platform/gtk/fast/forms/stuff-on-my-optgroup-expected.txt:
        * platform/gtk/fast/forms/validation-message-appearance-expected.txt:
        * platform/gtk/fast/html/keygen-expected.txt:
        * platform/gtk/fast/invalid/014-expected.txt:
        * platform/gtk/fast/parser/document-write-option-expected.txt:
        * platform/gtk/fast/repaint/search-field-cancel-expected.txt:
        * platform/gtk/fast/replaced/replaced-breaking-expected.txt:
        * platform/gtk/fast/replaced/replaced-breaking-mixture-expected.txt:
        * platform/gtk/fast/replaced/three-selects-break-expected.txt:
        * platform/gtk/fast/replaced/width100percent-menulist-expected.txt:
        * platform/gtk/fast/replaced/width100percent-searchfield-expected.txt:
        * platform/gtk/http/tests/navigation/javascriptlink-frames-expected.txt:

2016-01-11  Carlos Garcia Campos  <cgarcia@igalia.com>

        Inconsistencies in main resource load delegates when loading from history
        https://bugs.webkit.org/show_bug.cgi?id=150927

        Reviewed by Michael Catanzaro.

        Add test to check that main resource load delegates are emitted in
        the same order before the load is committed when loading a page
        from history with the page cache enabled and disabled.

        * http/tests/loading/main-resource-delegates-on-back-navigation-expected.txt: Added.
        * http/tests/loading/main-resource-delegates-on-back-navigation.html: Added.
        * http/tests/loading/resources/page-go-back-onload.html: Added.
        * loader/go-back-cached-main-resource-expected.txt:

2016-01-11  Johan K. Jensen  <jj@johanjensen.dk>

        Web Inspector: console.count() shouldn't show a colon in front of a number
        https://bugs.webkit.org/show_bug.cgi?id=152038

        Reviewed by Brian Burg.

        * inspector/console/console-api-expected.txt:
        * inspector/console/console-api.html:
        Add testcases for console.count

2016-01-11  Joseph Pecoraro  <pecoraro@apple.com>

        keywords ("super", "delete", etc) should be valid method names
        https://bugs.webkit.org/show_bug.cgi?id=144281

        Reviewed by Ryosuke Niwa.

        * js/class-syntax-super-expected.txt:
        * js/script-tests/class-syntax-super.js:
        Update the test for the correct expected result.

        * js/keyword-method-names-expected.txt: Added.
        * js/keyword-method-names.html: Added.
        * js/script-tests/keyword-method-names.js: Added.
        Add tests to cover parsing allows keywords in method name syntax.

2016-01-11  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/intversion-long-queue.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=152995

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/intversion-long-queue-expected.txt:
        * storage/indexeddb/resources/intversion-long-queue.js:

2016-01-11  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/index-multientry.html fails under GuardMalloc/ASAN.
        https://bugs.webkit.org/show_bug.cgi?id=152990

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2016-01-11  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Migrate Page Timeline recording to ScriptProfiler
        https://bugs.webkit.org/show_bug.cgi?id=152727

        Reviewed by Brian Burg.

        * inspector/script-profiler/event-type-Other-expected.txt: Added.
        * inspector/script-profiler/event-type-Other.html: Added.
        Add a test that Web script evaluations create "Other" ScriptProfiler events.

2016-01-11  Zalan Bujtas  <zalan@apple.com>

        Padding added to table-cell element after font-size change.
        https://bugs.webkit.org/show_bug.cgi?id=152796

        Reviewed by David Hyatt.

        Do not include intrinsicPaddingBefore value while figuring out the height of a row.
        In RenderTableSection::calcRowLogicalHeight() we are interested in the height of the content
        without the additional padding (normal padding is included).

        * TestExpectations: This test fails even without the patch when Ahem font is not used.
        * fast/table/table-baseline-grows-expected.html: Added.
        * fast/table/table-baseline-grows.html: Added.

2016-01-11  Dave Hyatt  <hyatt@apple.com>

        Picture element needs to work with the preload scanner and select the correct
        source element instead of loading the image.
        https://bugs.webkit.org/show_bug.cgi?id=152983

        Reviewed by Dean Jackson.

        These tests are imported from Blink, although they have been modified slightly to
        reflect the fact that we pass the nested <picture> cases that Blink fails.

        * http/tests/loading/hidpi-preload-picture-sizes-expected.txt: Added.
        * http/tests/loading/hidpi-preload-picture-sizes.html: Added.
        * http/tests/loading/preload-picture-invalid-expected.txt: Added.
        * http/tests/loading/preload-picture-invalid.html: Added.
        * http/tests/loading/preload-picture-nested-expected.txt: Added.
        * http/tests/loading/preload-picture-nested.html: Added.
        * http/tests/loading/preload-picture-sizes-expected.txt: Added.
        * http/tests/loading/preload-picture-sizes.html: Added.
        * http/tests/loading/resources/base-image1.png: Added.
        * http/tests/loading/resources/base-image2.png: Added.
        * http/tests/loading/resources/base-image3.png: Added.
        * http/tests/loading/resources/dup-image1.png: Added.
        * http/tests/loading/resources/dup-image2.png: Added.
        * http/tests/loading/resources/dup-image3.png: Added.
        * http/tests/loading/resources/image1.png: Added.
        * http/tests/loading/resources/image2.png: Added.
        * http/tests/loading/resources/picture-preload-helper.js: Added.

2016-01-11  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/key-generator.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=152981

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:
        * platform/wk2/imported/w3c/indexeddb/keygenerator-overflow-expected.txt: Copied from LayoutTests/imported/w3c/indexeddb/keygenerator-overflow-expected.txt.

2016-01-11  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/lazy-index-population.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=152976

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2016-01-11  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] Update test expectations after r194845

        Unreviewed gardening. Mark XHTML tests as passing now that we have patched shared-mime-info
        to better detect XHTML. Add expectations for additional XHTML tests that were unskipped in
        r194845.

        * platform/gtk/TestExpectations:
        * platform/gtk/css2.1/tables/table-anonymous-objects-015-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-016-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-023-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-024-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-035-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-036-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-037-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-038-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-045-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-046-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-047-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-048-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-049-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-050-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-055-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-056-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-091-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-092-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-099-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-100-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-103-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-104-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-105-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-106-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-107-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-108-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-109-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-110-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-111-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-112-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-113-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-114-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-115-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-116-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-117-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-118-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-119-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-120-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-121-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-122-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-123-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-124-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-139-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-140-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-149-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-150-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-155-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-156-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-159-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-160-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-165-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-166-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-177-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-178-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-179-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-180-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-181-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-189-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-190-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-191-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-192-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-193-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-194-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-195-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-196-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-205-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-206-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-207-expected.txt: Added.
        * platform/gtk/css2.1/tables/table-anonymous-objects-208-expected.txt: Added.

2016-01-11  Ryan Haddad  <ryanhaddad@apple.com>

        Skipping unsupported test pageoverlay/overlay-small-frame-mouse-events.html on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=152130

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-01-11  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] W3C CSS2.1 anonymous table tests are failing
        https://bugs.webkit.org/show_bug.cgi?id=152455

        Reviewed by Mario Sanchez Prada.

        Unskip the anonymous table tests, so the bots can generate expected results. The expected
        results will be committed separately.

        * platform/gtk/TestExpectations:

2016-01-10  Myles C. Maxfield  <mmaxfield@apple.com>

        [SVG -> OTF Converter] Parsing failures cause use of incomplete fonts
        https://bugs.webkit.org/show_bug.cgi?id=152772
        <rdar://problem/24043104>

        Reviewed by Simon Fraser.

        Make sure the font renders as if its invalid.

        * fast/text/resources/bustedfont.svg: Added.
        * fast/text/svg-font-invalid-glyph-path-failure-expected.html: Added.
        * fast/text/svg-font-invalid-glyph-path-failure.html: Added.

2016-01-10  Yusuke Suzuki  <utatane.tea@gmail.com>

        [JSC] Iterating over a Set/Map is too slow
        https://bugs.webkit.org/show_bug.cgi?id=152691

        Reviewed by Saam Barati.

        Add regress tests.

        * js/regress/map-for-each-expected.txt: Added.
        * js/regress/map-for-each.html: Added.
        * js/regress/map-for-of-expected.txt: Added.
        * js/regress/map-for-of.html: Added.
        * js/regress/script-tests/map-for-each.js: Added.
        (createMap):
        (i.map.forEach):
        * js/regress/script-tests/map-for-of.js: Added.
        (createMap):
        * js/regress/script-tests/set-for-each.js: Added.
        (set forEach):
        (set createSet):
        * js/regress/script-tests/set-for-of.js: Added.
        * js/regress/set-for-each-expected.txt: Added.
        * js/regress/set-for-each.html: Added.
        * js/regress/set-for-of-expected.txt: Added.
        * js/regress/set-for-of.html: Added.

2016-01-09  Zalan Bujtas  <zalan@apple.com>

        REGRESSION (r194426): First email field is not autofilled on amazon.com
        https://bugs.webkit.org/show_bug.cgi?id=152945
        <rdar://problem/24082914>

        Reviewed by Simon Fraser.

        r194426 missed marking the m_layoutRoot for layout while converting to full layout (it only marked the new layout root).

        * fast/forms/multiple-subtree-layout-failure-expected.html: Added.
        * fast/forms/multiple-subtree-layout-failure.html: Added.

2016-01-08  Zalan Bujtas  <zalan@apple.com>

        Absolute positioning -webkit-search-cancel-button crashes Safari.
        https://bugs.webkit.org/show_bug.cgi?id=152847
        <rdar://problem/24112087>

        Reviewed by Simon Fraser.

        Do not call offsetFromContainer while resolving the painting position for the search/cancel button renderer.
        It skips the static positioned parent input renderer, when the search/cancel renderer is absolute positioned.
        This patch also fixes a rendering glitch when the margin-right is > 0.

        * fast/forms/absolute-positioned-custom-search-cancel-crash-expected.txt: Added.
        * fast/forms/absolute-positioned-custom-search-cancel-crash.html: Added.

2016-01-08  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/setversion-blocked-by-versionchange-close.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=152936

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/resources/setversion-blocked-by-versionchange-close.js:
        * storage/indexeddb/setversion-blocked-by-versionchange-close-expected.txt:

2016-01-08  Ryan Haddad  <ryanhaddad@apple.com>

        Marking fast/scrolling/scroll-position-on-reload-rtl.html as failing on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=152935

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-01-08  Ryan Haddad  <ryanhaddad@apple.com>

        Skipping two unsupported mouse event tests on ios-simulator

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-01-08  Brady Eidson  <beidson@apple.com>

        Unreviewed test gardening.

        * platform/mac-wk1/TestExpectations:

2016-01-08  Brady Eidson  <beidson@apple.com>

        Unreviewed test gardening.

        * platform/mac-wk1/TestExpectations:

2016-01-08  Brady Eidson  <beidson@apple.com>

        Unreviewed test gardening.

        * platform/mac-wk1/TestExpectations:

2016-01-08  Ryan Haddad  <ryanhaddad@apple.com>

        Marking js/intl-collator.html as failing on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=152448

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-01-08  Brady Eidson  <beidson@apple.com>

        Modern IDB: imported/w3c/indexeddb/keyorder.htm times out.
        https://bugs.webkit.org/show_bug.cgi?id=152929

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2016-01-08  Ryan Haddad  <ryanhaddad@apple.com>

        Marking two css3/filters/composited-during-* tests as failing on ios-simulator.
        https://bugs.webkit.org/show_bug.cgi?id=152282

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-01-08  Ryan Haddad  <ryanhaddad@apple.com>

        Mark compositing/overflow/dynamic-composited-scrolling-status.html as failing on ios-simulator, remove duplicate
        expectation added by previous commit.

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-01-08  Brady Eidson  <beidson@apple.com>

        Unreviewed test gardening.

        * platform/mac-wk1/TestExpectations:

2016-01-08  Brady Eidson  <beidson@apple.com>

        Removing WK2 specific results for this test.
        
        Legacy IDB passes just the same as Modern IDB.

        * platform/wk2/imported/w3c/indexeddb/keypath-expected.txt: Removed.

2016-01-08  Ryan Haddad  <ryanhaddad@apple.com>

        Marking two ios/scolling tests as failing on ios-simulator.
        https://bugs.webkit.org/show_bug.cgi?id=152276

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-01-08  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaselining two compositing tests for ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=152138

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/compositing/contents-opaque/body-background-painted-expected.txt:
        * platform/ios-simulator/compositing/contents-opaque/table-parts-expected.txt: Added.

2016-01-08  Ryan Haddad  <ryanhaddad@apple.com>

        Removing ios-simulator-wk1/ and ios-simulator-wk2/ expected.* files that are identical to the ones in ios-simulator/
        https://bugs.webkit.org/show_bug.cgi?id=152130

        Unreviewed test gardening.

        * platform/ios-simulator-wk1/editing/deleting/delete-block-merge-contents-011-expected.txt: Removed.
        * platform/ios-simulator-wk1/editing/deleting/delete-first-list-item-expected.txt: Removed.
        * platform/ios-simulator-wk1/editing/deleting/merge-different-styles-expected.txt: Removed.
        * +1714 more

2016-01-08  Ryan Haddad  <ryanhaddad@apple.com>

        Removing deleted test fast/mediastream/RTCPeerConnection-state.html from mac TestExpectations file

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2016-01-08  Brady Eidson  <beidson@apple.com>

        Modern IDB: IDBBindingUtilities chokes on unicode strings for get/set.
        https://bugs.webkit.org/show_bug.cgi?id=152921

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:
        
        * storage/indexeddb/objectstore-autoincrement-expected.txt:
        * storage/indexeddb/objectstore-autoincrement.html:
        * storage/indexeddb/resources/objectstore-autoincrement.js:

2016-01-08  Brady Eidson  <beidson@apple.com>

        Modern IDB: Blocked event can fire on a delete request even after the last open connection has closed.
        https://bugs.webkit.org/show_bug.cgi?id=152896

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:
        
        * platform/wk2/imported/w3c/indexeddb/idbfactory_open12-expected.txt: Copied from LayoutTests/imported/w3c/indexeddb/idbfactory_open12-expected.txt.
        * platform/wk2/imported/w3c/indexeddb/idbversionchangeevent-expected.txt: Copied from LayoutTests/imported/w3c/indexeddb/idbversionchangeevent-expected.txt.
        
        * storage/indexeddb/database-wrapper-expected.txt:
        * storage/indexeddb/delete-in-upgradeneeded-close-in-versionchange-expected.txt:
        * storage/indexeddb/deletedatabase-not-blocked-expected.txt:
        * storage/indexeddb/intversion-upgrades-expected.txt:
        * storage/indexeddb/resources/delete-in-upgradeneeded-close-in-versionchange.js:
        * storage/indexeddb/resources/deletedatabase-not-blocked.js:
        * storage/indexeddb/resources/setversion-not-blocked.js:
        * storage/indexeddb/setversion-not-blocked-expected.txt:

2016-01-08  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] Several animation tests fail with accelerated compositing enabled

        Unreviewed gardening.

        * platform/gtk/TestExpectations:

2016-01-08  Lorenzo Tilve  <ltilve@igalia.com>

        [GTK] pageoverlay tests are failing

        Unreviewed gardening.

        * platform/gtk/TestExpectations:

2016-01-08  Zalan Bujtas  <zalan@apple.com>

        Hovering link on http://help.apple.com/appletv/#/ does not show text underline.
        https://bugs.webkit.org/show_bug.cgi?id=152906
        <rdar://problem/23339617>

        Reviewed by Simon Fraser.

        GraphicsContext::computeLineBoundsAndAntialiasingModeForText() always integral ceils the origin y position to offset underline text.
        This additional visual overflow offset is not taken into account by visualOverflowForDecorations().
        Unfortunately we can't compute the exact same offset value while collecting repaint rects, because
        computeLineBoundsAndAntialiasingModeForText() uses CTM scaling before adjusting the offset position.
        Use 1px (css) bottom offset to cover this underling overflow.

        * fast/css3-text/css3-text-decoration/text-underline-position/underline-visual-overflow-with-subpixel-position-expected.txt: Added.
        * fast/css3-text/css3-text-decoration/text-underline-position/underline-visual-overflow-with-subpixel-position.html: Added.

2016-01-08  Brady Eidson  <beidson@apple.com>

        Modern IDB: imported/w3c/indexeddb/idbobjectstore_createIndex6-event_order.htm fails.
        https://bugs.webkit.org/show_bug.cgi?id=152891

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:
        * platform/wk2/imported/w3c/indexeddb/idbobjectstore_createIndex6-event_order-expected.txt: Copied from LayoutTests/imported/w3c/indexeddb/idbobjectstore_createIndex6-event_order-expected.txt.
        * platform/wk2/imported/w3c/indexeddb/idbobjectstore_createIndex7-event_order-expected.txt: Copied from LayoutTests/imported/w3c/indexeddb/idbobjectstore_createIndex7-event_order-expected.txt.

2016-01-08  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/dont-wedge.html is flaky.
        https://bugs.webkit.org/show_bug.cgi?id=152892

        Unreviewed.

        * platform/mac-wk1/TestExpectations: Skip it for now.

2016-01-07  Brady Eidson  <beidson@apple.com>

        Unreviewed IndexedDB test gardening.

        * platform/mac-wk1/TestExpectations:

2016-01-07  Brady Eidson  <beidson@apple.com>

        Modern IDB: Success-after-open event should only have the IDBOpenDBRequest as its target.
        https://bugs.webkit.org/show_bug.cgi?id=152875

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2016-01-07  Alexey Proskuryakov  <ap@apple.com>

        Better test gardening. Only skip those tests that use touch events, not the whole
        directory.

        * platform/ios-simulator-wk2/TestExpectations:

2016-01-07  Brady Eidson  <beidson@apple.com>

        Modern IDB: Various imported/w3c/indexeddb tests fail due to expecting the wrong exception.
        https://bugs.webkit.org/show_bug.cgi?id=152866

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2016-01-07  Alexey Proskuryakov  <ap@apple.com>

        Test gardening.

        * platform/ios-simulator-wk2/TestExpectations:

2016-01-07  Brady Eidson  <beidson@apple.com>

        Modern IDB: imported/w3c/indexeddb/idbcursor-continue.htm fails.
        https://bugs.webkit.org/show_bug.cgi?id=152849

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2016-01-07  Alexey Proskuryakov  <ap@apple.com>

        testRunner.runUIScript crashes while running multiple tests in a row that invokes the same UIScript
        https://bugs.webkit.org/show_bug.cgi?id=152390
        <rdar://problem/23948321>

        Reviewed by Simon Fraser.

        * platform/ios-simulator/TestExpectations: Unskipped tests that used to be affected.

2016-01-07  Zalan Bujtas  <zalan@apple.com>

        Incorrect position: fixed; rendering when child of position:relative/sticky.
        https://bugs.webkit.org/show_bug.cgi?id=147284

        Reviewed by Simon Fraser and David Hyatt.

        Computing logical left for positioned objects should take the relative positioned ancestors' offset
        into account.

        * fast/block/positioning/fixed-container-with-relative-parent-expected.html: Added.
        * fast/block/positioning/fixed-container-with-relative-parent.html: Added.
        * fast/block/positioning/fixed-container-with-sticky-parent-expected.html: Added.
        * fast/block/positioning/fixed-container-with-sticky-parent.html: Added.

2016-01-07  Chris Dumez  <cdumez@apple.com>

        Directly-composited animated GIFs never resume once scrolled offscreen
        https://bugs.webkit.org/show_bug.cgi?id=152817
        <rdar://problem/19982020>

        Reviewed by Daniel Bates.

        Add a layout test to check that directly-composited animated GIFs are
        properly suspended / resumed based on visibility inside the viewport.

        * fast/images/composited-animated-gif-outside-viewport-expected.txt: Added.
        * fast/images/composited-animated-gif-outside-viewport.html: Added.

2016-01-06  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: CRASH Attempting to pause on CSP violation not inside of script
        https://bugs.webkit.org/show_bug.cgi?id=152825
        <rdar://problem/24021276>

        Reviewed by Timothy Hatcher.

        * http/tests/inspector/resources/inspector-test.js:
        (TestPage.reportUncaughtException):
        Allow a test to continue after uncaught exceptions.

        * inspector/debugger/csp-exceptions-expected.txt: Added.
        * inspector/debugger/csp-exceptions.html: Added.
        * inspector/debugger/resources/csp-exception-iframe.html: Added.
        Test a CSP exception that causes a pause and one outside of
        script that does not pause (and does not crash).

2016-01-07  Brady Eidson  <beidson@apple.com>

        Unreviewed IndexedDB test gardening.

        * platform/mac-wk1/TestExpectations:

2016-01-07  Brady Eidson  <beidson@apple.com>

        Modern IDB: Add expectations for W3C tests that were missing them.
        https://bugs.webkit.org/show_bug.cgi?id=152835

        Reviewed by Daniel Bates.

        * platform/mac-wk1/TestExpectations:

2016-01-07  Brady Eidson  <beidson@apple.com>

        Modern IDB: Update results for W3C tests marked as failures that actually pass.
        https://bugs.webkit.org/show_bug.cgi?id=152827

        Reviewed by Daniel Bates.
        
        - Update FAIL expectations to PASS expectations for Modern IDB.
        - Copy the FAIL expectations over to platform/wk2 to keep testing Legacy IDB.

        * platform/mac-wk1/TestExpectations:
        * platform/wk2/imported/w3c/indexeddb/abort-in-initial-upgradeneeded-expected.txt: Copied from LayoutTests/imported/w3c/indexeddb/abort-in-initial-upgradeneeded-expected.txt.
        * platform/wk2/imported/w3c/indexeddb/idbcursor-advance-expected.txt: Copied from LayoutTests/imported/w3c/indexeddb/idbcursor-advance-expected.txt.
        * platform/wk2/imported/w3c/indexeddb/idbcursor_advance_index5-expected.txt: Copied from LayoutTests/imported/w3c/indexeddb/idbcursor_advance_index5-expected.txt.
        * platform/wk2/imported/w3c/indexeddb/idbcursor_advance_index9-expected.txt: Copied from LayoutTests/imported/w3c/indexeddb/idbcursor_advance_index9-expected.txt.
        * platform/wk2/imported/w3c/indexeddb/idbcursor_advance_objectstore5-expected.txt: Copied from LayoutTests/imported/w3c/indexeddb/idbcursor_advance_objectstore5-expected.txt.
        * platform/wk2/imported/w3c/indexeddb/idbcursor_continue_index8-expected.txt: Copied from LayoutTests/imported/w3c/indexeddb/idbcursor_continue_index8-expected.txt.
        * platform/wk2/imported/w3c/indexeddb/idbcursor_continue_objectstore6-expected.txt: Copied from LayoutTests/imported/w3c/indexeddb/idbcursor_continue_objectstore6-expected.txt.
        * platform/wk2/imported/w3c/indexeddb/idbcursor_delete_index4-expected.txt: Copied from LayoutTests/imported/w3c/indexeddb/idbcursor_delete_index4-expected.txt.
        * platform/wk2/imported/w3c/indexeddb/idbcursor_delete_objectstore4-expected.txt: Copied from LayoutTests/imported/w3c/indexeddb/idbcursor_delete_objectstore4-expected.txt.
        * platform/wk2/imported/w3c/indexeddb/idbdatabase_close2-expected.txt: Copied from LayoutTests/imported/w3c/indexeddb/idbdatabase_close2-expected.txt.
        * platform/wk2/imported/w3c/indexeddb/idbdatabase_deleteObjectStore4-not_reused-expected.txt: Copied from LayoutTests/imported/w3c/indexeddb/idbdatabase_deleteObjectStore4-not_reused-expected.txt.
        * platform/wk2/imported/w3c/indexeddb/idbfactory_deleteDatabase3-expected.txt: Copied from LayoutTests/imported/w3c/indexeddb/idbfactory_deleteDatabase3-expected.txt.
        * platform/wk2/imported/w3c/indexeddb/idbindex-multientry-big-expected.txt: Copied from LayoutTests/imported/w3c/indexeddb/idbindex-multientry-big-expected.txt.
        * platform/wk2/imported/w3c/indexeddb/idbindex_get3-expected.txt: Copied from LayoutTests/imported/w3c/indexeddb/idbindex_get3-expected.txt.
        * platform/wk2/imported/w3c/indexeddb/idbobjectstore_add4-expected.txt: Copied from LayoutTests/imported/w3c/indexeddb/idbobjectstore_add4-expected.txt.
        * platform/wk2/imported/w3c/indexeddb/idbobjectstore_createIndex2-expected.txt: Copied from LayoutTests/imported/w3c/indexeddb/idbobjectstore_createIndex2-expected.txt.
        * platform/wk2/imported/w3c/indexeddb/idbobjectstore_createIndex4-deleteIndex-event_order-expected.txt: Copied from LayoutTests/imported/w3c/indexeddb/idbobjectstore_createIndex4-deleteIndex-event_order-expected.txt.
        * platform/wk2/imported/w3c/indexeddb/idbobjectstore_put4-expected.txt: Copied from LayoutTests/imported/w3c/indexeddb/idbobjectstore_put4-expected.txt.
        * platform/wk2/imported/w3c/indexeddb/idbtransaction_abort-expected.txt: Copied from LayoutTests/imported/w3c/indexeddb/idbtransaction_abort-expected.txt.
        * platform/wk2/imported/w3c/indexeddb/keygenerator-constrainterror-expected.txt: Copied from LayoutTests/imported/w3c/indexeddb/keygenerator-constrainterror-expected.txt.
        * platform/wk2/imported/w3c/indexeddb/keygenerator-expected.txt: Copied from LayoutTests/imported/w3c/indexeddb/keygenerator-expected.txt.
        * platform/wk2/imported/w3c/indexeddb/transaction-requestqueue-expected.txt: Copied from LayoutTests/imported/w3c/indexeddb/transaction-requestqueue-expected.txt.

2016-01-06  Brady Eidson  <beidson@apple.com>

        Modern IDB: Initial enabling of imported W3C IDB tests.
        https://bugs.webkit.org/show_bug.cgi?id=152824

        Reviewed by Daniel Bates.

        * platform/mac-wk1/TestExpectations: Unskip the entire W3C IDB test directory,
          but add appropriate results for all the tests that don't yet pass.

2016-01-06  Devin Rousso  <dcrousso+webkit@gmail.com>

        Web Inspector: Add test for Color.canBeSerializedAsShortHex
        https://bugs.webkit.org/show_bug.cgi?id=152809

        Reviewed by Brian Burg.

        Added more specific tests for the canBeSerializedAsShortHex
        method of Web Inspector model class Color.

        * inspector/model/color-expected.txt:
        * inspector/model/color.html:

2016-01-06  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Scope chain shows too many scopes for functions (`let` and `var` in the same function are two scopes)
        https://bugs.webkit.org/show_bug.cgi?id=152349

        Reviewed by Timothy Hatcher.

        * inspector/debugger/breakpoint-scope.html:
        * inspector/model/scope-chain-node.html:
        The ScopeChainNode model object changed, so update tests.

2016-01-06  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] css-multicol-1 tests are failing

        Unreviewed gardening.

        * platform/gtk/TestExpectations:

2016-01-06  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaselining media/airplay-target-availability.html
        hhttps://bugs.webkit.org/show_bug.cgi?id=152815

        Unreviewed test gardening.

        * media/airplay-target-availability-expected.txt:

2016-01-06  Joseph Pecoraro  <pecoraro@apple.com>

        Remove Debug Logging from some Inspector Tests
        https://bugs.webkit.org/show_bug.cgi?id=152806

        Reviewed by Brian Burg.

        * inspector/debugger/scriptParsed.html:
        * inspector/model/scope-chain-node.html:

2016-01-06  Eric Carlson  <eric.carlson@apple.com>

        AirPlay route availability event not always sent
        https://bugs.webkit.org/show_bug.cgi?id=152802

        Reviewed by Jer Noble.

        * media/airplay-target-availability-expected.txt: Added.
        * media/airplay-target-availability.html: Added.
        * platform/mac/TestExpectations: Skip new test on Yosemite.
        * platform/efl/TestExpectations: Skip new test.
        * platform/gtk/TestExpectations: Ditto.
        * platform/win/TestExpectations: Ditto.

2016-01-06  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/odd-strings.html is flaky.
        https://bugs.webkit.org/show_bug.cgi?id=152800

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2016-01-06  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/intversion-gated-on-delete.html is flaky.
        https://bugs.webkit.org/show_bug.cgi?id=152795

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2016-01-06  Simon Fraser  <simon.fraser@apple.com>

        [iOS] Revert overflow:hidden on the body affecting viewport scale (r186786)
        https://bugs.webkit.org/show_bug.cgi?id=152803
        rdar://problem/22242515

        Reviewed by Tim Horton.
        
        Keep the tests, but update their expected results.

        * platform/ios-simulator/fast/viewport/ios/width-is-device-width-overflowing-body-overflow-hidden-expected.txt:
        * platform/ios-simulator/fast/viewport/ios/width-is-device-width-overflowing-body-overflow-hidden-tall-expected.txt:
        * platform/ios-simulator/fast/viewport/ios/width-is-device-width-overflowing-expected.txt:

2016-01-06  Brent Fulgham  <bfulgham@apple.com>

        Port blocking bypass issue using 307 redirect
        https://bugs.webkit.org/show_bug.cgi?id=152801
        <rdar://problem/24048554>

        Reviewed by Anders Carlsson.

        * http/tests/security/blocked-on-redirect-expected.txt: Added.
        * http/tests/security/blocked-on-redirect.html: Added.

2016-01-06  Carlos Alberto Lopez Perez  <clopez@igalia.com>

        [GTK] Unreviewed gardening.

        * platform/gtk/TestExpectations: report and mark new SVG failures
        after r192138 and new media timeouts after r191948. Mark also the
        RTSP test as skip because it was failing, and update the expectation
        for a slow inspector test that now timeouts.

2016-01-06  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/transaction-scope-sequencing.html fails
        https://bugs.webkit.org/show_bug.cgi?id=152775

        Reviewed by Alex Christensen.

        In addition to enabling the previously skipped test, this also completely rewrites transaction-scheduler-4, 
        which covered incorrect behavior, to cover newly implemented correct behavior.

        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/modern/resources/transaction-scheduler-4.js: Added.
        * storage/indexeddb/modern/transaction-scheduler-4-expected.txt:
        * storage/indexeddb/modern/transaction-scheduler-4.html:

2016-01-06  Zalan Bujtas  <zalan@apple.com>

        Float with media query positioned incorrectly after window resize.
        https://bugs.webkit.org/show_bug.cgi?id=152558

        Reviewed by Simon Fraser and David Hyatt.

        This patch ensures that when a renderer becomes floated, it is moved
        to the right containing block.
        When this floated renderer's previous sibling is an anonymous block, it needs
        to be reparented so that the float is positioned as if there was no anonymous block at all.

        * fast/block/float/float-with-anonymous-previous-sibling-expected.html: Added.
        * fast/block/float/float-with-anonymous-previous-sibling.html: Added.

2016-01-06  Ryan Haddad  <ryanhaddad@apple.com>

        Marking webarchive/adopt-attribute-styled-body-webarchive.html as flaky on mac-wk1
        https://bugs.webkit.org/show_bug.cgi?id=152789

        Unreviewed test gardening.

        * platform/mac-wk1/TestExpectations:

2016-01-06  Zalan Bujtas  <zalan@apple.com>

        isAnonymousInlineBlock() should exclude any ruby content.
        https://bugs.webkit.org/show_bug.cgi?id=152648
        <rdar://problem/23872549>

        Reviewed by David Hyatt.

        isAnonymousInlineBlock is designed for the new Block-Inside-Inline Model
        and all other anonymous inline-block renderers (including Ruby) should bail out of it.
        (see webkit.org/b/143145)

        * fast/ruby/ruby-inline-margin-collapse-crash-expected.txt: Added.
        * fast/ruby/ruby-inline-margin-collapse-crash.html: Added.

2016-01-06  Andy VanWagoner  <thetalecrafter@gmail.com>

        [ES6] Date.prototype should be a plain object
        https://bugs.webkit.org/show_bug.cgi?id=152574

        Reviewed by Benjamin Poulain.

        Test that the non-generic Date.prototype methods throw when invoked
        from the now generic object Date.prototype. Also test that this change
        preserves correct instanceof behavior.

        * js/date-proto-generic-invocation-expected.txt:
        * js/script-tests/date-proto-generic-invocation.js:

2016-01-05  Brady Eidson  <beidson@apple.com>

        Unreviewed IndexedDB test gardening

        * platform/mac-wk1/TestExpectations: Update the current known status of a few tests.

2016-01-05  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/structured-clone.html crashes.
        https://bugs.webkit.org/show_bug.cgi?id=152763

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/clone-exception-expected.txt:
        * storage/indexeddb/exceptions-expected.txt:
        * storage/indexeddb/objectstore-basics-expected.txt:
        * storage/indexeddb/structured-clone-expected.txt:

2016-01-05  Pranjal Jumde  <pjumde@apple.com>

        Image should not be re-registered if m_form already exists. This leads to an assertion failure.
        https://bugs.webkit.org/show_bug.cgi?id=152741
        <rdar://problem/24030778>

        Reviewed by Brent Fulgham.

        * LayoutTests/fast/html/form-registerimg-multiple-crash-expected.txt: Added.
        * LayoutTests/fast/html/form-registerimg-multiple-crash.html: Added.

2016-01-05  Commit Queue  <commit-queue@webkit.org>

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

        This change introduced JSC test failures (Requested by
        ryanhaddad on #webkit).

        Reverted changeset:

        "[ES6] Date.prototype should be a plain object"
        https://bugs.webkit.org/show_bug.cgi?id=152574
        http://trac.webkit.org/changeset/194603

2016-01-05  Simon Fraser  <simon.fraser@apple.com>

        Adjust tile coverage with margin tiles, and tidy up the indicator
        https://bugs.webkit.org/show_bug.cgi?id=152742

        Reviewed by Beth Dakin.

        New baselines. simple-document-with-margin-tiles.html needs to wait for over 0.5s
        for the FrameView::enableSpeculativeTilingIfNeeded() timer to fire before
        dumping coverage (ouch).

        * tiled-drawing/scrolling/fast-scroll-iframe-latched-iframe-expected.txt:
        * tiled-drawing/scrolling/fast-scroll-iframe-latched-iframe-with-handler-expected.txt:
        * tiled-drawing/scrolling/fast-scroll-iframe-latched-mainframe-expected.txt:
        * tiled-drawing/scrolling/fast-scroll-iframe-latched-mainframe-with-handler-expected.txt:
        * tiled-drawing/simple-document-with-margin-tiles.html:

2016-01-05  Brady Eidson  <beidson@apple.com>

        IDB test gardening.

        Rubberstamped by Alex Christensen.

        * platform/mac-wk1/TestExpectations: Unskip a passing test, and move a test from "times out" to "fails"

2016-01-05  Andy VanWagoner  <thetalecrafter@gmail.com>

        [ES6] Date.prototype should be a plain object
        https://bugs.webkit.org/show_bug.cgi?id=152574

        Reviewed by Benjamin Poulain.

        Test that the non-generic Date.prototype methods throw when invoked
        from the now generic object Date.prototype. Also test that this change
        preserves correct instanceof behavior.

        * js/date-proto-generic-invocation-expected.txt:
        * js/script-tests/date-proto-generic-invocation.js:

2016-01-05  Mark Lam  <mark.lam@apple.com>

        Make ftl-polymorphic-xxx tests more polymorphic.
        https://bugs.webkit.org/show_bug.cgi?id=152736

        Reviewed by Saam Barati.

        1. Change the test driver to alternate inputs between numeric operands and
           an object with a valueOf() method.
        2. Changed busy work blob to use the operator being tested instead of always using
           the + operator.
        3. Updated test results.

        With these change, the tests each triggers around 49000+ speculation failures when
        run as a benchmark on the VM before the fix for https://webkit.org/b/152708
        landed (in r194560: <http://trac.webkit.org/r194560>).  After the fix, the
        number of speculation failures is around 11 or lower.

        The benchmark perf with these tests shows about a 10% gain on x86 (32-bit with no
        FTL) and about 2x on x86_64 (64-bit with FTL).

        * js/regress/script-tests/ftl-polymorphic-bitand.js:
        * js/regress/script-tests/ftl-polymorphic-bitor.js:
        * js/regress/script-tests/ftl-polymorphic-bitxor.js:
        * js/regress/script-tests/ftl-polymorphic-div.js:
        * js/regress/script-tests/ftl-polymorphic-lshift.js:
        * js/regress/script-tests/ftl-polymorphic-mul.js:
        * js/regress/script-tests/ftl-polymorphic-rshift.js:
        * js/regress/script-tests/ftl-polymorphic-sub.js:
        * js/regress/script-tests/ftl-polymorphic-urshift.js:

2016-01-05  Brady Eidson  <beidson@apple.com>

        Modern IDB: Error message updates for two failing tests.
        https://bugs.webkit.org/show_bug.cgi?id=152735

        Reviewed by Alex Christensen.

        - Update results to accommodate new error messages.
        - openKeyCursor on IDBObjectStore has been removed, so remove that from the results.
        - "undefined" and "null" are invalid keys, so update the keypath-basics test to reflect this.
        
        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/deleted-objects-expected.txt:
        * storage/indexeddb/keypath-basics-expected.txt:
        * storage/indexeddb/resources/keypath-basics.js:
        * storage/indexeddb/transaction-basics-expected.txt:

2016-01-05  Brady Eidson  <beidson@apple.com>

        IndexedDB TestExpectations gardening.

        Reviewed by Alex Christensen.

        - Enable 3 flakes that should now not be flakey.
        - Unskip some previously crashing tests, but mark as text failures.
        - Move some tests around with better comments.
        
        * platform/mac-wk1/TestExpectations: 

2016-01-05  Brady Eidson  <beidson@apple.com>

        Modern IDB: Transactions from a previous page can leak forward to the next.
        https://bugs.webkit.org/show_bug.cgi?id=152698

        Reviewed by Alex Christensen.

        * storage/indexeddb/modern/resources/transactions-stop-on-navigation-2.html: Added.
        * storage/indexeddb/modern/resources/transactions-stop-on-navigation.js: Added.
        * storage/indexeddb/modern/transactions-stop-on-navigation-expected.txt: Added.
        * storage/indexeddb/modern/transactions-stop-on-navigation.html: Added.

2016-01-05  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        Marking imported/w3c/web-platform-tests/html/dom/dynamic-markup-insertion/opening-the-input-stream/010.html
        as failing (before https://bugs.webkit.org/show_bug.cgi?id=151984 it was timing out)

        Unreviewed.

        * TestExpectations:

2016-01-05  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        Activate service-workers import
        https://bugs.webkit.org/show_bug.cgi?id=152686

        Reviewed by Daniel Bates.

        * TestExpectations: Marking all service worker tests as skipped.

2016-01-05  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        Update web-platform-tests test suite
        https://bugs.webkit.org/show_bug.cgi?id=151984

        Reviewed by Daniel Bates.

        * TestExpectations: updated expectations for newly failing tests.

2016-01-04  Devin Rousso  <dcrousso+webkit@gmail.com>

        Web Inspector: add context menu items to switch CSS color property value syntax between RGB, HSL, etc
        https://bugs.webkit.org/show_bug.cgi?id=151918

        Reviewed by Timothy Hatcher.

        * inspector/model/color-expected.html:
        * inspector/model/color.html:
        Changed "nickname" to "keyword".

2016-01-04  Brady Eidson  <beidson@apple.com>

        Modern IDB: Memory indexes aren't deleted when their owning memory object stores are deleted.
        https://bugs.webkit.org/show_bug.cgi?id=152717

        Reviewed by Alex Christensen.

        * storage/indexeddb/modern/memory-index-not-deleted-with-objectstore-expected.txt: Added.
        * storage/indexeddb/modern/memory-index-not-deleted-with-objectstore.html: Added.
        * storage/indexeddb/modern/resources/memory-index-not-deleted-with-objectstore.js: Added.

2016-01-04  Sergio Villar Senin  <svillar@igalia.com>

        REGRESSION(r194143): Float width incorrectly calculated on Wikipedia
        https://bugs.webkit.org/show_bug.cgi?id=152644

        Reviewed by Myles C. Maxfield.

        * fast/css-intrinsic-dimensions/inlinesize-contribution-floats-expected.html: Added.
        * fast/css-intrinsic-dimensions/inlinesize-contribution-floats.html: Added.

2016-01-04  David Hyatt  <hyatt@apple.com>

        word-wrap: break-word broken inside a flexbox
        https://bugs.webkit.org/show_bug.cgi?id=152321

        Reviewed by Simon Fraser.

        * fast/text/word-break-on-flexbox-child-expected.html: Added.
        * fast/text/word-break-on-flexbox-child.html: Added.

2016-01-04  John Wilander  <wilander@apple.com>

        webkitGetUserMedia built-in should use @then and not then
        https://bugs.webkit.org/show_bug.cgi?id=152296

        Reviewed by Brent Fulgham.

        * streams/webkitGetUserMedia-shadowing-then-expected.txt: Added.
        * streams/webkitGetUserMedia-shadowing-then.html: Added.

2016-01-04  Ryan Haddad  <ryanhaddad@apple.com>

        Unreviewed, rolling out r194533.

        The test that was re-enabled with this change is still flaky

        Reverted changeset:

        "Modern IDB TestExpectations gardening."
        http://trac.webkit.org/changeset/194533

2016-01-04  Ryan Haddad  <ryanhaddad@apple.com>

        Skip failing test fast/animation/request-animation-frame-disabled.html on ios-simulator
        fast/animation/request-animation-frame-disabled.html

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-01-04  Ryan Haddad  <ryanhaddad@apple.com>

        Re-enable fast/animation tests on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=137588

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2016-01-02  Brady Eidson  <beidson@apple.com>

        Modern IDB TestExpectations gardening.

        Rubberstamped by Andy Estes.

        * platform/mac-wk1/TestExpectations: Remove the failure entry for a test that passes.

2016-01-03  Simon Fraser  <simon.fraser@apple.com>

        scrollLeft returns different values for viewport and non-viewport scrolling with rtl
        https://bugs.webkit.org/show_bug.cgi?id=94405
        rdar://problem/21829754

        Reviewed by Zalan Bujtas.
        
        programmatic-overflow-rtl-scrollIntoView.html is a basic test for negative scrollLeft
        in an RTL scroller.
        
        Other tests are fixed to programmatically scroll to negative scroll positions.

        * compositing/rtl/rtl-overflow-scrolling.html:
        * fast/overflow/scroll-div-hide-show-expected.txt:
        * fast/overflow/scroll-div-hide-show.html:
        * fast/repaint/horizontal-bt-overflow-parent.html:
        * fast/repaint/horizontal-bt-overflow-same.html:
        * fast/repaint/vertical-overflow-parent.html:
        * fast/repaint/vertical-overflow-same.html:
        * fast/scrolling/programmatic-overflow-rtl-scrollIntoView-expected.txt: Added.
        * fast/scrolling/programmatic-overflow-rtl-scrollIntoView.html: Added.
        * fast/writing-mode/flipped-blocks-hit-test-overflow-scroll.html:
        * imported/blink/compositing/overflow/rtl-overflow.html:

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

        Some cleanup in ScrollAnimator
        https://bugs.webkit.org/show_bug.cgi?id=152649

        Reviewed by Zalan Bujtas.
        
        Added fast/scrolling/arrow-key-scroll-in-rtl-document.html to test for arrow
        key scrolling in an RTL document, which an earlier version of the patch
        regressed without detection.

        * fast/dom/horizontal-scrollbar-in-rtl-expected.txt:
        * fast/scrolling/arrow-key-scroll-in-rtl-document-expected.txt: Added.
        * fast/scrolling/arrow-key-scroll-in-rtl-document.html: Added.

2016-01-02  Zalan Bujtas  <zalan@apple.com>

        Simple line layout:: Add text-decoration support.
        https://bugs.webkit.org/show_bug.cgi?id=152623

        Reviewed by Antti Koivisto.

        Existing tests cases also cover decoration correctness.

        * fast/css3-text/css3-text-decoration/simple-line-layout-text-decoration-expected.html: Added.
        * fast/css3-text/css3-text-decoration/simple-line-layout-text-decoration.html: Added.

2016-01-01  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/database-deletepending-flag.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=152600

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

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

        Fix reload and programmatic scrolling in RTL documents
        https://bugs.webkit.org/show_bug.cgi?id=152639

        Reviewed by Zalan Bujtas.
        
        New tests for programmatic scrolling (2 kinds!) in RTL documents, and
        reloading a scrolled RTL document.

        * fast/scrolling/programmatic-document-rtl-scroll-expected.html: Added.
        * fast/scrolling/programmatic-document-rtl-scroll.html: Added.
        * fast/scrolling/programmatic-document-rtl-scrollIntoView-expected.txt: Added.
        * fast/scrolling/programmatic-document-rtl-scrollIntoView.html: Added.
        * fast/scrolling/scroll-position-on-reload-rtl-expected.txt: Added.
        * fast/scrolling/scroll-position-on-reload-rtl.html: Added.

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

        REGRESSION (r194448): Scrolling overflow:scroll goes too far
        https://bugs.webkit.org/show_bug.cgi?id=152645

        Reviewed by Zalan Bujtas.
        
        Test that scrolls and overflow div with wheel events, then checks that it has
        not passed the max scroll offset.

        * fast/scrolling/overflow-scroll-past-max-expected.txt: Added.
        * fast/scrolling/overflow-scroll-past-max.html: Added.

2016-01-01  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] Several IndexedDB tests failing

        Unreviewed gardening.

        * platform/gtk/TestExpectations:

2016-01-01  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] http/tests/misc/detached-frame-console.html is crashing

        Unreviewed gardening.

        * platform/gtk/TestExpectations:

2016-01-01  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] http/tests/media/clearkey/clear-key-hls-aes128.html is crashing

        Unreviewed gardening.

        * platform/gtk/TestExpectations:

2016-01-01  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] Expect missing results for CSS table anonymous objects tests

        Unreviewed gardening.

        * platform/gtk/TestExpectations:

2015-12-31  Simon Fraser  <simon.fraser@apple.com>

        [iOS WK2] Fix incorrect scrollPosition handling
        https://bugs.webkit.org/show_bug.cgi?id=152630

        Reviewed by Zalan Bujtas.
        
        These tests now load with a 0,0 scroll position, so don't dump out the "scrolled to" text,
        which matches Mac behavior.

        * platform/ios-simulator-wk2/fast/multicol/pagination/BottomToTop-bt-expected.txt:
        * platform/ios-simulator-wk2/fast/multicol/pagination/BottomToTop-lr-expected.txt:
        * platform/ios-simulator-wk2/fast/multicol/pagination/BottomToTop-rl-expected.txt:
        * platform/ios-simulator-wk2/fast/multicol/pagination/BottomToTop-tb-expected.txt:
        * platform/ios-simulator-wk2/fast/multicol/pagination/RightToLeft-bt-expected.txt:
        * platform/ios-simulator-wk2/fast/multicol/pagination/RightToLeft-lr-expected.txt:
        * platform/ios-simulator-wk2/fast/multicol/pagination/RightToLeft-rl-dynamic-expected.txt:
        * platform/ios-simulator-wk2/fast/multicol/pagination/RightToLeft-rl-expected.txt:
        * platform/ios-simulator-wk2/fast/multicol/pagination/RightToLeft-tb-expected.txt:
        * platform/ios-simulator-wk2/fast/multicol/vertical-rl/column-break-with-balancing-expected.txt:
        * platform/ios-simulator-wk2/fast/multicol/vertical-rl/column-rules-expected.txt:
        * platform/ios-simulator-wk2/fast/multicol/vertical-rl/float-paginate-complex-expected.txt:

2015-12-31  Zalan Bujtas  <zalan@apple.com>

        text-decoration: line-through is mispositioned when text has overline/underline too.
        https://bugs.webkit.org/show_bug.cgi?id=152619

        Reviewed by Simon Fraser.

        Line-through painting was mistakenly calling drawLineForText with overline/underline positioning.

        * fast/css3-text/css3-text-decoration/text-decoration-line-through-mispositioned-expected.html: Added.
        * fast/css3-text/css3-text-decoration/text-decoration-line-through-mispositioned.html: Added.

2015-12-31  Zalan Bujtas  <zalan@apple.com>

        Simple line layout: Text with stroke width is not positioned correctly.
        https://bugs.webkit.org/show_bug.cgi?id=152614

        Reviewed by Simon Fraser.

        Visual overflow should not affect text position.

        * fast/text/simple-line-layout-text-position-with-stroke-expected.html: Added.
        * fast/text/simple-line-layout-text-position-with-stroke.html: Added.

2015-12-31  Zalan Bujtas  <zalan@apple.com>

        Simple line layout: Nested block with pseudo first-line parent should bail out of simple line layout.
        https://bugs.webkit.org/show_bug.cgi?id=152599

        Reviewed by Simon Fraser.

        We should bail out of simple line layout if any of the ancestors have pseudo first-line style.
        (see RenderBlock::firstLineBlock()) 

        * fast/block/line-layout/first-line-should-bail-out-of-simple-line-layout-expected.html: Added.
        * fast/block/line-layout/first-line-should-bail-out-of-simple-line-layout.html: Added.

2015-12-31  Martin Robinson  <mrobinson@igalia.com>

        Mark some tests as failing on WebKitGTK+.

        Unreviewed gardening.

        * platform/gtk/TestExpectations:

2015-12-31  Martin Robinson  <mrobinson@igalia.com>

        Mark WOFF2 test as failing on WebKitGTK+

        Unreviewed. Gardening.

        * platform/gtk/TestExpectations:

2015-12-31  ChangSeok Oh  <changseok.oh@collabora.com>

        [GTK] Unreviewed gardening at 2015-12-31

        Mark fast/text/text-combine-placement.html as crashing.

        * platform/gtk/TestExpectations:

2015-12-30  Brady Eidson  <beidson@apple.com>

        Modern IDB: Only fire blocked events after all open connections have handled their versionchange events.
        https://bugs.webkit.org/show_bug.cgi?id=152593

        Reviewed by Andy Estes.

        - Unskip two timeout tests that now pass.
        - Reclassify a text-failure test to be skipped for new reasons.
        
        * platform/mac-wk1/TestExpectations:

2015-12-30  Gyuyoung Kim  <gyuyoung.kim@webkit.org>

        Unreviewed, EFL gardening.

        Mark navigation policy tests to failure and unskip some passing test.
        Update media failure tests.

        * platform/efl/TestExpectations:

2015-12-30  Skachkov Oleksandr  <gskachkov@gmail.com>

        [ES6] Arrow function syntax. Arrow function specific features. Lexical bind "super"
        https://bugs.webkit.org/show_bug.cgi?id=149615

        Reviewed by Saam Barati.

        * js/arrowfunction-superproperty-expected.txt: Added.
        * js/arrowfunction-superproperty.html: Added.
        * js/script-tests/arrowfunction-superproperty.js: Added.

2015-12-29  Andy VanWagoner  <andy@instructure.com>

        Remove tests for sometimes unsupported calendars, numbering systems, and time zone backward links
        https://bugs.webkit.org/show_bug.cgi?id=152550

        Reviewed by Alexey Proskuryakov.

        Time zones change often, so only test a few probable backward links.
        Remove hanidays numbering system tests, since GTK and EFL don't support it.
        Remove islamic-umalqura calendar tests, since GTK and EFL don't support it.

        * js/intl-datetimeformat-expected.txt:
        * js/script-tests/intl-datetimeformat.js:

2015-12-27  Zalan Bujtas  <zalan@apple.com>

        Should never be reached failure in WebCore::RenderElement::clearLayoutRootIfNeeded
        https://bugs.webkit.org/show_bug.cgi?id=151590

        Reviewed by Simon Fraser.

        We should always set the layoutroot when a new subtree layout is requested (and convert it
        to a full layout when needed). It ensures that renderers are detached cleanly even when
        they are set as layoutroot.

        * fast/block/assert-when-layout-root-is-not-cleared-expected.txt: Added.
        * fast/block/assert-when-layout-root-is-not-cleared.html: Added.

2015-12-25  Zalan Bujtas  <zalan@apple.com>

        Subpixel rendering: Add subpixel support for outline.
        https://bugs.webkit.org/show_bug.cgi?id=152560

        Unable to ref-test other outline types.

        Reviewed by Simon Fraser.

        * fast/borders/hidpi-outline-hairline-painting-expected.html: Added.
        * fast/borders/hidpi-outline-hairline-painting.html: Added.

2015-12-24  Zalan Bujtas  <zalan@apple.com>

        ASSERTION FAILED: x2 >= x1 in WebCore::RenderElement::drawLineForBoxSide
        https://bugs.webkit.org/show_bug.cgi?id=151210

        Reviewed by Simon Fraser.

        "IntRect outer = snappedIntRect(inner)" explicitly converts inner to LayoutRect and
        returns a snapped IntRect. When inner (after the inflate) overflows LayoutUnit,
        the snapped outer rect becomes smaller than the inner rect.

        This patch also enables outline painting on subpixel positions.

        * fast/borders/hidpi-outline-on-subpixel-position-expected.html: Added.
        * fast/borders/hidpi-outline-on-subpixel-position.html: Added.
        * fast/borders/outline-offset-overflow-expected.txt: Added.
        * fast/borders/outline-offset-overflow.html: Added.

2015-12-23  Brady Eidson  <beidson@apple.com>

        Modern IDB: Don't open any new connections until after version change transactions are completely handled.
        https://bugs.webkit.org/show_bug.cgi?id=152441

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations: Enable 4 now-passing tests.

2015-12-23  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/transaction-basics.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=152481

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/modern/idbdatabase-transaction-failures-expected.txt:
        * storage/indexeddb/transaction-basics-expected.txt:

2015-12-23  Gyuyoung Kim  <gyuyoung.kim@webkit.org>

        Unreviewed EFL gardening.

        Mark shadow dom to Pass with incorrect result. Additionally remove
        disappeared storage tests in TestExpectations.

        Unskip MSE tests because MSE functionalities have been supported by gstreamer.

        * platform/efl/TestExpectations:

2015-12-23  Simon Fraser  <simon.fraser@apple.com>

        REGRESSION (r187593): Scroll position jumps when selecting text in an iframe
        https://bugs.webkit.org/show_bug.cgi?id=152541
        rdar://problem/23886181

        Reviewed by Tim Horton.
        
        New test for autoscrolling iframe contents (an existing test scrolled an overflow:scroll
        inside an iframe, and didn't catch the bug).

        * fast/events/autoscroll-in-iframe-body-expected.txt: Added.
        * fast/events/autoscroll-in-iframe-body.html: Added.
        * fast/forms/input-readonly-autoscroll.html: Fix a missing double quote.

2015-12-22  Simon Fraser  <simon.fraser@apple.com>

        Minor cleanup in RenderBox::canBeProgramaticallyScrolled()
        https://bugs.webkit.org/show_bug.cgi?id=152515

        Reviewed by Tim Horton.

        Test that programmatic scrolling works inside overflow:hidden.

        * fast/overflow/overflow-hidden-scroll-into-view-expected.html: Added.
        * fast/overflow/overflow-hidden-scroll-into-view.html: Added.

2015-12-23  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaselining storage/domstorage/localstorage/delete-defineproperty-removal.html
        https://bugs.webkit.org/show_bug.cgi?id=149179

        Unreviewed test gardening.

        * storage/domstorage/localstorage/delete-defineproperty-removal-expected.txt:

2015-12-23  Pranjal Jumde  <pjumde@apple.com>

        Test to check for stack recursion when indexed propertyNames defined using Object.defineProperty are deleted.
        https://bugs.webkit.org/show_bug.cgi?id=149179
        <rdar://problem/22708019>.

        Reviewed by Filip Pizlo.

        * storage/domstorage/localstorage/delete-defineproperty-removal-expected.txt: Added.
        * storage/domstorage/localstorage/delete-defineproperty-removal.html: Added.

2015-12-23  Eric Carlson  <eric.carlson@apple.com>

        [MediaStream] MediaDeviceInfo.label must be empty in some situations
        https://bugs.webkit.org/show_bug.cgi?id=152000

        Reviewed by Brent Fulgham.

        * fast/mediastream/MediaDevices-enumerateDevices-expected.txt:
        * fast/mediastream/MediaDevices-enumerateDevices.html:

2015-12-23  Andy VanWagoner  <andy@instructure.com>

        [INTL] Implement DateTime Format Functions
        https://bugs.webkit.org/show_bug.cgi?id=147606

        Reviewed by Benjamin Poulain.

        * js/intl-datetimeformat-expected.txt: Added format tests.
        * js/intl-datetimeformat.html: Used utf-8.
        * js/script-tests/intl-datetimeformat.js: Added format tests.

2015-12-23  Andy VanWagoner  <thetalecrafter@gmail.com>

        [INTL] Implement String.prototype.localeCompare in ECMA-402
        https://bugs.webkit.org/show_bug.cgi?id=147607

        Reviewed by Benjamin Poulain.

        * js/script-tests/string-localeCompare.js:
        * js/script-tests/string-prototype-properties.js: Update error message.
        * js/string-localeCompare-expected.txt:
        * js/string-prototype-properties-expected.txt: Update error message.
        * js/string-localeCompare.html:

2015-12-23  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaselining fast/text/emoji.html for Windows
        https://bugs.webkit.org/show_bug.cgi?id=152147

        Unreviewed test gardening.

        * platform/win/fast/text/emoji-expected.txt:

2015-12-23  Ryan Haddad  <ryanhaddad@apple.com>

        Marking http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-* as failing on Win
        https://bugs.webkit.org/show_bug.cgi?id=152411

        Unreviewed test gardening.

        * platform/win/TestExpectations:

2015-12-23  ChangSeok Oh  <changseok.oh@collabora.com>

        [GTK] Unreviewed gardening

        RTCPeerConnection-state.html is removed after r194112. Remove failure expectations
        for tests which have been passing. Add new expectations for text-combine-shrink-on-color-change.html

        * platform/gtk/TestExpectations:
        * platform/gtk/fast/text/text-combine-shrink-on-color-change-expected.png: Added.
        * platform/gtk/fast/text/text-combine-shrink-on-color-change-expected.txt: Added.

2015-12-23  Andy VanWagoner  <andy@instructure.com>

        [INTL] Implement Intl.DateTimeFormat.prototype.resolvedOptions ()
        https://bugs.webkit.org/show_bug.cgi?id=147603

        Reviewed by Benjamin Poulain.

        * js/intl-datetimeformat-expected.txt: Added resolvedOptions tests.
        * js/script-tests/intl-datetimeformat.js: Added resolvedOptions tests.
        (string_appeared_here):

2015-12-23  Chris Aljoudi <chris@chrismatic.io> and Alex Christensen <achristensen@webkit.org>

        Content blockers should be able to promote http to https
        https://bugs.webkit.org/show_bug.cgi?id=148966

        Reviewed by Benjamin Poulain.

        * http/tests/contentextensions/make-https-expected.txt: Added.
        * http/tests/contentextensions/make-https.html: Added.
        * http/tests/contentextensions/make-https.html.json: Added.

2015-12-22  Xabier Rodriguez Calvar  <calvaris@igalia.com>

        [Streams API] Fix cosmetic things after importing spec tests
        https://bugs.webkit.org/show_bug.cgi?id=152479

        Reviewed by Youenn Fablet.

        Spec version are mainly updated in this patch as it wasn't done when importing tests from the spec. Some other
        minor changes were done, as renumbering some tests, removing some orphan expectations and other styling issues.

        * streams/brand-checks.html:
        * streams/pipe-to.html:
        * streams/readable-stream-controller-error.html:
        * streams/readable-stream-pipeThrough.html:
        * streams/readable-stream-reader-read.html:
        * streams/reference-implementation/abstract-ops.html:
        * streams/reference-implementation/bad-strategies.html:
        * streams/reference-implementation/bad-underlying-sinks.html:
        * streams/reference-implementation/bad-underlying-sources-expected.txt: Removed.
        * streams/reference-implementation/brand-checks.html:
        * streams/reference-implementation/byte-length-queuing-strategy.html:
        * streams/reference-implementation/count-queuing-strategy.html:
        * streams/reference-implementation/pipe-through.html:
        * streams/reference-implementation/pipe-to-options.html:
        * streams/reference-implementation/pipe-to.html:
        * streams/reference-implementation/readable-stream-templated.html:
        * streams/reference-implementation/transform-stream-errors.html:
        * streams/reference-implementation/transform-stream.html:
        * streams/reference-implementation/writable-stream-abort.html:
        * streams/reference-implementation/writable-stream-expected.txt:
        * streams/reference-implementation/writable-stream.html:

2015-12-22  Ryan Haddad  <ryanhaddad@apple.com>

        Marking webgl/1.0.2/conformance/extensions/get-extension.html as flaky on mac-wk1
        https://bugs.webkit.org/show_bug.cgi?id=152506

        Unreviewed test gardening.

        * platform/mac-wk1/TestExpectations:

2015-12-22  Chris Fleizach  <cfleizach@apple.com>

        [WK2] Looping in testcase: fast/dom/Window/property-access-on-cached-window-after-frame-removed.html
        https://bugs.webkit.org/show_bug.cgi?id=152482

        Reviewed by Brent Fulgham.

        * platform/mac-wk2/TestExpectations:

2015-12-21  Ryan Haddad  <ryanhaddad@apple.com>

        Skipping unsupported test on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=152491

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2015-12-21  Ryan Haddad  <ryanhaddad@apple.com>

        Marking inspector/debugger/break-on-exception-catch.html as a flaky timeout on mac-wk2 debug
        https://bugs.webkit.org/show_bug.cgi?id=152492

        Unreviewed test gardening.

        * platform/mac-wk2/TestExpectations:

2015-12-21  Skachkov Oleksandr  <gskachkov@gmail.com>

        Unexpected exception assigning to this._property inside arrow function
        https://bugs.webkit.org/show_bug.cgi?id=152028

        Reviewed by Saam Barati.

        Added new test cases for arrow function, to force create lexical env in body of function.

        * js/arrowfunction-lexical-bind-this-expected.txt:
        * js/script-tests/arrowfunction-lexical-bind-this.js:

2015-12-21  Ryan Haddad  <ryanhaddad@apple.com>

        Marking inspector/debugger/command-line-api-exception-nested-catch.html as a flaky timeout on mac-wk1
        https://bugs.webkit.org/show_bug.cgi?id=152487

        Unreviewed test gardening.

        * platform/mac-wk1/TestExpectations:

2015-12-21  Antti Koivisto  <antti@apple.com>

        Limit cached redirect chain length
        https://bugs.webkit.org/show_bug.cgi?id=152477

        Reviewed by Andreas Kling.

        * http/tests/cache/disk-cache/redirect-chain-limits-expected.txt: Added.
        * http/tests/cache/disk-cache/redirect-chain-limits.html: Added.
        * http/tests/cache/disk-cache/resources/redirect-chain.phpl: Added.

2015-12-21  Ryan Haddad  <ryanhaddad@apple.com>

        Marking webaudio/audiocontext-state-interrupted.html  as a flaky crasher on mac-wk1
        https://bugs.webkit.org/show_bug.cgi?id=152485

        Unreviewed test gardening.

        * platform/mac-wk1/TestExpectations:

2015-12-21  Ryan Haddad  <ryanhaddad@apple.com>

        Skipping fast/events/can-click-element-on-page-with-active-pseudo-class-and-search-field.html on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=152449

        Unreviewed teset gardening.

        * platform/ios-simulator/TestExpectations:

2015-12-21  Ryan Haddad  <ryanhaddad@apple.com>

        Unreviewed, rolling out r194328.

        This change appears to have caused failures in JSC tests

        Reverted changeset:

        "[INTL] Implement String.prototype.localeCompare in ECMA-402"
        https://bugs.webkit.org/show_bug.cgi?id=147607
        http://trac.webkit.org/changeset/194328

2015-12-21  Andy VanWagoner  <thetalecrafter@gmail.com>

        [INTL] Implement String.prototype.localeCompare in ECMA-402
        https://bugs.webkit.org/show_bug.cgi?id=147607

        Reviewed by Darin Adler.

        * js/script-tests/string-localeCompare.js:
        * js/script-tests/string-prototype-properties.js: Update error message.
        * js/string-localeCompare-expected.txt:
        * js/string-prototype-properties-expected.txt: Update error message.
        * js/string-localeCompare.html:

2015-12-20  Jeremy Zerfas  <WebKit@JeremyZerfas.com>

        Don't allocate a NSImage and skip unneeded call to TIFFRepresentation when copying image to clipboard.
        https://bugs.webkit.org/show_bug.cgi?id=152374

        Reviewed by Darin Adler.

        Added test to make sure that when copying a 50 frame 500x500 animation
        (50 MB uncompressed) to the clipboard, the additional memory usage is
        kept to less than 200 MB.

        * fast/images/image-copy-memory-usage-expected.txt: Added.
        * fast/images/image-copy-memory-usage.html: Added.
        * fast/images/resources/dot-moving-in-a-circle-animation.gif: Added.

2015-12-20  Commit Queue  <commit-queue@webkit.org>

        Unreviewed, rolling out r194033 and r194267.
        https://bugs.webkit.org/show_bug.cgi?id=152465

        Caused crashes on Mac WK1 bots (Requested by youenn on
        #webkit).

        Reverted changesets:

        "[Streams API] Expose ReadableStream and relatives to Worker"
        https://bugs.webkit.org/show_bug.cgi?id=152066
        http://trac.webkit.org/changeset/194033

        "[Streams API] imported/w3c/web-platform-tests/streams-api
        /readable-streams/cancel.html has a flaky test"
        https://bugs.webkit.org/show_bug.cgi?id=152065
        http://trac.webkit.org/changeset/194267

2015-12-18  Antti Koivisto  <antti@apple.com>

        Cache redirects as separate entries
        https://bugs.webkit.org/show_bug.cgi?id=152424

        Reviewed by Alex Christensen.

        * http/tests/cache/disk-cache/disk-cache-redirect-expected.txt: Added.
        * http/tests/cache/disk-cache/disk-cache-redirect.html: Added.
        * http/tests/cache/disk-cache/resources/generate-response.cgi:

2015-12-18  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] Mark fast/regions/overflow/overflow-region-float.html as passing

        Unreviewed test gardening. This test has been passing since r191658.

        * platform/gtk/TestExpectations:

2015-12-18  Ryan Haddad  <ryanhaddad@apple.com>

        Skipping fast/scrolling/rtl-point-in-iframe.html on ios-simulator since it tests wheel events.
        https://bugs.webkit.org/show_bug.cgi?id=152442

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2015-12-18  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline imported/w3c/web-platform-tests/html/dom/interfaces.html for ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=152437

        Unreviewed test gardening.

        * platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt:

2015-12-18  Ryan Haddad  <ryanhaddad@apple.com>

        Marking inspector/console/messagesCleared.html as a flaky timeout on mac-wk2 debug
        https://bugs.webkit.org/show_bug.cgi?id=152025

        Unreviewed test gardening.

        * platform/mac-wk2/TestExpectations:

2015-12-18  Brady Eidson  <beidson@apple.com>

        Modern IDB: Refactor when opening the backing store takes place.
        https://bugs.webkit.org/show_bug.cgi?id=152405

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2015-12-18  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] Unreviewed gardening

        css3/flexbox/multiline-reverse-wrap-baseline.html consistently passes for GTK since
        r191623, but fails on Apple ports, so add a GTK-specific Pass expectation.

        * platform/gtk/TestExpectations:

2015-12-18  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] Unreviewed gardening
        https://bugs.webkit.org/show_bug.cgi?id=142292

        fast/images/animated-gif-body-outside-viewport.html and
        fast/images/animated-gif-window-resizing.html are flaky; mark them
        accordingly.

        * platform/gtk/TestExpectations:

2015-12-18  Michael Catanzaro  <mcatanzaro@igalia.com>

        [GTK] Unreviewed gardening

        Remove failure expectation for fast/events/drag-and-drop-autoscroll-inner-frame.html which
        has been consistently passing since r192511.

        * platform/gtk/TestExpectations:

2015-12-17  Commit Queue  <commit-queue@webkit.org>

        Unreviewed, rolling out r194241 and r194252.
        https://bugs.webkit.org/show_bug.cgi?id=152415

        Caused crashes on GuardMalloc (Requested by ap on #webkit).

        Reverted changesets:

        "Modern IDB: Refactor open/delete requests to exist in the
        same queue."
        https://bugs.webkit.org/show_bug.cgi?id=152397
        http://trac.webkit.org/changeset/194241

        "Modern IDB: Refactor when opening the backing store takes
        place."
        https://bugs.webkit.org/show_bug.cgi?id=152405
        http://trac.webkit.org/changeset/194252

2015-12-17  Sukolsak Sakshuwong  <sukolsak@gmail.com>

        [INTL] Implement Collator Compare Functions
        https://bugs.webkit.org/show_bug.cgi?id=147604

        Reviewed by Darin Adler.

        * js/intl-collator-expected.txt:
        * js/intl-collator.html:
        * js/script-tests/intl-collator.js:
        (testCollator):

2015-12-17  Brady Eidson  <beidson@apple.com>

        Modern IDB: Refactor when opening the backing store takes place.
        https://bugs.webkit.org/show_bug.cgi?id=152405

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2015-12-17  Joseph Pecoraro  <pecoraro@apple.com>

        Provide a way to distinguish a nested lexical block from a function's lexical block
        https://bugs.webkit.org/show_bug.cgi?id=152361

        Reviewed by Saam Barati.

        * inspector/debugger/breakpoint-scope-expected.txt:
        We will soon remove the backend sending a "Local" scope.
        The backend was just marking the first closure scope as local.
        The frontend can do this itself and do a better job of it.

        * inspector/model/resources/all-scopes.js: Added.
        (testAllScopes.innerScope):
        (testAllScopes):
        * inspector/model/resources/block-scopes.js: Added.
        (testBlockScopes):
        (testBlockScopes.method):
        * inspector/model/resources/function-name-scopes.js: Added.
        (testFunctionNameScope1):
        * inspector/model/scope-chain-node-expected.txt: Added.
        * inspector/model/scope-chain-node.html: Added.
        Tests for ways to get all the different scope types and
        specific cases of certain scope types.

2015-12-17  Keith Miller  <keith_miller@apple.com>

        [ES6] Add support for Symbol.hasInstance
        https://bugs.webkit.org/show_bug.cgi?id=151839

        Reviewed by Saam Barati.

        Fix tests to reflect the changes to instanceof in ES6.

        Added a new regression test for bound functions in instanceof
        as the perfomance on bound functions should, to some degree,
        reflect the performance on C-API users.

        * inspector/model/remote-object-get-properties-expected.txt:
        * js/Object-getOwnPropertyNames-expected.txt:
        * js/exception-for-nonobject-expected.txt:
        * js/exception-instanceof-expected.txt:
        * js/instance-of-immediates-expected.txt:
        * js/regress/instanceof-bound-expected.txt: Added.
        * js/regress/instanceof-bound.html: Added.
        * js/regress/script-tests/instanceof-bound.js: Added.
        (Constructor):
        (test):
        * js/script-tests/Object-getOwnPropertyNames.js:

2015-12-17  Simon Fraser  <simon.fraser@apple.com>

        Disable viewport "shrink to fit" outside of multitasking mode
        https://bugs.webkit.org/show_bug.cgi?id=152403
        rdar://problem/23818102

        Reviewed by Tim Horton.
        
        This test no longer does shrink-to-fit, so starts with a min and initial scale of 1.

        * fast/viewport/ios/width-is-device-width-overflowing-expected.txt:

2015-12-16  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Add JSContext Script Profiling
        https://bugs.webkit.org/show_bug.cgi?id=151899

        Reviewed by Brian Burg.

        * inspector/script-profiler/event-type-API-expected.txt: Added.
        * inspector/script-profiler/event-type-API.html: Added.
        * inspector/script-profiler/event-type-Microtask-expected.txt: Added.
        * inspector/script-profiler/event-type-Microtask.html: Added.
        * inspector/script-profiler/tracking-expected.txt: Added.
        * inspector/script-profiler/tracking.html: Added.
        Tests for the new ScriptProfiler domain.

2015-12-17  Ryan Haddad  <ryanhaddad@apple.com>

        Marking fast/media/mq-* tests as failing on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=152137

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2015-12-17  Ryan Haddad  <ryanhaddad@apple.com>

        Skipping http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-* tests on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=152390

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2015-12-17  Lorenzo Tilve  <ltilve@igalia.com>

        [GTK] Unreviewed gardening
        
        Remove failure expectations for tests that have been passing after
        r185157, r186191, r189670, r191658 and r191727.

        * platform/gtk/TestExpectations:

2015-12-17  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        Remove temporary flakiness expectations for WPT tests introduced for bug 152257
        https://bugs.webkit.org/show_bug.cgi?id=152377

        Unreviewed.

        * TestExpectations: removing some flakiness expectations.

2015-12-17  Yusuke Suzuki  <utatane.tea@gmail.com>

        [ES6] Handle new_generator_func / new_generator_func_exp in DFG / FTL
        https://bugs.webkit.org/show_bug.cgi?id=152227

        Reviewed by Saam Barati.

        Make the test taking longer time.

        * js/regress/script-tests/generator-function-create.js:
        (test):

2015-12-16  Andy Estes  <aestes@apple.com>

        [iOS] Block loading external stylesheets in the Content-Disposition: attachment sandbox
        https://bugs.webkit.org/show_bug.cgi?id=152375
        <rdar://problem/22020902>

        Reviewed by Darin Adler.

        * http/tests/contentdispositionattachmentsandbox/at-import-stylesheets-disabled-expected.txt: Added.
        * http/tests/contentdispositionattachmentsandbox/at-import-stylesheets-disabled.html: Added.
        * http/tests/contentdispositionattachmentsandbox/cross-origin-frames-disabled-expected.txt:
        * http/tests/contentdispositionattachmentsandbox/external-stylesheets-disabled-expected.txt: Added.
        * http/tests/contentdispositionattachmentsandbox/external-stylesheets-disabled.html: Added.
        * http/tests/contentdispositionattachmentsandbox/resources/at-import-stylesheets-frame.php: Added.
        * http/tests/contentdispositionattachmentsandbox/resources/external-stylesheets-frame.php: Added.
        * http/tests/contentdispositionattachmentsandbox/resources/xml-stylesheet-processing-instructions-frame.php: Added.
        * http/tests/contentdispositionattachmentsandbox/xml-stylesheet-processing-instructions-disabled-expected.txt: Added.
        * http/tests/contentdispositionattachmentsandbox/xml-stylesheet-processing-instructions-disabled.html: Added.

2015-12-16  Ryan Haddad  <ryanhaddad@apple.com>

        Adding timout expectation to one more wpt test that I missed in the last commit.
        https://bugs.webkit.org/show_bug.cgi?id=152335

        Unreviewed test gardening.

        * TestExpectations:

2015-12-16  Ryan Haddad  <ryanhaddad@apple.com>

        Adding timeout to wpt TestExpectations due to WK/WPT testharness.js issues.
        https://bugs.webkit.org/show_bug.cgi?id=152335

        Unreviewed test gadening.

        * TestExpectations:

2015-12-16  Ryan Haddad  <ryanhaddad@apple.com>

        Re-baseline pageoverlay/overlay* tests for mac-wk1
        https://bugs.webkit.org/show_bug.cgi?id=152338

        Unreviewed test gardening.

        * platform/mac-wk1/pageoverlay/overlay-large-document-expected.txt:
        * platform/mac-wk1/pageoverlay/overlay-large-document-scrolled-expected.txt:
        * platform/mac-wk1/pageoverlay/overlay-small-frame-mouse-events-expected.txt:

2015-12-16  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        Mark additional wpt tests as flaky due to WK/WPT testharness.js
        https://bugs.webkit.org/show_bug.cgi?id=152335

        Unreviewed.

        * TestExpectations: marking some more tests as flaky.

2015-12-16  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Typing object literal in the console causes a parse error
        https://bugs.webkit.org/show_bug.cgi?id=141737

        Reviewed by Timothy Hatcher.

        * inspector/controller/runtime-controller-expected.txt: Added.
        * inspector/controller/runtime-controller.html: Added.

2015-12-08  Sergio Villar Senin  <svillar@igalia.com>

        Fix computation of min|max-content contribution of non-replaced blocks
        https://bugs.webkit.org/show_bug.cgi?id=152004

        Reviewed by Darin Adler.

        * fast/css-intrinsic-dimensions/auto-maxcontent-inlinesize-contribution-nonreplaced-blocks-expected.html: Added.
        * fast/css-intrinsic-dimensions/auto-maxcontent-inlinesize-contribution-nonreplaced-blocks.html: Added.
        * fast/css-intrinsic-dimensions/auto-mincontent-inlinesize-contribution-nonreplaced-blocks-expected.html: Added.
        * fast/css-intrinsic-dimensions/auto-mincontent-inlinesize-contribution-nonreplaced-blocks.html: Added.
        * fast/css-intrinsic-dimensions/fillavailable-maxcontent-inlinesize-contribution-nonreplaced-blocks-expected.html: Added.
        * fast/css-intrinsic-dimensions/fillavailable-maxcontent-inlinesize-contribution-nonreplaced-blocks.html: Added.
        * fast/css-intrinsic-dimensions/fillavailable-mincontent-inlinesize-contribution-nonreplaced-blocks-expected.html: Added.
        * fast/css-intrinsic-dimensions/fillavailable-mincontent-inlinesize-contribution-nonreplaced-blocks.html: Added.
        * fast/css-intrinsic-dimensions/fitcontent-maxcontent-inlinesize-contribution-nonreplaced-blocks-expected.html: Added.
        * fast/css-intrinsic-dimensions/fitcontent-maxcontent-inlinesize-contribution-nonreplaced-blocks.html: Added.
        * fast/css-intrinsic-dimensions/fitcontent-mincontent-inlinesize-contribution-nonreplaced-blocks-expected.html: Added.
        * fast/css-intrinsic-dimensions/fitcontent-mincontent-inlinesize-contribution-nonreplaced-blocks.html: Added.
        * fast/css-intrinsic-dimensions/fixed-inlinesize-contribution-nonreplaced-blocks-1-expected.html: Added.
        * fast/css-intrinsic-dimensions/fixed-inlinesize-contribution-nonreplaced-blocks-1.html: Added.
        * fast/css-intrinsic-dimensions/fixed-inlinesize-contribution-nonreplaced-blocks-2-expected.html: Added.
        * fast/css-intrinsic-dimensions/fixed-inlinesize-contribution-nonreplaced-blocks-2.html: Added.
        * fast/css-intrinsic-dimensions/indefinite-percent-maxcontent-inlinesize-contribution-nonreplaced-blocks-expected.html: Added.
        * fast/css-intrinsic-dimensions/indefinite-percent-maxcontent-inlinesize-contribution-nonreplaced-blocks.html: Added.
        * fast/css-intrinsic-dimensions/indefinite-percent-mincontent-inlinesize-contribution-nonreplaced-blocks-expected.html: Added.
        * fast/css-intrinsic-dimensions/indefinite-percent-mincontent-inlinesize-contribution-nonreplaced-blocks.html: Added.
        * fast/css-intrinsic-dimensions/maxcontent-maxcontent-inlinesize-contribution-nonreplaced-blocks-expected.html: Added.
        * fast/css-intrinsic-dimensions/maxcontent-maxcontent-inlinesize-contribution-nonreplaced-blocks.html: Added.
        * fast/css-intrinsic-dimensions/maxcontent-mincontent-inlinesize-contribution-nonreplaced-blocks-expected.html: Added.
        * fast/css-intrinsic-dimensions/maxcontent-mincontent-inlinesize-contribution-nonreplaced-blocks.html: Added.
        * fast/css-intrinsic-dimensions/mincontent-maxcontent-inlinesize-contribution-nonreplaced-blocks-expected.html: Added.
        * fast/css-intrinsic-dimensions/mincontent-maxcontent-inlinesize-contribution-nonreplaced-blocks.html: Added.
        * fast/css-intrinsic-dimensions/mincontent-mincontent-inlinesize-contribution-nonreplaced-blocks-expected.html: Added.
        * fast/css-intrinsic-dimensions/mincontent-mincontent-inlinesize-contribution-nonreplaced-blocks.html: Added.
        * fast/css-intrinsic-dimensions/resources/intrinsic-size-contribution.css: Added.
        (.container):
        (.item):
        (.border):
        (.padding):
        (.margin):

2015-12-16  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        Mac EWS bots frequently fail several wpt tests
        https://bugs.webkit.org/show_bug.cgi?id=152257

        Unreviewed.

        * TestExpectations: marking some tests as flaky.

2015-12-16  Commit Queue  <commit-queue@webkit.org>

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

        due to missing OSR exit materialization support in FTL
        (Requested by yusukesuzuki on #webkit).

        Reverted changeset:

        "[ES6] Handle new_generator_func / new_generator_func_exp in
        DFG / FTL"
        https://bugs.webkit.org/show_bug.cgi?id=152227
        http://trac.webkit.org/changeset/194135

2015-12-16  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        Align WebKit testharness.js with WPT testharness.js
        https://bugs.webkit.org/show_bug.cgi?id=152297

        Reviewed by Darin Adler.

        Cosmetic changes (output:true is overriden by WK testharnessreport.js)
        To remove the warning "WPT tests are not using the same testharness.js file as other WebKit Layout tests."

        * media/track/getCueAsHTMLCrash.html: Adding testharnessreport.js and removing call to dumpAsText.
        * media/track/getCueAsHTMLCrash-expected.txt: Rebasing as tests are now outputting results.
        * resources/testharness.js:

2015-12-16  Yusuke Suzuki  <utatane.tea@gmail.com>

        [ES6] Handle new_generator_func / new_generator_func_exp in DFG / FTL
        https://bugs.webkit.org/show_bug.cgi?id=152227

        Reviewed by Saam Barati.

        Make the test taking longer time.

        * js/regress/script-tests/generator-function-create.js:
        (test):

2015-12-16  Tomas Popela  <tpopela@redhat.com>

        [GTK] Correct the wrong expectation introduced in r194106
        https://bugs.webkit.org/show_bug.cgi?id=152325

        Unreviewed GTK gardening

        * platform/gtk/http/tests/plugins/plugin-javascript-access-expected.txt:

2015-12-15  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline fast/viewport/ios tests for ios-simulator, remove failure expectation and re-enable test directory.
        https://bugs.webkit.org/show_bug.cgi?id=152135

        Reviewed by Simon Fraser.

        * platform/ios-simulator-wk2/TestExpectations:
        * platform/ios-simulator/TestExpectations:
        * platform/ios-simulator/fast/viewport/ios/width-is-device-width-overflowing-body-overflow-hidden-expected.txt:
        * platform/ios-simulator/fast/viewport/ios/width-is-device-width-overflowing-body-overflow-hidden-tall-expected.txt:
        * platform/ios-simulator/fast/viewport/ios/width-is-device-width-overflowing-expected.txt:
        * platform/ios-simulator/fast/viewport/ios/width-is-device-width-overflowing-no-shrink-to-fit-expected.txt:

2015-12-15  Jiewen Tan  <jiewen_tan@apple.com>

        Verify that Referer Policy within Content-Disposition:attachment sandbox is always ReferrerPolicyNever
        https://bugs.webkit.org/show_bug.cgi?id=152260
        <rdar://problem/23884579>

        Reviewed by Andy Estes.

        * http/tests/contentdispositionattachmentsandbox/referer-header-stripped-expected.txt: Added.
        * http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-always-expected.txt: Added.
        * http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-always.html: Added.
        * http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-default-expected.txt: Added.
        * http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-default.html: Added.
        * http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-never-expected.txt: Added.
        * http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-never.html: Added.
        * http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-no-referrer-expected.txt: Added.
        * http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-no-referrer-when-downgrade-expected.txt: Added.
        * http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-no-referrer-when-downgrade.html: Added.
        * http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-no-referrer.html: Added.
        * http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-origin-expected.txt: Added.
        * http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-origin.html: Added.
        * http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-unsafe-url-expected.txt: Added.
        * http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-unsafe-url.html: Added.
        * http/tests/contentdispositionattachmentsandbox/referer-header-stripped.html: Added.
        * http/tests/contentdispositionattachmentsandbox/resources/referer-header-stripped-frame.php: Added.
        * http/tests/contentdispositionattachmentsandbox/resources/referer-header-stripped.js: Added.
        * http/tests/contentdispositionattachmentsandbox/resources/subresource-request-not-include-referer-header-frame.php: Removed.
        * http/tests/contentdispositionattachmentsandbox/subresource-request-not-include-referer-header-expected.txt: Removed.
        * http/tests/contentdispositionattachmentsandbox/subresource-request-not-include-referer-header.html: Removed.

2015-12-15  Timothy Horton  <timothy_horton@apple.com>

        Rebaseline some page overlay tests for WK1

        * platform/mac-wk1/pageoverlay/overlay-installation-expected.txt:
        * platform/mac-wk1/pageoverlay/overlay-large-document-expected.txt:
        * platform/mac-wk1/pageoverlay/overlay-large-document-scrolled-expected.txt:
        * platform/mac-wk1/pageoverlay/overlay-small-frame-mouse-events-expected.txt: Added.

2015-12-15  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Localize "global code" and "eval code" strings
        https://bugs.webkit.org/show_bug.cgi?id=152313

        Reviewed by Timothy Hatcher.

        * inspector/debugger/js-stacktrace-expected.txt:
        * inspector/debugger/js-stacktrace.html:
        * inspector/model/stack-trace-expected.txt: Added.
        * inspector/model/stack-trace.html: Added.

2015-12-15  Tim Horton  <timothy_horton@apple.com>

        REGRESSION (r191849): There's no yellow bouncy highlight when using Find on Page on iOS
        https://bugs.webkit.org/show_bug.cgi?id=152241
        <rdar://problem/23642574>

        Reviewed by Simon Fraser.

        * pageoverlay/overlay-small-frame-mouse-events-expected.txt: Added.
        * pageoverlay/overlay-small-frame-mouse-events.html: Added.
        Add a test ensuring that small-frame overlays get mouse events.

        * pageoverlay/overlay-small-frame-paints-expected.txt: Added.
        * pageoverlay/overlay-small-frame-paints.html: Added.
        Add a test ensuring that small-frame overlays get paint callbacks.

2015-12-15  Myles C. Maxfield  <mmaxfield@apple.com>

        [Font Features] TrueType fonts trigger real features even when synthesis is applied
        https://bugs.webkit.org/show_bug.cgi?id=152287

        Reviewed by Darin Adler.

        Adding tests.

        * css3/font-variant-petite-caps-synthesis-expected.html:
        * css3/font-variant-petite-caps-synthesis.html:
        * css3/font-variant-small-caps-synthesis-expected.html:
        * css3/font-variant-small-caps-synthesis.html:
        * css3/font-variant-petite-caps-synthesis-coverage-expected.html:
        * css3/font-variant-petite-caps-synthesis-coverage.html:
        * css3/font-variant-small-caps-synthesis-coverage-expected.html:
        * css3/font-variant-small-caps-synthesis-coverage.html:

2015-12-15  Mark Lam  <mark.lam@apple.com>

        Polymorphic operand types for DFG and FTL bit operators.
        https://bugs.webkit.org/show_bug.cgi?id=152191

        Reviewed by Saam Barati.

        * js/regress/ftl-polymorphic-bitand-expected.txt: Added.
        * js/regress/ftl-polymorphic-bitand.html: Added.
        * js/regress/ftl-polymorphic-bitor-expected.txt: Added.
        * js/regress/ftl-polymorphic-bitor.html: Added.
        * js/regress/ftl-polymorphic-bitxor-expected.txt: Added.
        * js/regress/ftl-polymorphic-bitxor.html: Added.
        * js/regress/ftl-polymorphic-lshift-expected.txt: Added.
        * js/regress/ftl-polymorphic-lshift.html: Added.
        * js/regress/ftl-polymorphic-rshift-expected.txt: Added.
        * js/regress/ftl-polymorphic-rshift.html: Added.
        * js/regress/ftl-polymorphic-urshift-expected.txt: Added.
        * js/regress/ftl-polymorphic-urshift.html: Added.
        * js/regress/script-tests/ftl-polymorphic-bitand.js: Added.
        (o1.valueOf):
        (foo):
        * js/regress/script-tests/ftl-polymorphic-bitor.js: Added.
        (o1.valueOf):
        (foo):
        * js/regress/script-tests/ftl-polymorphic-bitxor.js: Added.
        (o1.valueOf):
        (foo):
        * js/regress/script-tests/ftl-polymorphic-lshift.js: Added.
        (o1.valueOf):
        (foo):
        * js/regress/script-tests/ftl-polymorphic-rshift.js: Added.
        (o1.valueOf):
        (foo):
        * js/regress/script-tests/ftl-polymorphic-urshift.js: Added.
        (o1.valueOf):
        (foo):

2015-12-15  Adam Bergkvist  <adam.bergkvist@ericsson.com>

        WebRTC: Test that RTCPeerConnection promise functions reject on closed state
        https://bugs.webkit.org/show_bug.cgi?id=152295

        Reviewed by Eric Carlson.

        Add test that verifies RTCPeerConnection's behavior in the closed state
        (signalingState). Promise functions should reject, and (some) others
        should throw. Remove old test that tests incorrect behavior.

        * fast/mediastream/RTCPeerConnection-closed-state-expected.txt: Added.
        * fast/mediastream/RTCPeerConnection-closed-state.html: Added.
        * fast/mediastream/RTCPeerConnection-state-expected.txt: Removed.
        * fast/mediastream/RTCPeerConnection-state.html: Removed.

2015-12-15  Tomas Popela  <tpopela@redhat.com>

        [GTK] Gardening: Rebaseline tests
        https://bugs.webkit.org/show_bug.cgi?id=152301

        Unreviewed GTK gardening

        * platform/gtk/fast/dom/Window/window-lookup-precedence-expected.txt:
        Correct the expectations after r189202 when RangeException was
        removed.
        * platform/gtk/fast/dom/adopt-attribute-crash-expected.txt: Added.
        Add a new test expectations after r187148.
        * platform/gtk/http/tests/plugins/plugin-javascript-access-expected.txt: Added.
        Add a new test expectations after r193363.

2015-12-15  Ryan Haddad  <ryanhaddad@apple.com>

        Changing expectation for storage/indexeddb/deleted-objects.html to [ Failure Crash ]
        https://bugs.webkit.org/show_bug.cgi?id=152264

        Unreviewed test gardening.

        * platform/mac-wk1/TestExpectations:

2015-12-15  Javier Fernandez  <jfernandez@igalia.com>

        [css-align][css-grid] Overflow alignment value 'true' renamed to 'unsafe'
        https://bugs.webkit.org/show_bug.cgi?id=152251

        The 'True' Overflow Alignment keyword is known now as 'Unsafe', so adapting
        layout tests using such keyword.

        Reviewed by Darin Adler.

        * css3/overwrite-content-alignment-expected.txt:
        * css3/overwrite-content-alignment.html:
        * css3/overwrite-self-alignment-expected.txt:
        * css3/overwrite-self-alignment.html:
        * css3/parse-align-content-expected.txt:
        * css3/parse-align-content.html:
        * css3/parse-align-items-expected.txt:
        * css3/parse-align-items.html:
        * css3/parse-align-self-expected.txt:
        * css3/parse-align-self.html:
        * css3/parse-justify-content-expected.txt:
        * css3/parse-justify-content.html:
        * fast/css-grid-layout/grid-align-justify-overflow.html:
        * fast/css-grid-layout/grid-content-alignment-overflow.html:
        * fast/css/parse-justify-items-expected.txt:
        * fast/css/parse-justify-items.html:
        * fast/css/parse-justify-self-expected.txt:
        * fast/css/parse-justify-self.html:

2015-12-14  Ryan Haddad  <ryanhaddad@apple.com>

        Re-enabling passing test fast/viewport/ios/width-is-device-width.html, which was accidentally skipped with r194058.
        https://bugs.webkit.org/show_bug.cgi?id=152135

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/TestExpectations:

2015-12-14  Yusuke Suzuki  <utatane.tea@gmail.com>

        Math.random should have an intrinsic thunk and it should be later handled as a DFG Node
        https://bugs.webkit.org/show_bug.cgi?id=152133

        Reviewed by Geoffrey Garen.

        Add new regression test.

        * js/regress/math-random-expected.txt: Added.
        * js/regress/math-random.html: Added.
        * js/regress/script-tests/math-random.js: Added.
        (test):

2015-12-14  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Stack traces in console incorrectly show "(anonymous function)" for global code
        https://bugs.webkit.org/show_bug.cgi?id=152280

        Reviewed by Brian Burg.

        * inspector/debugger/js-stacktrace-expected.txt:
        * inspector/debugger/js-stacktrace.html:

2015-12-14  Ryan Haddad  <ryanhaddad@apple.com>

        Marking storage/indexeddb/deleted-objects.html as a flaky crash on mac-wk1
        https://bugs.webkit.org/show_bug.cgi?id=152264

        Unreviewed test gardening.

        * platform/mac-wk1/TestExpectations:

2015-12-14  Ryan Haddad  <ryanhaddad@apple.com>

        Marking platform/ios-simulator/ios/scrolling tests as failing on ios-simulator
        https://bugs.webkit.org/show_bug.cgi?id=152276

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2015-12-14  Ryan Haddad  <ryanhaddad@apple.com>

        Updating ios-simulator expectation for crashing tests http/tests/misc/large-js-program.php and js/dom/line-column-numbers.html
        https://bugs.webkit.org/show_bug.cgi?id=152279

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2015-12-14  Ryan Haddad  <ryanhaddad@apple.com>

        Removing ios-simulator TestExpectations for deleted tests: streams/reference-implementation/readable-stream-cancel.html (r192186)
        and http/tests/inspector/console/access-inspected-object.html (r192186).
        https://bugs.webkit.org/show_bug.cgi?id=152131

        Unreviewed test gardening.

        * platform/ios-simulator-wk1/TestExpectations:
        * platform/ios-simulator-wk2/TestExpectations:
        * platform/ios-simulator/TestExpectations:

2015-12-14  Ryan Haddad  <ryanhaddad@apple.com>

        Adding a second newline to the expected result for compositing/iframes/page-cache-layer-tree.html
        https://bugs.webkit.org/show_bug.cgi?id=152132

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/compositing/iframes/page-cache-layer-tree-expected.txt:

2015-12-14  Ryan Haddad  <ryanhaddad@apple.com>

        Marking js/regress/generator-with-several-types.html as a flaky timeout on mac-wk1 debug.
        https://bugs.webkit.org/show_bug.cgi?id=152272

        Unreviewed test gardening.

        * platform/mac-wk1/TestExpectations:

2015-12-14  Ryan Haddad  <ryanhaddad@apple.com>

        Take 2 of updating expectations for fast/events/ios tests by removing the directory's [ Pass ] expectation.
        https://bugs.webkit.org/show_bug.cgi?id=152134

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/TestExpectations:

2015-12-14  Ryan Haddad  <ryanhaddad@apple.com>

        Take 2 of updating expectations for fast/viewport/ios tests by removing the directory's [ Pass ] expectation.
        https://bugs.webkit.org/show_bug.cgi?id=152135

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/TestExpectations:

2015-12-14  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline compositing/iframes/page-cache-layer-tree.html for iOS Simulator
        https://bugs.webkit.org/show_bug.cgi?id=152267

        Unreviewed test gardening.

        * platform/ios-simulator-wk2/compositing/iframes/page-cache-layer-tree-expected.txt:

2015-12-14  Ryan Haddad  <ryanhaddad@apple.com>

        Marking fast/viewport/ios/width-is-device-width-overflowing* tests as failing on iOS simulator
        https://bugs.webkit.org/show_bug.cgi?id=152135

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2015-12-14  Chris Fleizach  <cfleizach@apple.com>

        AX: iOS: Text field variations do not have the correct traits
        https://bugs.webkit.org/show_bug.cgi?id=152237

        Reviewed by Mario Sanchez Prada.

        * accessibility/ios-simulator/textentry-traits-expected.txt: Added.
        * accessibility/ios-simulator/textentry-traits.html: Added.

2015-12-14  Ryan Haddad  <ryanhaddad@apple.com>

        Marking fast/viewport/ios/width-is-device-width-overflowing* tests as failing on iOS simulator
        https://bugs.webkit.org/show_bug.cgi?id=152135

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2015-12-14  Ryan Haddad  <ryanhaddad@apple.com>

        Marking fast/picture/image-picture-* as failing on iOS simulator
        https://bugs.webkit.org/show_bug.cgi?id=152141

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2015-12-14  Ryan Haddad  <ryanhaddad@apple.com>

        Removing failure expectation for css3/blending tests that are now passing on iOS simulator
        https://bugs.webkit.org/show_bug.cgi?id=152131

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2015-12-14  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaselining fast/text/emoji.html for iOS simulator
        https://bugs.webkit.org/show_bug.cgi?id=152261

        Unreviewed test gardening.

        * platform/ios-simulator/fast/text/emoji-expected.txt:

2015-12-14  Daniel Bates  <dabates@apple.com>

        [iOS] DOM click event may not be dispatched when page has :active style and <input type="search">
        https://bugs.webkit.org/show_bug.cgi?id=144451
        <rdar://problem/23099482>

        Reviewed by Simon Fraser.

        Add a test to ensure that a DOM click event is dispatched to an element in a subframe on a page
        with a search field and that specifies a CSS :active pseudo-class that changes the tap highlight
        color.

        Additionally, add tests to ensure we update the cancel button visibility whenever the visibility
        of the search field changes.

        * fast/events/can-click-element-on-page-with-active-pseudo-class-and-search-field-expected.txt: Added.
        * fast/events/can-click-element-on-page-with-active-pseudo-class-and-search-field.html: Added.
        * fast/forms/search/search-cancel-button-visible-when-input-becomes-disabled-expected.html: Added.
        * fast/forms/search/search-cancel-button-visible-when-input-becomes-disabled.html: Added.
        * fast/forms/search/search-cancel-button-visible-when-input-becomes-readonly-expected.html: Added.
        * fast/forms/search/search-cancel-button-visible-when-input-becomes-readonly.html: Added.
        * fast/forms/search/search-cancel-in-formerly-invisible-element-expected.html: Added.
        * fast/forms/search/search-cancel-in-formerly-invisible-element.html: Added.
        * fast/forms/search/search-cancel-toggle-visibility-initially-hidden-expected.html: Added.
        * fast/forms/search/search-cancel-toggle-visibility-initially-hidden.html: Added.
        * fast/forms/search/search-cancel-toggle-visibility-initially-visible-expected.html: Added.
        * fast/forms/search/search-cancel-toggle-visibility-initially-visible.html: Added.

2015-12-14  Chris Dumez  <cdumez@apple.com>

        Roll out r193974 and follow-up fixes as it caused JSC crashes
        https://bugs.webkit.org/show_bug.cgi?id=152256

        Unreviewed, roll out r193974 and follow-up fixes as it caused JSC crashes.

        * inspector/model/remote-object-get-properties-expected.txt:
        * js/Object-getOwnPropertyNames-expected.txt:
        * js/exception-for-nonobject-expected.txt:
        * js/exception-instanceof-expected.txt:
        * js/instance-of-immediates-expected.txt:
        * js/regress/instanceof-bound-expected.txt: Removed.
        * js/regress/instanceof-bound.html: Removed.
        * js/regress/script-tests/instanceof-bound.js: Removed.
        * js/script-tests/Object-getOwnPropertyNames.js:

2015-12-14  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        [Streams API] Expose ReadableStream and relatives to Worker
        https://bugs.webkit.org/show_bug.cgi?id=152066

        Reviewed by Darin Adler.

        Adding ByteLengthQueuingStrategy, CountQueuingStrategy and ReadableStream as worker constructors.

        * js/dom/global-constructors-attributes-dedicated-worker-expected.txt:
        * platform/efl/js/dom/global-constructors-attributes-dedicated-worker-expected.txt:

2015-12-14  Carlos Alberto Lopez Perez  <clopez@igalia.com>

        [GTK] Unreviewed gardening.

        * platform/gtk/TestExpectations: Update TestExpectations with the following changes:
          - Remove expectations for tests removed after r193411 r193426 and r19366.
          - Merge repeated expectations from some tests.
          - Mark tests failing after r188159.
          - Update list of imported/blink tests failing.

2015-12-14  Sergio Villar Senin  <svillar@igalia.com>

        [css-grid] Fix height computation of grid items with borders
        https://bugs.webkit.org/show_bug.cgi?id=151800

        Reviewed by Darin Adler.

        * fast/css-grid-layout/grid-item-with-border-in-intrinsic-expected.txt: Added.
        * fast/css-grid-layout/grid-item-with-border-in-intrinsic.html: Added.

2015-12-13  Zalan Bujtas  <zalan@apple.com>

        Clean up absolute positioned map properly.
        https://bugs.webkit.org/show_bug.cgi?id=152219
        rdar://problem/23861165

        Reviewed by Simon Fraser.

        We insert positioned renderers into a static map (RenderBlock::gPositionedDescendantsMap) to keep track of them.
        Since this static map is at block level, (positioned)inline renderers use their containing block to store
        their positioned descendants.
        This patch ensures that when an inline element can no longer hold positioned children, we remove them from
        the inline's containing block's map. -unless the container itself can hold positioned renderers(see RenderElement::canContainAbsolutelyPositionedObjects).

        * fast/block/positioning/crash-when-positioned-inline-has-positioned-child-expected.txt: Added.
        * fast/block/positioning/crash-when-positioned-inline-has-positioned-child.html: Added.

2015-12-13  Joanmarie Diggs  <jdiggs@igalia.com>

        AX: [EFL] Anonymous render block flow elements should be exposed as ATK_ROLE_SECTION; not ATK_ROLE_PANEL
        https://bugs.webkit.org/show_bug.cgi?id=152079

        Reviewed by Chris Fleizach.

        * platform/efl/accessibility/deleting-iframe-destroys-axcache-expected.txt: Added.
        * platform/efl/accessibility/image-link-expected.txt: Updated.
        * platform/efl/accessibility/image-with-alt-and-map-expected.txt: Updated.
        * platform/efl/accessibility/lists-expected.txt: Updated.
        * platform/efl/accessibility/media-element-expected.txt: Updated

2015-12-13  Brady Eidson  <beidson@apple.com>

        Modern IDB: TextExpectations gardening to run more tests.
        https://bugs.webkit.org/show_bug.cgi?id=152217

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations: 5 crash/timeout tests now either pass or merely have text failures.

2015-12-12  Brady Eidson  <beidson@apple.com>

        Modern IDB: Update a couple of tests that fail only because of error message differences.
        https://bugs.webkit.org/show_bug.cgi?id=152205

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/objectstore-autoincrement-expected.txt:
        * storage/indexeddb/open-cursor-expected.txt:

2015-12-12  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/index-duplicate-keypaths.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=152201

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2015-12-11  Simon Fraser  <simon.fraser@apple.com>

        Mousewheel events don't work in iframes in RTL documents
        https://bugs.webkit.org/show_bug.cgi?id=152200

        Reviewed by Beth Dakin.
        
        Try dispatching wheel events to an iframe in an RTL document.

        * fast/scrolling/rtl-point-in-iframe-expected.txt: Added.
        * fast/scrolling/rtl-point-in-iframe.html: Added.

2015-12-11  Zalan Bujtas  <zalan@apple.com>

        ASSERTION FAILED: !rect.isEmpty() in WebCore::GraphicsContext::drawRect
        https://bugs.webkit.org/show_bug.cgi?id=151201

        Reviewed by Simon Fraser.

        Drawing empty rect is a waste.

        * fast/borders/empty-drawrect-assert-after-pixelsnap-expected.txt: Added.
        * fast/borders/empty-drawrect-assert-after-pixelsnap.html: Added.

2015-12-11  Jiewen Tan  <jiewen_tan@apple.com>

        Strip out Referer header when requesting subresources or following links for documents with "Content-Disposition: attachment"
        https://bugs.webkit.org/show_bug.cgi?id=152102
        <rdar://problem/22124230>

        Reviewed by Andy Estes.

        * http/tests/contentdispositionattachmentsandbox/resources/echo-http-referer.php: Added.
        * http/tests/contentdispositionattachmentsandbox/resources/subresource-request-not-include-referer-header-frame.php: Added.
        * http/tests/contentdispositionattachmentsandbox/subresource-request-not-include-referer-header-expected.txt: Added.
        * http/tests/contentdispositionattachmentsandbox/subresource-request-not-include-referer-header.html: Added.

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

        [MediaStream] Add a setting to allow the mock media capture devices to be enabled and disabled
        https://bugs.webkit.org/show_bug.cgi?id=152197

        Reviewed by Dean Jackson.

        * fast/mediastream/mock-media-source-expected.txt: Added.
        * fast/mediastream/mock-media-source.html: Added.

2015-12-11  Beth Dakin  <bdakin@apple.com>

        _touchEventRegions should return regions in the view's coordinates
        https://bugs.webkit.org/show_bug.cgi?id=152189
        -and corresponding-
        rdar://problem/23188605

        Reviewed by Dan Bernstein.

        * fast/events/touch/ios/touch-event-rtl-expected.txt: Added.
        * fast/events/touch/ios/touch-event-rtl.html: Added.

2015-12-11  Alexey Proskuryakov  <ap@apple.com>

        Roll out http://trac.webkit.org/r193984, because the new test is timing out.

        Was: Strip out Referer header when requesting subresources or following links for documents with "Content-Disposition: attachment"
        https://bugs.webkit.org/show_bug.cgi?id=152102
        <rdar://problem/22124230>

        * http/tests/contentdispositionattachmentsandbox/resources/echo-http-referer.php: Removed.
        * http/tests/contentdispositionattachmentsandbox/resources/subresource-request-not-include-referer-header-frame.php: Removed.
        * http/tests/contentdispositionattachmentsandbox/subresource-request-not-include-referer-header-expected.txt: Removed.
        * http/tests/contentdispositionattachmentsandbox/subresource-request-not-include-referer-header.html: Removed.

2015-12-11  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/optional-arguments.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=152194

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/invalid-keys-expected.txt: Updated for new error message.
        * storage/indexeddb/optional-arguments-expected.txt: Remove results that expect IDBObjectStore.openKeyCursor() to be
          a thing. That method no longer exists in the spec and was already removed from the test.

2015-12-11  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/cursor-continue.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=152192

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/cursor-continue-expected.txt:

2015-12-11  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/index-basics.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=152190

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2015-12-11  Keith Miller  <keith_miller@apple.com>

        Rebaseline a failing inspector test for a new property on Function.prototype.

        * inspector/model/remote-object-get-properties-expected.txt:

2015-12-11  Jiewen Tan  <jiewen_tan@apple.com>

        Strip out Referer header when requesting subresources or following links for documents with "Content-Disposition: attachment"
        https://bugs.webkit.org/show_bug.cgi?id=152102
        <rdar://problem/22124230>

        Reviewed by Andy Estes.

        * http/tests/contentdispositionattachmentsandbox/resources/echo-http-referer.php: Added.
        * http/tests/contentdispositionattachmentsandbox/resources/subresource-request-not-include-referer-header-frame.php: Added.
        * http/tests/contentdispositionattachmentsandbox/subresource-request-not-include-referer-header-expected.txt: Added.
        * http/tests/contentdispositionattachmentsandbox/subresource-request-not-include-referer-header.html: Added.

2015-12-11  Ryan Haddad  <ryanhaddad@apple.com>

        Marking fast/events/ios tests as flaky on ios-simulator due to timeouts
        https://bugs.webkit.org/show_bug.cgi?id=152134

        Unreviewed test gardening.

        * platform/ios-simulator/TestExpectations:

2015-12-11  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/key-type-array.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=152187

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/key-type-array-expected.txt:

2015-12-11  Brady Eidson  <beidson@apple.com>

        Modern IDB: Updates to 3 intversion tests, and/or their results.
        https://bugs.webkit.org/show_bug.cgi?id=152179

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:
        * platform/wk2/storage/indexeddb/intversion-close-in-oncomplete-expected.txt:

        * storage/indexeddb/intversion-close-in-oncomplete-expected.txt:
        * storage/indexeddb/intversion-close-in-upgradeneeded-expected.txt:
        * storage/indexeddb/intversion-upgrades-expected.txt:
        * storage/indexeddb/resources/intversion-close-in-oncomplete.js:

2015-12-11  Keith Miller  <keith_miller@apple.com>

        [ES6] Add support for Symbol.hasInstance
        https://bugs.webkit.org/show_bug.cgi?id=151839

        Reviewed by Saam Barati.

        Fix tests to reflect the changes to instanceof in ES6.

        Added a new regression test for bound functions in instanceof
        as the perfomance on bound functions should, to some degree,
        reflect the performance on C-API users.

        * js/Object-getOwnPropertyNames-expected.txt:
        * js/exception-for-nonobject-expected.txt:
        * js/exception-instanceof-expected.txt:
        * js/instance-of-immediates-expected.txt:
        * js/regress/instanceof-bound-expected.txt: Added.
        * js/regress/instanceof-bound.html: Added.
        * js/regress/script-tests/instanceof-bound.js: Added.
        (Constructor):
        (test):
        * js/script-tests/Object-getOwnPropertyNames.js:

2015-12-11  Ryan Haddad  <ryanhaddad@apple.com>

        Updating mac-wk1 TestExpectations for fast/replaced/replaced-breaking.html to Yosemite+ to fix EWS bot results.
        https://bugs.webkit.org/show_bug.cgi?id=152178

        Unreviewed test gardening.

        * platform/mac-wk1/TestExpectations:

2015-12-11  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/intversion-abort-in-initial-upgradeneeded.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=152177

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:
        * platform/wk2/storage/indexeddb/intversion-abort-in-initial-upgradeneeded-expected.txt: Copied from LayoutTests/storage/indexeddb/intversion-abort-in-initial-upgradeneeded-expected.txt.
        * storage/indexeddb/intversion-abort-in-initial-upgradeneeded-expected.txt:
        * storage/indexeddb/resources/intversion-abort-in-initial-upgradeneeded.js:

2015-12-11  Jiewen Tan  <jiewen_tan@apple.com>

        Do not fire load events from frames with scripting disabled
        https://bugs.webkit.org/show_bug.cgi?id=118042
        <rdar://problem/14272857>

        Reviewed by Brent Fulgham.

        Since the crash is not reproducible, only test case from Blink r153029 is merged:
        https://codereview.chromium.org/17682003

        * fast/images/image-load-event-crash-expected.txt: Added.
        * fast/images/image-load-event-crash.html: Added.

2015-12-11  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/index-count.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=152175

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/index-count-expected.txt:
        * storage/indexeddb/modern/index-get-count-failures-expected.txt:

2015-12-11  Daniel Bates  <dabates@apple.com>

        [iOS][WK2] Update expected results for tests imported/w3c/web-platform-tests

        * platform/ios-simulator-wk2/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt: Added.
        * platform/ios-simulator-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valueMissing-expected.txt: Added.
        * platform/ios-simulator-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-willValidate-expected.txt: Renamed from LayoutTests/platform/ios-simulator/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-willValidate-expected.txt.
        * platform/ios-simulator-wk2/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/type-change-state-expected.txt: Added.
        * platform/ios-simulator-wk2/imported/w3c/web-platform-tests/html/semantics/interfaces-expected.txt: Added.

2015-12-11  Darin Adler  <darin@apple.com>

        Reduce the number of events that can be created by Document.createEvent
        https://bugs.webkit.org/show_bug.cgi?id=151931

        Reviewed by Alex Christensen.

        * TestExpectations: Added expected failures for the two tests that depend
        on createEvent("IDBVersionChangeEvent").

        * animations/animation-events-create.html: Updated to use
        "new WebKitAnimationEvent" instead of document.createEvent.

        * fast/events/event-creation-expected.txt: Removed expected results for
        various events that can no longer be created with createEvent.
        * fast/events/event-creation.html: Removed tests for various events
        that can no longer be created with createEvent.

        * imported/blink/plugins/plugin-synthetic-event-crash.html: Updated to use
        "new PopStateEvent" instead of document.createEvent.

        * indieui/create-uirequestevent-expected.txt: Removed.
        * indieui/create-uirequestevent.html: Removed.

        * platform/mac-wk2/TestExpecations: Removed expectations for some deleted tests.

        * platform/wk2/storage/indexeddb/removed-expected.txt: Removed, since this is
        no different from the platform-independent expected result.

        * transitions/transition-end-event-create.html: Updated to use
        "new WebKitTransitionEvent" instead of document.createEvent.

2015-12-11  Nikita Vasilyev  <nvasilyev@apple.com>

        Web Inspector: When logging strings, detect stack traces and show them as StackTraceView
        https://bugs.webkit.org/show_bug.cgi?id=149790

        Reviewed by Timothy Hatcher.

        * inspector/console/js-isLikelyStackTrace.html: Added.

2015-12-10  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/objectstore-count.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=152167

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/objectstore-count-expected.txt:

2015-12-10  Zalan Bujtas  <zalan@apple.com>

        ASSERTION FAILED: !simpleLineLayout() in WebCore::RenderText::collectSelectionRectsForLineBoxes
        https://bugs.webkit.org/show_bug.cgi?id=152115

        Reviewed by Simon Fraser.

        document.execCommand("indent") generates a blockquote wrapper and moves the indented content inside.
        If the indented content is already inside a selection, we need to make sure that newly created flow uses
        normal line layout.
        This patch fixes the generic case as re-parenting an already selected renderer is not specific to document.execCommand("indent").

        * fast/block/selection-inside-simple-line-layout-expected.txt: Added.
        * fast/block/selection-inside-simple-line-layout.html: Added.

2015-12-10  Brady Eidson  <beidson@apple.com>

        Unreviewed TestExpectations gardening.

        * platform/mac-wk1/TestExpectations: Move 3 failing IDB tests to the "Skipped because of Workers" section.

2015-12-10  Eric Carlson  <eric.carlson@apple.com>

        [MediaStream] Expose media capture devices persistent permissions to WebCore
        https://bugs.webkit.org/show_bug.cgi?id=152087

        Reviewed by Chris Dumez.

        * fast/mediastream/MediaDevices-enumerateDevices-expected.txt:
        * fast/mediastream/MediaDevices-enumerateDevices.html:

2015-12-10  Daniel Bates  <dabates@apple.com>

        [CSP] eval() is not blocked for stringified literals
        https://bugs.webkit.org/show_bug.cgi?id=152158
        <rdar://problem/15775625>

        Reviewed by Saam Barati.

        Update test LayoutTests/http/tests/security/contentSecurityPolicy/eval-blocked.html to be
        more comprehensive.

        Add tests to ensure that we block eval() from within an external JavaScript script when the
        policy of the page disallows eval() and that we block eval() inside a subframe that disallows
        eval() when the page in the main frame allows eval().

        * http/tests/security/contentSecurityPolicy/eval-blocked-expected.txt:
        * http/tests/security/contentSecurityPolicy/eval-blocked-in-external-script-expected.txt: Added.
        * http/tests/security/contentSecurityPolicy/eval-blocked-in-external-script.html: Added.
        * http/tests/security/contentSecurityPolicy/eval-blocked-in-subframe-expected.txt: Copied from LayoutTests/http/tests/security/contentSecurityPolicy/eval-blocked-expected.txt.
        * http/tests/security/contentSecurityPolicy/eval-blocked-in-subframe.html: Added.
        * http/tests/security/contentSecurityPolicy/eval-blocked.html:
        * http/tests/security/contentSecurityPolicy/resources/eval-blocked-in-external-script.js: Added.

2015-12-10  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/delete-in-upgradeneeded-close-in-versionchange.html fails
        https://bugs.webkit.org/show_bug.cgi?id=152144

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/modern/abort-requests-cancelled-expected.txt:
        * storage/indexeddb/modern/aborted-put-expected.txt:
        * storage/indexeddb/modern/createobjectstore-basic-expected.txt:
        * storage/indexeddb/modern/deletedatabase-2-expected.txt:
        * storage/indexeddb/modern/deletedatabase-2.html:
        * storage/indexeddb/modern/deleteindex-2-expected.txt:
        * storage/indexeddb/modern/deleteobjectstore-1-expected.txt:
        * storage/indexeddb/modern/opendatabase-versions-expected.txt:
        * storage/indexeddb/modern/opendatabase-versions.html:
        * storage/indexeddb/modern/versionchange-abort-then-reopen-expected.txt:

2015-12-10  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaselining fast/text/emoji.html for Yosemite.
        https://bugs.webkit.org/show_bug.cgi?id=152147

        Unreviewed test gardening.

        * platform/mac-yosemite/fast/text/emoji-expected.txt: Added.

2015-12-10  Myles C. Maxfield  <mmaxfield@apple.com>

        Build fix

        Unreviewed.

        * platform/mac/TestExpectations:

2015-12-10  Ryan Haddad  <ryanhaddad@apple.com>

        Adding iOS-simulator expectations for compositing/layers-inside-overflow-scroll.html
        https://bugs.webkit.org/show_bug.cgi?id=152132

        Unreviewed test gardening.

        * platform/ios-simulator/compositing/layers-inside-overflow-scroll-expected.txt: Added.

2015-12-10  Alex Christensen  <achristensen@webkit.org>

        REGRESSION (r192796) WKBundlePageResourceLoadClient should be able to setHTTPBody in willSendRequestForFrame
        https://bugs.webkit.org/show_bug.cgi?id=152022
        rdar://problem/23763584

        Reviewed by Darin Adler.

        * TestExpectations:
        * http/tests/misc/resources/post-echo.cgi: Copied from LayoutTests/http/tests/xmlhttprequest/resources/post-echo.cgi.
        * http/tests/misc/will-send-request-with-client-provided-http-body-expected.txt: Added.
        * http/tests/misc/will-send-request-with-client-provided-http-body.html: Added.
        * platform/wk2/TestExpectations:
        New test for WK2 only.

2015-12-10  Enrica Casucci  <enrica@apple.com>

        Change skin tone support for two emoji.
        https://bugs.webkit.org/show_bug.cgi?id=152147
        rdar://problem/23716993
        rdar://problem/23716344

        Reviewed by Darin Adler.

        * fast/text/emoji.html:
        * platform/mac/fast/text/emoji-expected.txt:

2015-12-10  Ryan Haddad  <ryanhaddad@apple.com>

        Skip unsupported css3/font-variant-* tests on Win
        https://bugs.webkit.org/show_bug.cgi?id=149774

        Unreviewed test gardening.

        * platform/win/TestExpectations:

2015-12-10  Daniel Bates  <dabates@apple.com>

        [iOS][WK2] Update expected results for editing tests

        * platform/ios-simulator-wk2/editing/deleting/delete-3608462-fix-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/4278698-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/before-after-input-element-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/editable-html-element-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/editing-empty-divs-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-3778059-fix-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-3851164-fix-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-at-end-01-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-br-009-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-br-at-tabspan-001-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-br-at-tabspan-002-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-br-at-tabspan-003-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-br-quoted-001-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-br-quoted-002-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-br-quoted-003-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-br-quoted-004-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-br-quoted-005-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-br-quoted-006-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-div-009-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-div-010-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-div-011-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-div-012-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-div-013-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-div-014-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-div-015-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-div-016-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-div-017-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-div-018-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-div-019-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-div-020-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-div-022-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-div-023-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-div-024-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-div-025-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-div-026-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-div-027-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-paragraph-01-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-paragraph-02-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-paragraph-03-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-paragraph-04-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-paragraph-05-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-tab-003-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-text-at-tabspan-001-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-text-at-tabspan-002-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-text-at-tabspan-003-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/insert-text-with-newlines-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/line-break-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/multiple-lines-selected-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/paragraph-separator-01-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/paragraph-separator-02-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/paragraph-separator-03-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/paragraph-separator-in-table-1-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/paragraph-separator-in-table-2-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/redo-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/return-key-with-selection-001-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/return-key-with-selection-002-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/return-key-with-selection-003-expected.txt:
        * platform/ios-simulator-wk2/editing/inserting/typing-002-expected.txt:
        * platform/ios-simulator-wk2/editing/style/apple-style-editable-mix-expected.txt:
        * platform/ios-simulator-wk2/editing/style/block-style-001-expected.txt:
        * platform/ios-simulator-wk2/editing/style/block-style-002-expected.txt:
        * platform/ios-simulator-wk2/editing/style/block-style-003-expected.txt:
        * platform/ios-simulator-wk2/editing/style/block-styles-007-expected.txt:
        * platform/ios-simulator-wk2/editing/style/create-block-for-style-001-expected.txt:
        * platform/ios-simulator-wk2/editing/style/create-block-for-style-002-expected.txt:
        * platform/ios-simulator-wk2/editing/style/create-block-for-style-003-expected.txt:
        * platform/ios-simulator-wk2/editing/style/create-block-for-style-004-expected.txt:
        * platform/ios-simulator-wk2/editing/style/create-block-for-style-005-expected.txt:
        * platform/ios-simulator-wk2/editing/style/create-block-for-style-006-expected.txt:
        * platform/ios-simulator-wk2/editing/style/create-block-for-style-007-expected.txt:
        * platform/ios-simulator-wk2/editing/style/create-block-for-style-008-expected.txt:
        * platform/ios-simulator-wk2/editing/style/create-block-for-style-009-expected.txt:
        * platform/ios-simulator-wk2/editing/style/create-block-for-style-010-expected.txt:
        * platform/ios-simulator-wk2/editing/style/create-block-for-style-011-expected.txt:
        * platform/ios-simulator-wk2/editing/style/create-block-for-style-012-expected.txt:
        * platform/ios-simulator-wk2/editing/style/create-block-for-style-013-expected.txt:
        * platform/ios-simulator-wk2/editing/style/designmode-expected.txt:
        * platform/ios-simulator-wk2/editing/style/relative-font-size-change-001-expected.txt:
        * platform/ios-simulator-wk2/editing/style/relative-font-size-change-002-expected.txt:
        * platform/ios-simulator-wk2/editing/style/relative-font-size-change-003-expected.txt:
        * platform/ios-simulator-wk2/editing/style/relative-font-size-change-004-expected.txt:
        * platform/ios-simulator-wk2/editing/style/style-3681552-fix-002-expected.txt:
        * platform/ios-simulator-wk2/editing/style/style-3998892-fix-expected.txt:
        * platform/ios-simulator-wk2/editing/style/style-boundary-001-expected.txt:
        * platform/ios-simulator-wk2/editing/style/style-boundary-004-expected.txt:
        * platform/ios-simulator-wk2/editing/style/table-selection-expected.txt:
        * platform/ios-simulator-wk2/editing/style/unbold-in-bold-expected.txt:

2015-12-10  Yusuke Suzuki  <utatane.tea@gmail.com>

        [ES6] Add several generator related JSRegress tests to measure performance change after optimization
        https://bugs.webkit.org/show_bug.cgi?id=151785

        Reviewed by Saam Barati.

        Before starting optimization for ES6 Generators, add several JSRegress tests to measure that.

        * js/regress/generator-create-expected.txt: Added.
        * js/regress/generator-create.html: Added.
        * js/regress/generator-fib-expected.txt: Added.
        * js/regress/generator-fib.html: Added.
        * js/regress/generator-function-create-expected.txt: Added.
        * js/regress/generator-function-create.html: Added.
        * js/regress/generator-sunspider-access-nsieve-expected.txt: Added.
        * js/regress/generator-sunspider-access-nsieve.html: Added.
        * js/regress/generator-with-several-types-expected.txt: Added.
        * js/regress/generator-with-several-types.html: Added.
        * js/regress/script-tests/generator-create.js: Added.
        (gen):
        * js/regress/script-tests/generator-fib.js: Added.
        (result):
        * js/regress/script-tests/generator-function-create.js: Added.
        (createGeneratorFunction.gen):
        (createGeneratorFunction):
        * js/regress/script-tests/generator-sunspider-access-nsieve.js: Added.
        (prime):
        (sieve):
        * js/regress/script-tests/generator-with-several-types.js: Added.
        (g1):
        (g2):
        (g3):

2015-12-10  Carlos Garcia Campos  <cgarcia@igalia.com>

        Unreviewed. Fix ambiguous expectations added in r193895.

        * platform/gtk/TestExpectations:

2015-12-10  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        JSC Builtins should use safe array methods
        https://bugs.webkit.org/show_bug.cgi?id=151501

        Reviewed by Darin Adler.

        Adding shielding test for TypedArray.prototype.filter and stream enqueuing of values and read promises.

        * js/builtins/resources/shielding-typedarray.js: Added.
        (Array.prototype.push):
        (try.array.Int8Array.from.string_appeared_here.filter):
        * js/builtins/shielding-typedarray-expected.txt: Added.
        * js/builtins/shielding-typedarray.html: Added.
        * streams/streams-promises-expected.txt:
        * streams/streams-promises.html:

2015-12-10  Carlos Garcia Campos  <cgarcia@igalia.com>

        Unreviewed. GTK+ gardening: skip HLS tests crashing in debug after r192102.

        * platform/gtk/TestExpectations:

2015-12-10  Myles C. Maxfield  <mmaxfield@apple.com>

        font-variant-caps does not work if the font does not support font features
        https://bugs.webkit.org/show_bug.cgi?id=149774

        Reviewed by Antti Koivisto.

        Adding two new font which include lowercase characters which respond to 'smcp' and 'c2sc'. 

        The character mappings are:

        OpenType:
        'smcp': f
        'c2sc': g

        TrueType:
        kLowerCaseType / kLowerCaseSmallCapsSelector: r
        kUpperCaseType / kUpperCaseSmallCapsSelector: u

        * css3/font-variant-all-expected.html:
        * css3/font-variant-all.html:
        * css3/font-variant-small-caps-synthesis-expected.html: Added.
        * css3/font-variant-small-caps-synthesis.html: Added.
        * css3/font-variant-petite-caps-synthesis-expected.html: Added.
        * css3/font-variant-petite-caps-synthesis.html: Added.
        * css3/resources/FontWithFeaturesLowercaseSmallCaps.otf: Added.
        * css3/resources/FontWithFeaturesLowercaseSmallCaps.ttf: Added.
        * platform/mac/TestExpectations:
        * platform/mac/fast/writing-mode/broken-ideograph-small-caps-expected.txt:

2015-12-09  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/objectstore-basics.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=152101

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:
        * platform/wk2/storage/indexeddb/mozilla/bad-keypath-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/bad-keypath-expected.txt.
        * platform/wk2/storage/indexeddb/mozilla/key-requirements-inline-and-passed-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/key-requirements-inline-and-passed-expected.txt.
        * platform/wk2/storage/indexeddb/mozilla/key-requirements-put-no-key-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/key-requirements-put-no-key-expected.txt.
        * platform/wk2/storage/indexeddb/mozilla/key-requirements-put-null-key-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/key-requirements-put-null-key-expected.txt.
        * storage/indexeddb/invalid-keys-expected.txt:
        * storage/indexeddb/key-type-binary-expected.txt:
        * storage/indexeddb/keypath-edges-expected.txt:
        * storage/indexeddb/mozilla/bad-keypath-expected.txt:
        * storage/indexeddb/mozilla/key-requirements-inline-and-passed-expected.txt:
        * storage/indexeddb/mozilla/key-requirements-put-no-key-expected.txt:
        * storage/indexeddb/mozilla/key-requirements-put-null-key-expected.txt:
        * storage/indexeddb/objectstore-basics-expected.txt:

2015-12-09  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/metadata.html fails
        https://bugs.webkit.org/show_bug.cgi?id=152099

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/modern/abort-objectstore-info-expected.txt: Added.
        * storage/indexeddb/modern/abort-objectstore-info.html: Added.
        * storage/indexeddb/modern/resources/abort-objectstore-info.js: Added.

2015-12-09  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/intversion-close-between-events.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=152096

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2015-12-09  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/database-closepending-flag.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=152095

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2015-12-09  Brady Eidson  <beidson@apple.com>

        Modern IDB: Some tests expect UInt8Array to be a valid key.
        https://bugs.webkit.org/show_bug.cgi?id=152092

        Reviewed by Alex Christensen.

        Everything that expected UInt8Array to be a valid key needs to be updated to expect it to be invalid.

        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/factory-cmp-expected.txt:
        * storage/indexeddb/key-type-binary-expected.txt:
        * storage/indexeddb/resources/factory-cmp.js:
        * storage/indexeddb/resources/key-type-binary.js:

2015-12-09  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/createIndex-after-failure.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=152078

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/createIndex-after-failure-expected.txt:
        * storage/indexeddb/resources/createIndex-after-failure.js:

2015-12-09  Ryan Haddad  <ryanhaddad@apple.com>

        Baseline fast/dom/HTMLProgressElement/native-progress-bar.html for iOS
        https://bugs.webkit.org/show_bug.cgi?id=152094

        Unreviewed test gardening.

        * platform/ios-simulator/fast/dom/HTMLProgressElement/native-progress-bar-expected.txt: Added.

2015-12-09  Ryan Haddad  <ryanhaddad@apple.com>

        Baseline fast/text/text-combine-shrink-on-color-change.html for iOS
        https://bugs.webkit.org/show_bug.cgi?id=151218

        Unreviewed test gardening.

        * platform/ios-simulator/fast/text/text-combine-shrink-on-color-change-expected.txt: Added.

2015-12-09  David Hyatt  <hyatt@apple.com>

        Picture element needs to respond to dynamic viewport changes.
        https://bugs.webkit.org/show_bug.cgi?id=152013
        <rdar://problem/23766375>

        Reviewed by Dean Jackson.

        * fast/picture/resources/resize-test.js: Added.
        * fast/picture/viewport-resize-expected.txt: Added.
        * fast/picture/viewport-resize.html: Added.

2015-12-09  Mark Lam  <mark.lam@apple.com>

        Rename ftl-object-* tests to ftl-polymorphic-*.
        https://bugs.webkit.org/show_bug.cgi?id=152091

        Reviewed by Saam Barati.

        This is because those tests are actually testing the effects of polymorphic
        operands on performance, and not the correctness of operations on objects.

        * js/regress/ftl-object-div-expected.txt: Removed.
        * js/regress/ftl-object-div.html: Removed.
        * js/regress/ftl-object-mul-expected.txt: Removed.
        * js/regress/ftl-object-mul.html: Removed.
        * js/regress/ftl-object-sub-expected.txt: Removed.
        * js/regress/ftl-object-sub.html: Removed.
        * js/regress/ftl-polymorphic-div-expected.txt: Copied from LayoutTests/js/regress/ftl-object-div-expected.txt.
        * js/regress/ftl-polymorphic-div.html: Copied from LayoutTests/js/regress/ftl-object-div.html.
        * js/regress/ftl-polymorphic-mul-expected.txt: Copied from LayoutTests/js/regress/ftl-object-mul-expected.txt.
        * js/regress/ftl-polymorphic-mul.html: Copied from LayoutTests/js/regress/ftl-object-mul.html.
        * js/regress/ftl-polymorphic-sub-expected.txt: Copied from LayoutTests/js/regress/ftl-object-sub-expected.txt.
        * js/regress/ftl-polymorphic-sub.html: Copied from LayoutTests/js/regress/ftl-object-sub.html.
        * js/regress/script-tests/ftl-object-div.js: Removed.
        * js/regress/script-tests/ftl-object-mul.js: Removed.
        * js/regress/script-tests/ftl-object-sub.js: Removed.
        * js/regress/script-tests/ftl-polymorphic-div.js: Copied from LayoutTests/js/regress/script-tests/ftl-object-div.js.
        * js/regress/script-tests/ftl-polymorphic-mul.js: Copied from LayoutTests/js/regress/script-tests/ftl-object-mul.js.
        * js/regress/script-tests/ftl-polymorphic-sub.js: Copied from LayoutTests/js/regress/script-tests/ftl-object-sub.js.

2015-12-09  Carlos Alberto Lopez Perez  <clopez@igalia.com>

        [GTK] Unreviewed GTK Gardening.

        Rebaseline media tests after r190054 and r190200.

        * platform/gtk/media/audio-controls-rendering-expected.txt:
        * platform/gtk/media/controls-strict-expected.txt:
        * platform/gtk/media/media-controls-clone-expected.txt:
        * platform/gtk/media/video-controls-rendering-expected.txt:
        * platform/gtk/media/video-display-toggle-expected.txt:
        * platform/gtk/media/video-empty-source-expected.txt:
        * platform/gtk/media/video-no-audio-expected.txt:
        * platform/gtk/media/video-volume-slider-expected.txt:
        * platform/gtk/media/video-zoom-controls-expected.txt:

2015-12-09  Joanmarie Diggs  <jdiggs@igalia.com>

        AX: [GTK] Anonymous render block flow elements should be exposed as ATK_ROLE_SECTION; not ATK_ROLE_PANEL
        https://bugs.webkit.org/show_bug.cgi?id=152070

        Reviewed by Mario Sanchez Prada.

        * platform/gtk/accessibility/deleting-iframe-destroys-axcache-expected.txt: Added.
        * platform/gtk/accessibility/gtk/media-controls-panel-title-expected.txt: Added.
        * platform/gtk/accessibility/gtk/replaced-objects-in-anonymous-blocks-expected.txt: Added.
        * platform/gtk/accessibility/image-link-expected.txt: Updated
        * platform/gtk/accessibility/image-with-alt-and-map-expected.txt: Updated.
        * platform/gtk/accessibility/lists-expected.txt: Updated.
        * platform/gtk/accessibility/media-emits-object-replacement-expected.txt: Updated.

2015-12-09  Ryan Haddad  <ryanhaddad@apple.com>

        Replacing Yosemite flag with Release flag for two flaky xmlhttprequest tests.
        https://bugs.webkit.org/show_bug.cgi?id=151729

        Unreviewed test gardening.

        * platform/mac-wk2/TestExpectations:

2015-12-09  Ryan Haddad  <ryanhaddad@apple.com>

        Marking inspector/debugger/command-line-api-exception.html as flaky on Mac
        https://bugs.webkit.org/show_bug.cgi?id=152029

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2015-12-09  Joanmarie Diggs  <jdiggs@igalia.com>

        AX: [GTK] Remove duplicate/platform media-emits-object-replacement.html and move expectations where they belong
        https://bugs.webkit.org/show_bug.cgi?id=152064

        Unreviewed test gardening.

        * accessibility/gtk/media-emits-object-replacement.html: Removed.
        * platform/gtk/accessibility/media-emits-object-replacement-expected.txt: Renamed from LayoutTests/accessibility/gtk/media-emits-object-replacement-expected.txt.

2015-12-09  Frederic Wang  <fred.wang@free.fr>

        Bad position of large operators inside an munderover element
        https://bugs.webkit.org/show_bug.cgi?id=151916

        Reviewed by Alejandro G. Castro.

        * mathml/opentype/large-operators-munderover-expected.txt: Added.
        * mathml/opentype/large-operators-munderover.html: Added.

        Add a test to verify the position and size of a large operator used as an munderover base.

2015-12-09  Joanmarie Diggs  <jdiggs@igalia.com>

        [AX][GTK] Accessibility gardening
        https://bugs.webkit.org/show_bug.cgi?id=152062

        Unreviewed test gardening.

        Skip two tests specific to AX API, mark a test which is timing out, remove passing
        test from failures.

        * platform/gtk/TestExpectations:

2015-12-09  Xabier Rodriguez Calvar  <calvaris@igalia.com>

        [Streams API] Import the web-platform-tests directly from the spec
        https://bugs.webkit.org/show_bug.cgi?id=152051

        Reviewed by Youenn Fablet.

        Removed the tests that are already imported directly from the spec.

        * streams/brand-checks-expected.txt: Added.
        * streams/brand-checks.html: Added. This includes some tests that vanished from the spec.
        * streams/reference-implementation/bad-strategies-expected.txt:
        * streams/reference-implementation/bad-strategies.html:
        * streams/reference-implementation/bad-underlying-sources.html: Removed.
        * streams/reference-implementation/brand-checks-expected.txt:
        * streams/reference-implementation/brand-checks.html:
        * streams/reference-implementation/byte-length-queuing-strategy-expected.txt:
        * streams/reference-implementation/byte-length-queuing-strategy.html:
        * streams/reference-implementation/count-queuing-strategy-expected.txt:
        * streams/reference-implementation/count-queuing-strategy.html:
        * streams/reference-implementation/readable-stream-cancel.html: Removed.
        * streams/reference-implementation/readable-stream-reader.html: Removed.
        * streams/reference-implementation/readable-stream-tee.html: Removed.
        * streams/reference-implementation/readable-stream-templated-expected.txt:
        * streams/reference-implementation/readable-stream-templated.html:
        * streams/reference-implementation/readable-stream.html: Removed.

2015-12-09  Joanmarie Diggs  <jdiggs@igalia.com>

        [AX][GTK] combobox-descendants-orientation-crash.html needs new baseline after r190648
        https://bugs.webkit.org/show_bug.cgi?id=152052

        Unreviewed test gardening.

        * accessibility/gtk/combobox-descendants-orientation-crash-expected.txt:

2015-12-09  Joanmarie Diggs  <jdiggs@igalia.com>

        AX: The aria-table-content.html layout test should be more cross-platform friendly
        https://bugs.webkit.org/show_bug.cgi?id=152002

        Reviewed by Mario Sanchez Prada.

        Use 'debug' to dump the role instead of 'shouldBe' with a hard-coded role.

        * accessibility/aria-table-content-expected.txt: Updated
        * accessibility/aria-table-content.html: Updated
        * platform/gtk/accessibility/aria-table-content-expected.txt: Added
        * platform/efl/accessibility/aria-table-content-expected.txt: Added

2015-12-09  Joanmarie Diggs  <jdiggs@igalia.com>

        [AX][GTK] media-emits-object-replacement.html needs new baseline
        https://bugs.webkit.org/show_bug.cgi?id=152050

        Unreviewed test gardening.

        * accessibility/gtk/media-emits-object-replacement-expected.txt:

2015-12-09  Joanmarie Diggs  <jdiggs@igalia.com>

        AX: [EFL] Consider deferring to WebCore Accessibility for table exposure
        https://bugs.webkit.org/show_bug.cgi?id=144898

        Reviewed by Darin Adler.

        * platform/efl/accessibility/table-detection-expected.txt: Updated to reflect new behavior.
        * platform/efl/accessibility/table-hierarchy-expected.txt: Updated to reflect new behavior.
        * platform/efl/accessibility/table-one-cell-expected.txt: Updated to reflect new behavior.
        * platform/efl/accessibility/table-with-rules-expected.txt: Updated to reflect new behavior.

2015-12-08  David Kilzer  <ddkilzer@apple.com>

        Skip storage/indexeddb/index-multientry.html once again

        * platform/mac-wk1/TestExpectations: Skip:
        - storage/indexeddb/index-multientry.html

2015-12-08  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/objectstore-cursor.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=152023

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2015-12-08  Ryan Haddad  <ryanhaddad@apple.com>

        Skipping fast/canvas/canvas-too-large-to-draw.html on win
        https://bugs.webkit.org/show_bug.cgi?id=152009

        Unreviewed test gardening.

        * platform/win/TestExpectations:

2015-12-08  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline fast/block/float/overhanging-tall-block.html for win after r193511
        https://bugs.webkit.org/show_bug.cgi?id=151906

        Unreviewed test gardening.

        * platform/win/fast/block/float/overhanging-tall-block-expected.txt:

2015-12-08  Ryan Haddad  <ryanhaddad@apple.com>

        Skipping fast/canvas/canvas-too-large-to-draw.html on ElCapitan Debug
        https://bugs.webkit.org/show_bug.cgi?id=152009

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2015-12-08  Brady Eidson  <beidson@apple.com>

        Modern IDB: IDBTransaction::hasPendingActivity() was wrong, leading to premature GC of the wrapper.
        https://bugs.webkit.org/show_bug.cgi?id=151507

        Reviewed by Beth Dakin.

        A handful of tests were marked flaky and tracked back to this bug.
        
        Ever since the presumed fix for this bug (r192687) the flakiness dashboard says they pass.
        
        * platform/mac-wk1/TestExpectations: Re-enable the no-longer-flaky tests.

2015-12-08  Brady Eidson  <beidson@apple.com>

        More IDB TestExpectations gardening.

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2015-12-08  Brady Eidson  <beidson@apple.com>

        Unreviewed IDB layout test gardening (Adding some flaky crashes)

        * platform/mac-wk1/TestExpectations:

2015-12-08  Brady Eidson  <beidson@apple.com>

        Modern IDB: Fire blocked events for delete requests that are blocked.
        https://bugs.webkit.org/show_bug.cgi?id=152015

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2015-12-08  Brady Eidson  <beidson@apple.com>

        More IDB TestExpectations gardening.

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2015-12-08  Brady Eidson  <beidson@apple.com>

        Modern IDB: Fire blocked events for upgrade requests that are blocked.
        https://bugs.webkit.org/show_bug.cgi?id=152007

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

        * storage/indexeddb/modern/blocked-open-db-requests-expected.txt: Added.
        * storage/indexeddb/modern/blocked-open-db-requests.html: Added.
        * storage/indexeddb/modern/resources/blocked-open-db-requests.js: Added.
        
        * storage/indexeddb/modern/deleteobjectstore-1.html: Fix subtly broken test.
        * storage/indexeddb/modern/idbdatabase-deleteobjectstore-failures.html: Ditto.
        
2015-12-08  Mark Lam  <mark.lam@apple.com>

        Polymorphic operand types for DFG and FTL div.
        https://bugs.webkit.org/show_bug.cgi?id=151747

        Reviewed by Geoffrey Garen.

        * js/regress/ftl-object-div-expected.txt: Added.
        * js/regress/ftl-object-div.html: Added.
        * js/regress/script-tests/ftl-object-div.js: Added.
        (o1.valueOf):
        (foo):

2015-12-08  Zalan Bujtas  <zalan@apple.com>

        Do not insert positioned renderers to multiple gPositionedDescendantsMap.
        https://bugs.webkit.org/show_bug.cgi?id=151878
        rdar://problem/22229889

        Reviewed by Simon Fraser.

        We insert positioned renderers into a static map (RenderBlock::gPositionedDescendantsMap) to keep track of them.
        This static map is at block level. A particular absolute positioned object is added to its closest ancestor that
        returns true for RenderElement::canContainAbsolutelyPositionedObjects().
        canContainAbsolutelyPositionedObjects() returns true if the ancestor is either positioned or has transform.
        If this container's style changes so that it's no longer positioned and it has no transform anymore,
        we need to clear its static map of positioned objects (they'll get re-inserted to another ancestor at next layout).

        This patch addresses the case when the renderer does not have transforms anymore.

        * fast/block/positioning/crash-when-transform-is-removed-expected.txt: Added.
        * fast/block/positioning/crash-when-transform-is-removed.html: Added.

2015-12-08  Ryan Haddad  <ryanhaddad@apple.com>

        Marking fast/canvas/canvas-too-large-to-draw.html as flaky on ElCapitan Debug
        https://bugs.webkit.org/show_bug.cgi?id=152009

        Unreviewed test gardening.

        * platform/mac/TestExpectations:

2015-12-08  Skachkov Oleksandr  <gskachkov@gmail.com>

        [ES6] "super" and "this" should be lexically bound inside an arrow function and should live in a JSLexicalEnvironment
        https://bugs.webkit.org/show_bug.cgi?id=149338

        Reviewed by Saam Barati.

        * js/arrowfunction-supercall-expected.txt: Added.
        * js/arrowfunction-supercall.html: Added.
        * js/arrowfunction-tdz-expected.txt: Added new expectation.
        * js/script-tests/arrowfunction-supercall.js: Added.
        * js/script-tests/arrowfunction-tdz.js: Added new cases.

2015-12-08  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/index-cursor.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=151973

        Reviewed by Darin Adler.

        * platform/mac-wk1/TestExpectations:

2015-12-08  Csaba Osztrogonác  <ossy@webkit.org>

        [EFL] REGRESSION(r173394): MiniBrowser stucked in an infinite loop if NETWORK_CACHE is disabled
        https://bugs.webkit.org/show_bug.cgi?id=137692

        Reviewed by Darin Adler.

        * platform/efl/TestExpectations: Unskip now passing tests.

2015-12-08  Gyuyoung Kim  <gyuyoung.kim@webkit.org>

        [EFL][AX] Rebaseline failing AX tests since r185662
        https://bugs.webkit.org/show_bug.cgi?id=151991

        Unreviewed EFL rebaseline.

        * platform/efl/TestExpectations:
        * platform/efl/accessibility/image-link-expected.txt:
        * platform/efl/accessibility/image-map2-expected.txt:
        * platform/efl/accessibility/lists-expected.txt:
        * platform/efl/accessibility/table-attributes-expected.txt:
        * platform/efl/accessibility/table-cell-spans-expected.txt:
        * platform/efl/accessibility/table-cells-expected.txt:
        * platform/efl/accessibility/table-detection-expected.txt:
        * platform/efl/accessibility/table-one-cell-expected.txt:
        * platform/efl/accessibility/table-sections-expected.txt:
        * platform/efl/accessibility/table-with-rules-expected.txt:

2015-12-08  Joanmarie Diggs  <jdiggs@igalia.com>

        [EFL] some ax tests have been failed since r186692
        https://bugs.webkit.org/show_bug.cgi?id=146887

        Reviewed by Mario Sanchez Prada.

        * platform/efl/TestExpectations: Removed failing tests.

2015-12-08  Joanmarie Diggs  <jdiggs@igalia.com>

        [GTK] 15 accessibility tests fail since r186692.
        https://bugs.webkit.org/show_bug.cgi?id=148938

        Reviewed by Mario Sanchez Prada.

        * platform/gtk/TestExpectations: Removed failing tests.
        * platform/gtk/accessibility/roles-computedRoleString-expected.txt: Rebaselined.
        * platform/gtk/accessibility/table-attributes-expected.txt: Rebaselined.
        * platform/gtk/accessibility/table-cell-spans-expected.txt: Rebaselined.
        * platform/gtk/accessibility/table-cells-expected.txt: Rebaselined.
        * platform/gtk/accessibility/table-detection-expected.txt: Rebaselined.
        * platform/gtk/accessibility/table-sections-expected.txt: Rebaselined.
        * platform/gtk/accessibility/table-with-rules-expected.txt: Rebaselined.

2015-12-08  Frederic Wang  <fred.wang@free.fr>

        [cairo] Solid stroke of lines with thickness less than 1 pixel broken after r191658
        https://bugs.webkit.org/show_bug.cgi?id=151947

        Reviewed by Martin Robinson.

        Add a test to check that the radical overbar appears on the screen when it has thickness less than 1px.

        * mathml/presentation/radical-bar-visibility-expected-mismatch.html: Added.
        * mathml/presentation/radical-bar-visibility.html: Added.

2015-12-07  Brady Eidson  <beidson@apple.com>

        Move an IDB test from the "generic failure" section to the "fails because no workers" section.

        Rubberstamped by Andy Estes.

        * platform/mac-wk1/TestExpectations:

2015-12-07  Andy VanWagoner  <thetalecrafter@gmail.com>

        [INTL] Implement String.prototype.toLocaleUpperCase in ECMA-402
        https://bugs.webkit.org/show_bug.cgi?id=147609

        Reviewed by Benjamin Poulain.

        * js/script-tests/string-toLocaleUpperCase.js: Added.
        * js/string-toLocaleUpperCase-expected.txt: Added.
        * js/string-toLocaleUpperCase.html: Added.

2015-12-07  Myles C. Maxfield  <mmaxfield@apple.com>

        [Mac] Remove Mavericks-specific TestExpectations lines
        https://bugs.webkit.org/show_bug.cgi?id=151913

        Reviewed by Alexey Proskuryakov.

        Mavericks is no longer a supported OS.

        * platform/mac/TestExpectations:

2015-12-07  Brady Eidson  <beidson@apple.com>

        Modern IDB: Miscellaneous test cleanup.
        https://bugs.webkit.org/show_bug.cgi?id=151968

        Reviewed by Sam Weinig.

        - Reorganize TestExpectations a bit.
        - Remove two tests that primarily test features that have been removed from the spec.

        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/cursor-continueprimarykey-expected.txt: Removed.
        * storage/indexeddb/cursor-continueprimarykey.html: Removed.
        * storage/indexeddb/factory-basics-expected.txt: Removed.
        * storage/indexeddb/factory-basics.html: Removed.
        * storage/indexeddb/resources/cursor-continueprimarykey.js: Removed.
        * storage/indexeddb/resources/factory-basics.js: Removed.

2015-12-07  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/factory-deletedatabase.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=151966
        
        Reviewed by Sam Weinig.

        * platform/mac-wk1/TestExpectations:

2015-12-07  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/cursor-continue-validity.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=151961

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/cursor-finished-expected.txt:

2015-12-07  Xabier Rodriguez Calvar  <calvaris@igalia.com>

        [Streams API] pipeTo tests are failing
        https://bugs.webkit.org/show_bug.cgi?id=151949

        Unreviewed.

        * TestExpectations:
        * platform/mac/TestExpectations:
        * platform/win/TestExpectations: Moved the flag from Mac and Win to general as GTK+ is failing too.

2015-12-07  Brady Eidson  <beidson@apple.com>

        Modern IDB: Fix "old versions" when upgrading databases.
        https://bugs.webkit.org/show_bug.cgi?id=151948

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/database-basics-expected.txt:
        * storage/indexeddb/modern/deletedatabase-2-expected.txt:

2015-12-07  Xabier Rodriguez Calvar  <calvaris@igalia.com>

        Unreviewed.

        http://webkit.org/b/147933 and though count queuing strategy and writable stream abort tests are fixed, there
        are still issues with pipeTo. For that I created http://webkit.org/b/151949.

        * platform/mac/TestExpectations:
        * platform/win/TestExpectations:

2015-12-07  Brady Eidson  <beidson@apple.com>

        Modern IDB: Add some more custom exception messages, passing some more tests..
        https://bugs.webkit.org/show_bug.cgi?id=151912

        Reviewed by Andy Estes.

        * platform/mac-wk1/TestExpectations:
        
        * storage/indexeddb/exceptions-expected.txt:
        * storage/indexeddb/get-keyrange-expected.txt:
        * storage/indexeddb/invalid-keys-expected.txt:
        * storage/indexeddb/keypath-edges-expected.txt:
        * storage/indexeddb/keyrange-expected.txt:
        * storage/indexeddb/transaction-active-flag-expected.txt:
        * storage/indexeddb/transaction-and-objectstore-calls-expected.txt:

        * storage/indexeddb/resources/exceptions.js:
        * storage/indexeddb/resources/transaction-and-objectstore-calls.js:

2015-12-07  Ryan Haddad  <ryanhaddad@apple.com>

        Marking fast/dom/Window/property-access-on-cached-window-after-frame-removed.html as failing on Win
        https://bugs.webkit.org/show_bug.cgi?id=151759

        Unreviewed test gardening.

        * platform/win/TestExpectations:

2015-12-07  Ryan Haddad  <ryanhaddad@apple.com>

        Removing Yosemite flag from flaky test http/tests/cache/disk-cache/disk-cache-request-max-stale.html
       https://bugs.webkit.org/show_bug.cgi?id=151661

        Unreviewed test gardening.

        * platform/mac-wk2/TestExpectations:

2015-12-07  Gyuyoung Kim  <gyuyoung.kim@webkit.org>

        Unreviewed EFL gardening. Mark some of blink tests to failure since r190629.

        * platform/efl/TestExpectations:

2015-12-06  Simon Fraser  <simon.fraser@apple.com>

        Clipping along compositing borders in svg-edit
        https://bugs.webkit.org/show_bug.cgi?id=151791

        Reviewed by Zalan Bujtas.
        
        Ref test that triggers recomputation of overflow.

        * svg/overflow/visual-overflow-change-expected.html: Added.
        * svg/overflow/visual-overflow-change.html: Added.

2015-12-06  Andy VanWagoner  <thetalecrafter@gmail.com>

        [INTL] Implement String.prototype.toLocaleLowerCase in ECMA-402
        https://bugs.webkit.org/show_bug.cgi?id=147608

        Reviewed by Benjamin Poulain.

        * js/script-tests/string-toLocaleLowerCase.js: Added.
        * js/string-toLocaleLowerCase-expected.txt: Added.
        * js/string-toLocaleLowerCase.html: Added.

2015-12-06  Simon Fraser  <simon.fraser@apple.com>

        REGRESSION (r187121): Can't get to the main content of the page at https://theintercept.com/drone-papers/
        https://bugs.webkit.org/show_bug.cgi?id=151849
        rdar://problem/23132828

        Reviewed by Zalan Bujtas.
        
        New ref test.
        
        The behavior of imported/blink/transitions/transition-not-interpolable.html changed
        with this patch, but that test is trying to determine if transitions run to/from
        'auto' values, and doing it wrong. The current patch doesn't change the user-visible
        behavior of transitions with 'auto' endpoints (covered by http://webkit.org/b/38243).

        * animations/fill-forwards-auto-height-expected.html: Added.
        * animations/fill-forwards-auto-height.html: Added.
        * imported/blink/transitions/transition-not-interpolable-expected.txt:

2015-12-06  David Kilzer  <ddkilzer@apple.com>

        REGRESSION(r193584): Causes heap use-after-free crashes in Web Inspector tests with AddressSanitizer (Requested by ddkilzer on #webkit).
        https://bugs.webkit.org/show_bug.cgi?id=151929

        Reverted changeset:

        "[ES6] "super" and "this" should be lexically bound inside an
        arrow function and should live in a JSLexicalEnvironment"
        https://bugs.webkit.org/show_bug.cgi?id=149338
        http://trac.webkit.org/changeset/193584

2015-12-06  Skachkov Oleksandr  <gskachkov@gmail.com>

        [ES6] "super" and "this" should be lexically bound inside an arrow function and should live in a JSLexicalEnvironment
        https://bugs.webkit.org/show_bug.cgi?id=149338

        Reviewed by Saam Barati.

        * js/arrowfunction-supercall-expected.txt: Added.
        * js/arrowfunction-supercall.html: Added.
        * js/arrowfunction-tdz-expected.txt: Added new expectation.
        * js/script-tests/arrowfunction-supercall.js: Added.
        * js/script-tests/arrowfunction-tdz.js: Added new cases.

2015-12-05  David Kilzer  <ddkilzer@apple.com>

        REGRESSION (r193487): Modern IDB: storage/indexeddb/index-multientry.html crashes

        * platform/mac-wk1/TestExpectations: Skip test that crashes
        on every run: storage/indexeddb/index-multientry.html.

2015-12-04  Zalan Bujtas  <zalan@apple.com>

        Garbage in page tiles when document is too long.
        https://bugs.webkit.org/show_bug.cgi?id=151906
        rdar://problem/23695858

        Reviewed by Simon Fraser.

        * platform/ios-simulator/fast/block/float/overhanging-tall-block-expected.txt:
        * platform/mac-mavericks/fast/block/float/overhanging-tall-block-expected.txt:
        * platform/mac/fast/block/float/overhanging-tall-block-expected.txt:

2015-12-04  Brady Eidson  <beidson@apple.com>

        Modern IDB: Add some more custom exception messages, passing some more tests.
        https://bugs.webkit.org/show_bug.cgi?id=151898

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/keypath-arrays-expected.txt:
        * storage/indexeddb/noblobs-expected.txt:
        * storage/indexeddb/object-lookups-in-versionchange-expected.txt:
        * storage/indexeddb/request-result-cache-expected.txt:
        * storage/indexeddb/transaction-after-close-expected.txt:
        * storage/indexeddb/transaction-and-objectstore-calls-expected.txt:
        * storage/indexeddb/transaction-read-only-expected.txt:

2015-12-04  Brady Eidson  <beidson@apple.com>

        Modern IDB: Add some more custom exception messages, passing some more tests.
        https://bugs.webkit.org/show_bug.cgi?id=151895

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/aborted-versionchange-closes-expected.txt:
        * storage/indexeddb/cursor-continue-dir-expected.txt:
        * storage/indexeddb/cursor-continue-expected.txt:
        * storage/indexeddb/deleteIndex-expected.txt:
        * storage/indexeddb/modern/idbdatabase-transaction-failures-expected.txt:

2015-12-04  Andy VanWagoner  <thetalecrafter@gmail.com>

        [INTL] Implement Number.prototype.toLocaleString in ECMA-402
        https://bugs.webkit.org/show_bug.cgi?id=147610

        Reviewed by Benjamin Poulain.

        Add tests for ECMA-402 Number.prototype.toLocaleString.
        Since NumberFormat is not fully implemented, don't test locale-specific behavior yet.

        * js/number-toLocaleString-expected.txt: Added.
        * js/number-toLocaleString.html: Added.
        * js/script-tests/number-toLocaleString.js: Added.

2015-12-04  Brady Eidson  <beidson@apple.com>

        Modern IDB: Flip test expectations around so we only list failures.
        https://bugs.webkit.org/show_bug.cgi?id=151880

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2015-12-04  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/cursor-update.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=151879

        Reviewed by Oliver Hunt.

        * platform/mac-wk1/TestExpectations:

2015-12-04  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/version-change-exclusive.html fails
        https://bugs.webkit.org/show_bug.cgi?id=151870

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/modern/double-open-expected.txt: Added.
        * storage/indexeddb/modern/double-open.html: Added.
        * storage/indexeddb/version-change-exclusive-expected.txt:

2015-12-04  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/exceptions.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=151732

        Reviewed by Alex Christensen.

        Lots of new wk2-specific expectations to keep Legacy IDB passing for now.
        
        * platform/mac-wk1/TestExpectations:
        * platform/wk2/imported/w3c/indexeddb/idbcursor_continue_index5-expected.txt: Added.
        * platform/wk2/imported/w3c/indexeddb/idbcursor_continue_index6-expected.txt: Added.
        * platform/wk2/imported/w3c/indexeddb/idbcursor_continue_invalid-expected.txt: Added.
        * platform/wk2/imported/w3c/indexeddb/idbindex_get7-expected.txt: Added.
        * platform/wk2/imported/w3c/indexeddb/idbindex_getKey7-expected.txt: Added.
        * platform/wk2/imported/w3c/indexeddb/idbindex_openCursor2-expected.txt: Added.
        * platform/wk2/imported/w3c/indexeddb/idbindex_openKeyCursor3-expected.txt: Added.
        * platform/wk2/imported/w3c/indexeddb/keypath-expected.txt: Added.
        * platform/wk2/storage/indexeddb/aborted-versionchange-closes-expected.txt: Copied from LayoutTests/storage/indexeddb/aborted-versionchange-closes-expected.txt.
        * platform/wk2/storage/indexeddb/bad-keypath-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/bad-keypath-expected.txt.
        * platform/wk2/storage/indexeddb/basics-expected.txt: Copied from LayoutTests/storage/indexeddb/basics-expected.txt.
        * platform/wk2/storage/indexeddb/clear-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/clear-expected.txt.
        * platform/wk2/storage/indexeddb/create-and-remove-object-store-expected.txt: Copied from LayoutTests/storage/indexeddb/create-and-remove-object-store-expected.txt.
        * platform/wk2/storage/indexeddb/create-objectstore-basics-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/create-objectstore-basics-expected.txt.
        * platform/wk2/storage/indexeddb/cursor-continue-dir-expected.txt: Added.
        * platform/wk2/storage/indexeddb/cursor-continue-expected.txt: Added.
        * platform/wk2/storage/indexeddb/cursor-finished-expected.txt: Copied from LayoutTests/storage/indexeddb/cursor-finished-expected.txt.
        * platform/wk2/storage/indexeddb/cursors-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/cursors-expected.txt.
        * platform/wk2/storage/indexeddb/database-basics-expected.txt: Added.
        * platform/wk2/storage/indexeddb/deleteIndex-bug110792-expected.txt: Added.
        * platform/wk2/storage/indexeddb/index-count-expected.txt: Added.
        * platform/wk2/storage/indexeddb/intversion-close-in-oncomplete-expected.txt: Added.
        * platform/wk2/storage/indexeddb/intversion-close-in-upgradeneeded-expected.txt: Added.
        * platform/wk2/storage/indexeddb/invalid-keys-expected.txt: Added.
        * platform/wk2/storage/indexeddb/key-requirements-delete-null-key-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/key-requirements-delete-null-key-expected.txt.
        * platform/wk2/storage/indexeddb/key-requirements-inline-and-passed-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/key-requirements-inline-and-passed-expected.txt.
        * platform/wk2/storage/indexeddb/key-requirements-put-no-key-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/key-requirements-put-no-key-expected.txt.
        * platform/wk2/storage/indexeddb/key-requirements-put-null-key-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/key-requirements-put-null-key-expected.txt.
        * platform/wk2/storage/indexeddb/key-type-array-expected.txt: Added.
        * platform/wk2/storage/indexeddb/keypath-arrays-expected.txt: Added.
        * platform/wk2/storage/indexeddb/keypath-edges-expected.txt: Added.
        * platform/wk2/storage/indexeddb/keyrange-expected.txt: Added.
        * platform/wk2/storage/indexeddb/mozilla/clear-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/clear-expected.txt.
        * platform/wk2/storage/indexeddb/mozilla/create-objectstore-basics-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/create-objectstore-basics-expected.txt.
        * platform/wk2/storage/indexeddb/mozilla/cursors-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/cursors-expected.txt.
        * platform/wk2/storage/indexeddb/mozilla/key-requirements-delete-null-key-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/key-requirements-delete-null-key-expected.txt.
        * platform/wk2/storage/indexeddb/mozilla/readonly-transactions-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/readonly-transactions-expected.txt.
        * platform/wk2/storage/indexeddb/object-lookups-in-versionchange-expected.txt: Added.
        * platform/wk2/storage/indexeddb/objectstore-count-expected.txt: Added.
        * platform/wk2/storage/indexeddb/open-cursor-expected.txt: Added.
        * platform/wk2/storage/indexeddb/readonly-transactions-expected.txt: Copied from LayoutTests/storage/indexeddb/mozilla/readonly-transactions-expected.txt.
        * platform/wk2/storage/indexeddb/removed-expected.txt: Added.
        * platform/wk2/storage/indexeddb/request-result-cache-expected.txt: Added.
        * platform/wk2/storage/indexeddb/transaction-abort-expected.txt: Copied from LayoutTests/storage/indexeddb/transaction-abort-expected.txt.
        * platform/wk2/storage/indexeddb/transaction-active-flag-expected.txt: Added.
        * platform/wk2/storage/indexeddb/transaction-after-close-expected.txt: Added.
        * platform/wk2/storage/indexeddb/transaction-read-only-expected.txt: Added.
        * platform/wk2/storage/indexeddb/version-change-exclusive-expected.txt: Added.
        * storage/indexeddb/aborted-versionchange-closes-expected.txt:
        * storage/indexeddb/basics-expected.txt:
        * storage/indexeddb/create-and-remove-object-store-expected.txt:
        * storage/indexeddb/cursor-finished-expected.txt:
        * storage/indexeddb/exceptions-expected.txt:
        * storage/indexeddb/modern/createobjectstore-failures-expected.txt:
        * storage/indexeddb/modern/double-abort-expected.txt:
        * storage/indexeddb/modern/idbdatabase-deleteobjectstore-failures-expected.txt:
        * storage/indexeddb/modern/idbdatabase-transaction-failures-expected.txt:
        * storage/indexeddb/mozilla/bad-keypath-expected.txt:
        * storage/indexeddb/mozilla/clear-expected.txt:
        * storage/indexeddb/mozilla/create-objectstore-basics-expected.txt:
        * storage/indexeddb/mozilla/cursors-expected.txt:
        * storage/indexeddb/mozilla/key-requirements-delete-null-key-expected.txt:
        * storage/indexeddb/mozilla/key-requirements-inline-and-passed-expected.txt:
        * storage/indexeddb/mozilla/key-requirements-put-no-key-expected.txt:
        * storage/indexeddb/mozilla/key-requirements-put-null-key-expected.txt:
        * storage/indexeddb/mozilla/readonly-transactions-expected.txt:
        * storage/indexeddb/resources/exceptions.js:
        (testObjectStore):
        * storage/indexeddb/transaction-abort-expected.txt:

2015-12-04  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Unskip many inspector/debugger tests
        https://bugs.webkit.org/show_bug.cgi?id=151843

        Reviewed by Timothy Hatcher.

        * TestExpectations:
        * platform/mac/TestExpectations:
        Skip specific tests.

        * platform/mac-wk2/TestExpectations:
        Test no longer existed.

        * inspector/debugger/resources/exception.js:
        (exceptionDOM):
        Keep the code outputing a NotFoundException. This particular
        invocation was recently changed to throw a TypeError.

2015-12-04  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Remove untested and unused Worker inspection
        https://bugs.webkit.org/show_bug.cgi?id=151848

        Reviewed by Brian Burg.

        * inspector/debugger/pause-dedicated-worker-expected.txt: Removed.
        * inspector/debugger/pause-dedicated-worker.html: Removed.
        * inspector/debugger/resources/dedicated-worker.js: Removed.
        * inspector/debugger/terminate-dedicated-worker-while-paused-expected.txt: Removed.
        * inspector/debugger/terminate-dedicated-worker-while-paused.html: Removed.

2015-12-04  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Specifically Identify the Global Lexical Environment Scope
        https://bugs.webkit.org/show_bug.cgi?id=151828

        Reviewed by Brian Burg.

        * inspector/debugger/breakpoint-scope-expected.txt:
        * inspector/debugger/breakpoint-scope.html:
        * inspector/debugger/resources/scope.js:
        Update the test to include something in the global lexical
        environment and ensure it is identified as such.

2015-12-03  Sergio Villar Senin  <svillar@igalia.com>

        [css-grid] Fix height computation of grid items with borders inside fr tracks
        https://bugs.webkit.org/show_bug.cgi?id=151798

        Reviewed by Zalan Bujtas.

        * fast/css-grid-layout/grid-item-with-border-in-fr-expected.txt: Added.
        * fast/css-grid-layout/grid-item-with-border-in-fr.html: Added.

2015-12-03  Brady Eidson  <beidson@apple.com>

        Modern IDB: Fix up tests that refer to non-standard IDBVersionChangeEvent.dataLoss.
        https://bugs.webkit.org/show_bug.cgi?id=151850

        Reviewed by Andy Estes.

        * platform/mac-wk1/TestExpectations:
        
        * storage/indexeddb/data-corruption-expected.txt: Removed.
        * storage/indexeddb/data-corruption.html: Removed.
        * storage/indexeddb/resources/data-corruption.js: Removed.

        * storage/indexeddb/events-expected.txt:
        * storage/indexeddb/resources/events.js:

2015-12-03  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/cursor-index-delete.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=151847

        Reviewed by Andy Estes.

        * platform/mac-wk1/TestExpectations:

2015-12-03  Eric Carlson  <eric.carlson@apple.com>

        [MediaStream] Update MediaStreamTrack.getCapabilities
        https://bugs.webkit.org/show_bug.cgi?id=151728

        Reviewed by Jer Noble.

        * fast/mediastream/MediaStreamTrack-getCapabilities-expected.txt: Added.
        * fast/mediastream/MediaStreamTrack-getCapabilities.html: Added.
        * fast/mediastream/MediaStreamTrack-getSettings-expected.txt:
        * fast/mediastream/MediaStreamTrack-getSettings.html:

2015-12-03  Ryan Haddad  <ryanhaddad@apple.com>

        Removing deleted test storage/indexeddb/objectstore-keycursor.html from TestExpectations file
        https://bugs.webkit.org/show_bug.cgi?id=151772

        Unreviewed test gardening.

        * platform/mac-wk2/TestExpectations:

2015-12-03  Keith Rollin  <krollin@apple.com>

        [Win] fast/forms/HTMLOptionElement_label03.html failing on win7
        https://bugs.webkit.org/show_bug.cgi?id=150909
        rdar://problem/23539673

        Reviewed by Darin Adler.

        Mark fast/forms/HTMLOptionElement_label03.html as being expected to
        pass. Also update some text in HTMLOptionElement_label02.html and
        HTMLOptionElement_label03.html so that it no longer refers to our
        trying to match IE (which we are no longer doing).

        * fast/forms/HTMLOptionElement_label02.html:
        * fast/forms/HTMLOptionElement_label03.html:
        * platform/win/TestExpectations:

2015-12-03  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/cursor-advance.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=151731

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/cursor-advance-expected.txt:

2015-12-03  Brent Fulgham  <bfulgham@apple.com>

        Allow JavaScript to iterate over plugins for local files
        https://bugs.webkit.org/show_bug.cgi?id=151783
        <rdar://problem/23692113>

        Modify the existing 'local file' plugin tests so that they don't turn on the debugging
        flag to allow iterating over all plugins. Then create a new HTTP test (based on the
        existing plugin-javascript-access test) to make sure that plugin iteration is blocked
        for non-local-file access.

        Reviewed by Alexey Proskuryakov.

        * http/tests/plugins/plugin-javascript-access-expected.txt: Added.
        * http/tests/plugins/plugin-javascript-access.html: Added.
        * plugins/plugin-javascript-access.html: Remove unneeded 'internals.setShowAllPlugins' call.
        * plugins/script-tests/navigator-mimeTypes-length.js: Ditto.

2015-12-03  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/cursor-skip-deleted.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=151794

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2015-12-02  Sam Weinig  <sam@webkit.org>

        Promise callbacks should be called at microtask checkpoints
        https://bugs.webkit.org/show_bug.cgi?id=147933

        Reviewed by Chris Dumez.

        * fast/dom/microtask-promise-mutation-observer-order-expected.txt: Added.
        * fast/dom/microtask-promise-mutation-observer-order.html: Added.

2015-12-03  Daniel Bates  <dabates@apple.com>

        ASSERT_WITH_SECURITY_IMPLICATION in WebCore::DocumentOrderedMap::add()
        https://bugs.webkit.org/show_bug.cgi?id=126662
        <rdar://problem/15775508>

        Reviewed by Brent Fulgham.

        Add test to ensure that we do not assert when inserting a subtree that has an element with
        a duplicate id before removing the original subtree.

        * svg/custom/insert-subtree-with-duplicate-id-before-removing-subtree-expected.txt: Added.
        * svg/custom/insert-subtree-with-duplicate-id-before-removing-subtree.svg: Added.

2015-12-03  Javier Fernandez  <jfernandez@igalia.com>

        [css-grid] margin-left:auto and margin-top:auto discards the margin on opposite side
        https://bugs.webkit.org/show_bug.cgi?id=151802

        Reviewed by Sergio Villar Senin.

        Tests to verify the specified margins account for determining the available space for
        auto-margins alignment.

        * fast/css-grid-layout/grid-item-auto-margins-must-respect-specified-margins-expected.txt: Added.
        * fast/css-grid-layout/grid-item-auto-margins-must-respect-specified-margins.html: Added.

2015-12-03  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaselining svg/custom/bug78807.svg since actual results now match Mac expectations
        https://bugs.webkit.org/show_bug.cgi?id=151804

        Unreviewed test gardening.

        * platform/win/svg/custom/bug78807-expected.txt:

2015-12-03  Ryan Haddad  <ryanhaddad@apple.com>

        Skipping failing sputnik/Unicode/Unicode_510 tests pending further investigation
        https://bugs.webkit.org/show_bug.cgi?id=151505

        Unreviewed test gardening.

        * platform/win/TestExpectations:

2015-12-03  Ryan Haddad  <ryanhaddad@apple.com>

        Marking fast/css/pseudo-visited-background-color-on-input.html as failing on win
        https://bugs.webkit.org/show_bug.cgi?id=151756

        Unreviewed test gardening.

        * platform/win/TestExpectations:

2015-12-03  Ryan Haddad  <ryanhaddad@apple.com>

        fast/borders/hidpi-border-clipping-right-after-move.html
        https://bugs.webkit.org/show_bug.cgi?id=151754

        Unreviewed test gardening.

        * platform/win/TestExpectations:

2015-12-03  Gyuyoung Kim  <gyuyoung.kim@webkit.org>

        Unreviewed EFL urgent gardening. Skip web-platform-tests
        because it has been timeout since r192796.

        * platform/efl/TestExpectations:

2015-12-02  Mark Lam  <mark.lam@apple.com>

        Polymorphic operand types for DFG and FTL mul.
        https://bugs.webkit.org/show_bug.cgi?id=151746

        Reviewed by Filip Pizlo.

        * js/regress/ftl-object-mul-expected.txt: Added.
        * js/regress/ftl-object-mul.html: Added.
        * js/regress/script-tests/ftl-object-mul.js: Added.
        (o1.valueOf):
        (foo):

2015-12-02  Myles C. Maxfield  <mmaxfield@apple.com>

        Unify font-variant-* with font-variant shorthand
        https://bugs.webkit.org/show_bug.cgi?id=149773

        Reviewed by Darin Adler.

        Update tests. Also temporarily skip existing font-features tests until
        https://bugs.webkit.org/show_bug.cgi?id=149774 is fixed.

        * css3/font-variant-parsing-expected.txt:
        * css3/font-variant-parsing.html:
        * fast/css/font-property-priority-expected.txt:
        * fast/css/font-shorthand-expected.txt:
        * fast/css/parsing-font-variant-ligatures-expected.txt:
        * fast/css/parsing-font-variant-ligatures.html:
        * fast/inspector-support/style-expected.txt:
        * fast/text/font-variant-shorthand-expected.txt: Added.
        * fast/text/font-variant-shorthand.html: Added.
        * platform/mac/TestExpectations:
        * platform/mac/fast/writing-mode/broken-ideograph-small-caps-expected.txt:

2015-12-02  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaselining fast/dom/adopt-attribute-crash-expected for win
        https://bugs.webkit.org/show_bug.cgi?id=151762

        Reviewed by Darin Adler.

        * platform/win/fast/dom/adopt-attribute-crash-expected.txt:

2015-12-02  Alex Christensen  <achristensen@webkit.org>

        Asynchronously call onerror when a content blocker blocks ascript element's load
        https://bugs.webkit.org/show_bug.cgi?id=151649

        Reviewed by Brady Eidson.

        * http/tests/contentextensions/script-onerror-expected.txt: Added.
        * http/tests/contentextensions/script-onerror.html: Added.
        * http/tests/contentextensions/script-onerror.html.json: Added.
        * http/tests/misc/unloadable-script-expected.txt:
        * http/tests/misc/unloadable-script.html:
        * http/tests/security/local-JavaScript-from-remote-expected.txt:
        * http/tests/security/local-JavaScript-from-remote.html:
        Added testRunner.waitUntilDone and testRunner.notifyDone to reflect the fact that onerror is no longer called synchronously.

2015-12-02  Eric Carlson  <eric.carlson@apple.com>

        Fix flaky test added with r192954.

        Unreviewed.

        * fast/mediastream/MediaStreamTrack-getSettings.html:

2015-12-02  Commit Queue  <commit-queue@webkit.org>

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

        A large number of the tests added with this change are failing
        on Windows (Requested by ryanhaddad on #webkit).

        Reverted changeset:

        "[css border] border-image doesn't honor border-style"
        https://bugs.webkit.org/show_bug.cgi?id=99922
        http://trac.webkit.org/changeset/192955

2015-12-02  Yoav Weiss  <yoav@yoav.ws>

        Fix preloader issue with srcdoc documents.
        https://bugs.webkit.org/show_bug.cgi?id=151744

        Reviewed by Ryosuke Niwa.

        Added a test that makes sure that srcdoc based subresources are properly preloaded.

        * fast/preloader/iframe-srcdoc-expected.txt: Added.
        * fast/preloader/iframe-srcdoc.html: Added.

2015-12-02  Jer Noble  <jer.noble@apple.com>

        Add a setting and restriction which will pause invisible autoplaying video
        https://bugs.webkit.org/show_bug.cgi?id=151412

        Reviewed by Eric Carlson.

        * media/video-restricted-invisible-autoplay-not-allowed-expected.txt: Added.
        * media/video-restricted-invisible-autoplay-not-allowed.html: Added.

2015-12-02  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline fast/parser/xml-declaration-missing-ending-mark.html, fast/parser/xml-colon-entity.html for Win
        https://bugs.webkit.org/show_bug.cgi?id=151763

        Reviewed by Brent Fulgham.

        * platform/win/fast/parser/xml-colon-entity-expected.txt:
        * platform/win/fast/parser/xml-declaration-missing-ending-mark-expected.txt:

2015-12-02  Ryan Haddad  <ryanhaddad@apple.com>

        Rebaseline fast/dynamic/text-combine.html on win
        https://bugs.webkit.org/show_bug.cgi?id=151761

        Unreviewed test gardening.

        * platform/win/fast/dynamic/text-combine-expected.png:
        * platform/win/fast/dynamic/text-combine-expected.txt:

2015-12-02  Brady Eidson  <beidson@apple.com>

        Modern IDB: Remove all traces of IDBObjectStore::openKeyCursor from tests.
        https://bugs.webkit.org/show_bug.cgi?id=151772

        Reviewed by Alex Christensen.
        
        IDBObjectStore::openKeyCursor no longer exists, so testing it is inherently bogus.

        * platform/mac-wk1/TestExpectations: Two tests now pass with small expectations changes.
        * storage/indexeddb/cursor-basics-expected.txt:
        * storage/indexeddb/cursor-overloads-expected.txt:

        * storage/indexeddb/cursor-overloads.html:
        * storage/indexeddb/optional-arguments.html:
        * storage/indexeddb/resources/cursor-basics.js:
        * storage/indexeddb/resources/deleted-objects.js:
        * storage/indexeddb/resources/exceptions.js:
        * storage/indexeddb/resources/objectstore-basics.js:
        
        * storage/indexeddb/objectstore-keycursor-expected.txt: Removed.
        * storage/indexeddb/objectstore-keycursor.html: Removed.
        * storage/indexeddb/resources/objectstore-keycursor.js: Removed.

2015-12-02  David Hyatt  <hyatt@apple.com>

        Add some more picture element layout tests
        https://bugs.webkit.org/show_bug.cgi?id=151769

        Reviewed by Dean Jackson.

        * fast/picture/image-picture-invalid-expected.txt: Added.
        * fast/picture/image-picture-invalid.html: Added.
        * fast/picture/image-picture-nested-expected.txt: Added.
        * fast/picture/image-picture-nested.html: Added.

2015-12-02  Brady Eidson  <beidson@apple.com>

        Modern IDB: Enable a couple more passing tests.
        https://bugs.webkit.org/show_bug.cgi?id=151766

        Reviewed by Beth Dakin.

        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/create-object-store-options-expected.txt:

2015-12-02  Ryan Haddad  <ryanhaddad@apple.com>

        Skipping tests on Win that fail due to unimplemented showModalDialog function.
        https://bugs.webkit.org/show_bug.cgi?id=151506

        Unreviewed test gardening.

        * platform/win/TestExpectations:

2015-12-02  Brady Eidson  <beidson@apple.com>

        Modern IDB: IDBTransaction::error is not exposed.
        https://bugs.webkit.org/show_bug.cgi?id=151752

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/modern/basic-add.html:
        * storage/indexeddb/modern/double-abort-expected.txt:
        * storage/indexeddb/modern/index-3.html:
        * storage/indexeddb/resources/transaction-error.js:
        * storage/indexeddb/transaction-error-expected.txt:

2015-12-02  Adenilson Cavalcanti  <cavalcantii@gmail.com>

        [css border] border-image doesn't honor border-style
        https://bugs.webkit.org/show_bug.cgi?id=99922

        Reviewed by Simon Fraser.

        Ensure that WebKit will be compliant to css-backgrounds spec where
        a border with an image will only be rendered if there is a style defined.

        Previous border image tests had to be edited (i.e. define border-style)
        to ensure that a decorated border would be rendered.

        * fast/borders/border-image-01.html:
        * fast/borders/border-image-border-radius.html:
        * fast/borders/border-image-fill-no-intrinsic-size.html:
        * fast/borders/border-image-longhand.html:
        * fast/borders/border-image-massive-scale.html:
        * fast/borders/border-image-omit-right-slice.html:
        * fast/borders/border-image-outset-in-shorthand.html:
        * fast/borders/border-image-outset-split-inline-expected.txt:
        * fast/borders/border-image-outset-split-inline-vertical-lr-expected.txt:
        * fast/borders/border-image-outset-split-inline-vertical-lr.html:
        * fast/borders/border-image-outset-split-inline.html:
        * fast/borders/border-image-outset.html:
        * fast/borders/border-image-repeat.html:
        * fast/borders/border-image-rotate-transform.html:
        * fast/borders/border-image-scale-transform.html:
        * fast/borders/border-image-scaled.html:
        * fast/borders/border-image-scrambled.html:
        * fast/borders/border-image-should-not-display-expected.html: Added.
        * fast/borders/border-image-should-not-display.html: Added.
        * fast/borders/border-image-side-reduction.html:
        * fast/borders/border-image-slice-constrained.html:
        * fast/borders/border-image-slice-missing-right.html:
        * fast/borders/border-image-slices.html:
        * fast/borders/border-image-source.html:
        * fast/borders/border-image-trumps-radius-expected.txt:
        * fast/borders/border-image-trumps-radius.html:
        * fast/borders/hidpi-border-image-gradient-on-subpixels.html:
        * fast/borders/resources/red.png: Added.
        * fast/borders/scaled-border-image.html:
        * fast/gradients/border-image-gradient-expected.txt:
        * fast/gradients/border-image-gradient.html:
        * fast/hidpi/image-set-border-image-comparison.html:
        * fast/hidpi/image-set-border-image-dynamic.html:
        * fast/hidpi/image-set-border-image-simple.html:
        * fast/writing-mode/border-image-horizontal-bt.html:
        * fast/writing-mode/border-image-vertical-lr.html:
        * fast/writing-mode/border-image-vertical-rl.html:
        * platform/mac/fast/borders/border-image-01-expected.txt:
        * platform/mac/fast/borders/border-image-border-radius-expected.txt:
        * platform/mac/fast/borders/border-image-longhand-expected.txt:
        * platform/mac/fast/borders/border-image-massive-scale-expected.txt:
        * platform/mac/fast/borders/border-image-omit-right-slice-expected.txt:
        * platform/mac/fast/borders/border-image-outset-expected.txt:
        * platform/mac/fast/borders/border-image-outset-in-shorthand-expected.txt:
        * platform/mac/fast/borders/border-image-repeat-expected.txt:
        * platform/mac/fast/borders/border-image-rotate-transform-expected.txt:
        * platform/mac/fast/borders/border-image-scale-transform-expected.txt:
        * platform/mac/fast/borders/border-image-scaled-expected.txt:
        * platform/mac/fast/borders/border-image-scrambled-expected.txt:
        * platform/mac/fast/borders/border-image-side-reduction-expected.txt:
        * platform/mac/fast/borders/border-image-slice-constrained-expected.txt:
        * platform/mac/fast/borders/border-image-slices-expected.txt:
        * platform/mac/fast/borders/border-image-source-expected.txt:
        * platform/mac/fast/borders/scaled-border-image-expected.txt:
        * platform/mac/fast/hidpi/image-set-border-image-comparison-expected.txt:
        * platform/mac/fast/hidpi/image-set-border-image-dynamic-expected.txt:
        * platform/mac/fast/hidpi/image-set-border-image-simple-expected.txt:
        * platform/mac/fast/writing-mode/border-image-horizontal-bt-expected.txt:
        * platform/mac/fast/writing-mode/border-image-vertical-lr-expected.txt:
        * platform/mac/fast/writing-mode/border-image-vertical-rl-expected.txt:

2015-12-02  Eric Carlson  <eric.carlson@apple.com>

        [MediaStream] Implement MediaStreamTrack.getSettings()
        https://bugs.webkit.org/show_bug.cgi?id=151727

        Reviewed by Jer Noble.

        * fast/mediastream/MediaStream-video-element-expected.txt:
        * fast/mediastream/MediaStream-video-element-track-stop-expected.txt:
        * fast/mediastream/MediaStream-video-element-track-stop.html:
        * fast/mediastream/MediaStream-video-element.html:
        * fast/mediastream/MediaStreamTrack-getSettings-expected.txt: Added.
        * fast/mediastream/MediaStreamTrack-getSettings.html: Added.

2015-12-01  David Hyatt  <hyatt@apple.com>

        Implement the picture element.
        https://bugs.webkit.org/show_bug.cgi?id=116963

        Reviewed by Dean Jackson.

        * fast/picture: Added.
        * fast/picture/image-picture-1x-expected.txt: Added.
        * fast/picture/image-picture-1x.html: Added.
        * fast/picture/resources: Added.
        * fast/picture/resources/blue_rect.jpg: Added.
        * fast/picture/resources/currentSrcHelper.js: Added.
        (fileName):
        (currentSrcFileName):
        (currentSrcFileNameNoParams):
        * fast/picture/resources/image-set-4x.png: Added.

2015-12-02  Jiewen Tan  <jiewen_tan@apple.com>

        Null dereference loading Blink layout test fast/loader/unload-mutation-crash.html
        https://bugs.webkit.org/show_bug.cgi?id=149305
        <rdar://problem/22747892>

        Reviewed by Brent Fulgham.

        This test case is from Blink r180918:
        https://codereview.chromium.org/495743003

        * fast/loader/unload-mutation-crash-expected.txt: Added.
        * fast/loader/unload-mutation-crash.html: Added.

2015-12-02  Joseph Pecoraro  <pecoraro@apple.com>

        Web Inspector: Handle YieldExpressions in the ScriptSyntaxTree
        https://bugs.webkit.org/show_bug.cgi?id=151730

        Reviewed by Brian Burg.

        * inspector/model/parse-script-syntax-tree-expected.txt:
        * inspector/model/parse-script-syntax-tree.html:

2015-12-01  Myles C. Maxfield  <mmaxfield@apple.com>

        [Win] Test gardening after r192895

        Unreviewed.

        * fast/text/emoji-overlap-expected.html:
        * fast/text/emoji-overlap.html:

2015-12-01  Commit Queue  <commit-queue@webkit.org>

        Unreviewed, rolling out r192894 and r192904.
        https://bugs.webkit.org/show_bug.cgi?id=151738

        Crashes sometimes on Windows (Requested by litherum on
        #webkit).

        Reverted changesets:

        "[Win] Web fonts with small caps have excess whitespace with
        the complex text codepath"
        https://bugs.webkit.org/show_bug.cgi?id=151698
        http://trac.webkit.org/changeset/192894

        "Test gardening after r192894"
        http://trac.webkit.org/changeset/192904

2015-12-01  Myles C. Maxfield  <mmaxfield@apple.com>

        [SVG -> OTF Converter] Force UnitsPerEm to 1000
        https://bugs.webkit.org/show_bug.cgi?id=151650

        Reviewed by Antti Koivisto.

        Some tests have quantization differences.

        * fast/ruby/ruby-expansion-cjk-2-expected.html:
        * fast/ruby/ruby-expansion-cjk-3-expected.html:
        * fast/ruby/ruby-expansion-cjk-4-expected.html:
        * fast/ruby/ruby-expansion-cjk-5-expected.html:
        * fast/ruby/ruby-expansion-cjk-expected.html:
        * platform/mac-wk2/svg/W3C-SVG-1.1/fonts-elem-04-b-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/fonts-elem-01-t-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/fonts-elem-02-t-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/fonts-elem-03-b-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/fonts-elem-07-b-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/text-intro-01-t-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/text-intro-02-b-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/text-intro-03-b-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/text-intro-04-t-expected.txt:
        * platform/mac/svg/batik/text/textEffect3-expected.txt:
        * platform/mac/svg/batik/text/textPosition2-expected.txt:
        * platform/mac/svg/wicd/test-rightsizing-b-expected.txt:
        * svg/custom/acid3-test-77-expected.txt:

2015-12-01  Brady Eidson  <beidson@apple.com>

        Add updated test result missing from http://trac.webkit.org/changeset/192924
        https://bugs.webkit.org/show_bug.cgi?id=151725

        * storage/indexeddb/modern/opendatabase-request-event-expected.txt:

2015-12-01  Ryan Haddad  <ryanhaddad@apple.com>

        Marking http/tests/xmlhttprequest/methods-async.html as flaky on Yosemite WK2
        https://bugs.webkit.org/show_bug.cgi?id=151729

        Unreviewed test gardening.

        * platform/mac-wk2/TestExpectations:

2015-12-01  Brady Eidson  <beidson@apple.com>

        Give a more detailed message for TypeErrors that result from EnforceRange.
        https://bugs.webkit.org/show_bug.cgi?id=151725

        Reviewed by Tim Horton.

        * crypto/subtle/aes-cbc-generate-key-expected.txt:
        * js/dom/webidl-type-mapping-expected.txt:
        * storage/indexeddb/intversion-bad-parameters-expected.txt:
        * storage/indexeddb/version-change-event-basic-expected.txt:

2015-12-01  Myles C. Maxfield  <mmaxfield@apple.com>

        Test gardening after r192894

        Unreviewed.

        * fast/text/small-caps-complex-expected.html:
        * fast/text/small-caps-complex.html:

2015-12-01  Myles C. Maxfield  <mmaxfield@apple.com>

        [iOS] Adjacent emoji overlap each other
        https://bugs.webkit.org/show_bug.cgi?id=151690
        <rdar://problem/23430453>

        Reviewed by Simon Fraser.

        * fast/text/emoji-overlap-expected.html: Added.
        * fast/text/emoji-overlap.html: Added.

2015-12-01  Myles C. Maxfield  <mmaxfield@apple.com>

        [Win] Web fonts with small caps have excess whitespace with the complex text codepath
        https://bugs.webkit.org/show_bug.cgi?id=151698

        Reviewed by Darin Adler.

        * fast/text/resources/tinyfont.svg: Added.
        * fast/text/small-caps-complex-expected.html: Added.
        * fast/text/small-caps-complex.html: Added.

2015-12-01  Ryan Haddad  <ryanhaddad@apple.com>

        Marking http/tests/xmlhttprequest/workers/methods.html as flaky on Yosemite WK2
        https://bugs.webkit.org/show_bug.cgi?id=151709

        Unreviewed test gardening.

        * platform/mac-wk2/TestExpectations:

2015-12-01  Brady Eidson  <beidson@apple.com>

        Skip some specific IDB tests in preparation for enabling the entire directory.

        Reviewed in person by Sam Weinig.

        * platform/mac-wk1/TestExpectations:

2015-12-01  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/create-and-remove-object-store.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=151704

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/modern/idbdatabase-deleteobjectstore-failures-expected.txt:

2015-12-01  Brady Eidson  <beidson@apple.com>

        Modern IDB: storage/indexeddb/basics.html fails.
        https://bugs.webkit.org/show_bug.cgi?id=151694

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/modern/deletedatabase-1.html:
        * storage/indexeddb/modern/opendatabase-versions.html:
        * storage/indexeddb/modern/versionchange-event.html:

2015-12-01  Carlos Garcia Campos  <cgarcia@igalia.com>

        Unreviewed, rolling out r192876.

        It broke a lot of JSC and layout tests for GTK and EFL

        Reverted changeset:

        "[ES6] "super" and "this" should be lexically bound inside an
        arrow function and should live in a JSLexicalEnvironment"
        https://bugs.webkit.org/show_bug.cgi?id=149338
        http://trac.webkit.org/changeset/192876

2015-12-01  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        [Streams API] pull function of tee should call readFromReadableStreamReader directly
        https://bugs.webkit.org/show_bug.cgi?id=151497

        Unreviewed.

        Adding non regression test.

        * streams/streams-promises-expected.txt:
        * streams/streams-promises.html:

2015-12-01  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        [Streams API] teeReadableStream should not directly use stream.getReader()
        https://bugs.webkit.org/show_bug.cgi?id=151487

        Reviewed by Darin Adler.

        Adding non-regression test.

        * streams/streams-promises-expected.txt:
        * streams/streams-promises.html:

2015-12-01  Skachkov Oleksandr  <gskachkov@gmail.com>

        [ES6] "super" and "this" should be lexically bound inside an arrow function and should live in a JSLexicalEnvironment
        https://bugs.webkit.org/show_bug.cgi?id=149338

        Reviewed by Saam Barati.

        * js/arrowfunction-supercall-expected.txt: Added.
        * js/arrowfunction-supercall.html: Added.
        * js/arrowfunction-tdz-expected.txt: Added new expectation.
        * js/script-tests/arrowfunction-supercall.js: Added.
        * js/script-tests/arrowfunction-tdz.js: Added new cases.

2015-12-01  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        [Streams API] streams should not directly use Number and related methods
        https://bugs.webkit.org/show_bug.cgi?id=151499

        Reviewed by Darin Adler.

        Added a non-regression test.

        * streams/streams-promises-expected.txt:
        * streams/streams-promises.html:

2015-12-01  Youenn Fablet  <youenn.fablet@crf.canon.fr>

        [Streams API] Remove use of @catch for exposed promises
        https://bugs.webkit.org/show_bug.cgi?id=151625

        Reviewed by Darin Adler.

        * streams/streams-promises.html: beefing up the catch test by also overwritting Promise.prototype.then.

2015-11-30  Brady Eidson  <beidson@apple.com>

        Modern IDB: Unskip "storage/indexeddb/mozilla" instead of each individual test inside of it.
        https://bugs.webkit.org/show_bug.cgi?id=151693

        Reviewed by Geoffrey Garen.

        * platform/mac-wk1/TestExpectations:

2015-11-30  Jiewen Tan  <jiewen_tan@apple.com>

        Amazon.com Additional Information links aren't clickable
        https://bugs.webkit.org/show_bug.cgi?id=151401
        <rdar://problem/23454261>

        Reviewed by Darin Adler.

        * fast/block/float/hit-test-on-overlapping-floats-expected.txt: Added.
        * fast/block/float/hit-test-on-overlapping-floats.html: Added.

2015-11-30  Brady Eidson  <beidson@apple.com>

        Modern IDB: Iterating index cursors to a specific key is busted.
        https://bugs.webkit.org/show_bug.cgi?id=151684

        Reviewed by Darin Adler.

        * platform/mac-wk1/TestExpectations:

2015-11-30  Brady Eidson  <beidson@apple.com>

        Modern IDB: ObjectStore cursors should not be able to iterate out of their range.
        https://bugs.webkit.org/show_bug.cgi?id=151683

        Reviewed by Darin Adler.

        * platform/mac-wk1/TestExpectations:

2015-11-30  Brady Eidson  <beidson@apple.com>

        Modern IDB: "prevunique" cursors should point at the lowest primary key that matches, not the highest.
        https://bugs.webkit.org/show_bug.cgi?id=151675.

        Reviewed by Darin Adler.

        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/modern/index-cursor-1-expected.txt:
        * storage/indexeddb/modern/index-cursor-2-expected.txt:
        * storage/indexeddb/modern/index-cursor-3-expected.txt:

2015-11-30  Jiewen Tan  <jiewen_tan@apple.com>

        Null dereference loading Blink layout test http/tests/misc/detach-during-notifyDone.html
        https://bugs.webkit.org/show_bug.cgi?id=149309
        <rdar://problem/22748363>

        Reviewed by Brent Fulgham.

        The test case is from Blink r175601:
        https://codereview.chromium.org/317513002
        The test case will generate a set of weird ordering events that affects the documentLoader:
        1. The subframe finishes loading, and since the frame’s testRunner is not set to wait until
        done, WebKitTestRunner stops the load (by calling WKBundlePageStopLoading()).
        2. This causes the in-progress XHR to be aborted, which causes its readyState to become DONE
        (this bug doesn’t always reproduce because sometimes the XHR has already finished before the
        frame finishes loading).
        3. The onreadystatechange callback is executed, which sets innerHTML on the parent frame.
        4. Setting innerHTML disconnects the subframe, nulling out its DocumentLoader.
        5. We return to WebFrameLoaderClient::dispatchDidFinishLoad() from step #1, but now the
        FrameLoader’s DocumentLoader is null. And WebKit crashes here.

        Note that steps 2-4 happen synchronously inside WebFrameLoaderClient::dispatchDidFinishLoad().

        * http/tests/misc/detach-during-notifyDone-expected.txt: Added.
        * http/tests/misc/detach-during-notifyDone.html: Added.
        * http/tests/misc/resources/detached-frame.html: Added.

2015-11-30  Commit Queue  <commit-queue@webkit.org>

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

        This change broke existing layout tests on Windows (Requested
        by ryanhaddad on #webkit).

        Reverted changeset:

        "Unify font-variant-* with font-variant shorthand"
        https://bugs.webkit.org/show_bug.cgi?id=149773
        http://trac.webkit.org/changeset/192819

2015-11-30  Brady Eidson  <beidson@apple.com>

        Modern IDB: Set the correct source on the IDBRequest for cursor updates
        https://bugs.webkit.org/show_bug.cgi?id=151665

        Reviewed by Andy Estes.

        * platform/mac-wk1/TestExpectations:

2015-11-30  Ryan Haddad  <ryanhaddad@apple.com>

        Marking fast/forms/state-restore-per-form.html as a flaky timeout on mac-wk2
        https://bugs.webkit.org/show_bug.cgi?id=150542

        Unreviewed test gardening.

        * platform/mac-wk2/TestExpectations:

2015-11-30  Brady Eidson  <beidson@apple.com>

        Modern IDB: Correct handling of cursors finishing iteration.
        https://bugs.webkit.org/show_bug.cgi?id=151664

        Reviewed by Andy Estes.

        * platform/mac-wk1/TestExpectations:

2015-11-30  Myles C. Maxfield  <mmaxfield@apple.com>

        Unify font-variant-* with font-variant shorthand
        https://bugs.webkit.org/show_bug.cgi?id=149773

        Reviewed by Darin Adler.

        Update tests. Also temporarily skip existing font-features tests until
        https://bugs.webkit.org/show_bug.cgi?id=149774 is fixed.

        * css3/font-variant-parsing-expected.txt:
        * css3/font-variant-parsing.html:
        * fast/css/font-property-priority-expected.txt:
        * fast/css/font-shorthand-expected.txt:
        * fast/css/parsing-font-variant-ligatures-expected.txt:
        * fast/css/parsing-font-variant-ligatures.html:
        * fast/inspector-support/style-expected.txt:
        * fast/text/font-variant-shorthand-expected.txt: Added.
        * fast/text/font-variant-shorthand.html: Added.
        * platform/mac/TestExpectations:
        * platform/mac/fast/writing-mode/broken-ideograph-small-caps-expected.txt:

2015-11-30  Brady Eidson  <beidson@apple.com>

        Modern IDB: After versionchange transactions abort, fire onerror on the original IDBOpenDBRequest.
        https://bugs.webkit.org/show_bug.cgi?id=151648

        Reviewed by Andy Estes.

        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/modern/abort-requests-cancelled-expected.txt:
        * storage/indexeddb/modern/abort-requests-cancelled.html:
        * storage/indexeddb/modern/aborted-put-expected.txt:
        * storage/indexeddb/modern/aborted-put.html:
        * storage/indexeddb/modern/createobjectstore-basic-expected.txt:
        * storage/indexeddb/modern/createobjectstore-basic.html:
        * storage/indexeddb/modern/deleteindex-2-expected.txt:
        * storage/indexeddb/modern/deleteindex-2.html:
        * storage/indexeddb/modern/deleteobjectstore-1-expected.txt:
        * storage/indexeddb/modern/deleteobjectstore-1.html:
        * storage/indexeddb/modern/idbdatabase-transaction-failures-expected.txt:
        * storage/indexeddb/modern/versionchange-abort-then-reopen-expected.txt:
        * storage/indexeddb/modern/versionchange-abort-then-reopen.html:

2015-11-30  Chris Dumez  <cdumez@apple.com>

        location.origin is undefined in a web worker
        https://bugs.webkit.org/show_bug.cgi?id=151614

        Reviewed by Darin Adler.

        Update existing layout test to confirm the existence of location.origin when in a
        WorkerGlobalScope.

        * fast/workers/resources/worker-location.js:
        * fast/workers/worker-location-expected.txt:

2015-11-30  Brady Eidson  <beidson@apple.com>

        Modern IDB: Support updating cursor values when the object store uses inline keys.
        https://bugs.webkit.org/show_bug.cgi?id=151647

        Reviewed by Andy Estes.

        * platform/mac-wk1/TestExpectations:

2015-11-30  Brady Eidson  <beidson@apple.com>

        Modern IDB: openCursor() fix resulting in at least 4 more passing tests.
        https://bugs.webkit.org/show_bug.cgi?id=151630

        Reviewed by Andy Estes.

        * platform/mac-wk1/TestExpectations:
        * storage/indexeddb/modern/cursor-2-expected.txt:
        * storage/indexeddb/modern/cursor-2.html:
        * storage/indexeddb/modern/cursor-3-expected.txt:
        * storage/indexeddb/modern/cursor-3.html:
        * storage/indexeddb/modern/cursor-4-expected.txt:
        * storage/indexeddb/modern/cursor-4.html:
        * storage/indexeddb/modern/deleteindex-1-expected.txt:
        * storage/indexeddb/modern/deleteindex-1.html:
        * storage/indexeddb/modern/deleteindex-2-expected.txt:
        * storage/indexeddb/modern/deleteindex-2.html:
        * storage/indexeddb/modern/index-4-expected.txt:
        * storage/indexeddb/modern/index-4.html:
        * storage/indexeddb/modern/index-cursor-1-expected.txt:
        * storage/indexeddb/modern/index-cursor-1.html:
        * storage/indexeddb/modern/index-cursor-2-expected.txt:
        * storage/indexeddb/modern/index-cursor-2.html:
        * storage/indexeddb/modern/index-cursor-3-expected.txt:
        * storage/indexeddb/modern/index-cursor-3.html:

2015-11-30  Ryan Haddad  <ryanhaddad@apple.com>

        Marking http/tests/cache/disk-cache/disk-cache-request-max-stale.html as flaky on Yosemite WK2
        https://bugs.webkit.org/show_bug.cgi?id=143159

        Unreviewed test gardening.

        * platform/mac-wk2/TestExpectations:

2015-11-30  Brady Eidson  <beidson@apple.com>

        Modern IDB: Support keyPath injection into object store records.
        https://bugs.webkit.org/show_bug.cgi?id=151640

        Reviewed by Andy Estes.

        * platform/mac-wk1/TestExpectations:

2015-11-29  Antoine Quint  <graouts@apple.com>

        Browser does not fall back to SVG attribute value when CSS style value is invalid or not supported
        https://bugs.webkit.org/show_bug.cgi?id=147932

        Reviewed by Dean Jackson.

        Testing that we correctly fall back to the presentation attribute for SVGPaint and SVGColor values
        specified with an invalid keyword in a `style` attribute. We also update the expected output for
        svg/css/svg-attribute-parser-mode.html which is now in line with values returned by Firefox and
        Chrome, where we correctly use the default value instead of null objects, which was definitely
        an error.

        * svg/css/invalid-color-cascade-expected.svg: Added.
        * svg/css/invalid-color-cascade.svg: Added.
        * svg/css/invalid-paint-cascade-expected.svg: Added.
        * svg/css/invalid-paint-cascade.svg: Added.
        * svg/css/script-tests/svg-attribute-parser-mode.js:
        * svg/css/svg-attribute-parser-mode-expected.txt:

2015-11-18  Andy Estes  <aestes@apple.com>

        [Content Filtering] Crash in DocumentLoader::notifyFinished() when allowing a media document to load
        https://bugs.webkit.org/show_bug.cgi?id=151433
        rdar://problem/23506594

        Reviewed by Alexey Proskuryakov.

        * contentfiltering/allow-media-document-expected.txt: Added.
        * contentfiltering/allow-media-document.html: Added.
        * contentfiltering/resources/test.mp4: Added.

2015-11-25  Pranjal Jumde  <pjumde@apple.com>

        Checks for buffer-overflows when reading characters from textRun
        https://bugs.webkit.org/show_bug.cgi?id=151055
        <rdar://problem/23251789>

        Reviewed by Myles C. Maxfield.

        * dom/html/level1/core/151055_asan.html:
        * dom/html/level1/core/151055_asan-expected.txt:

2015-11-24  Commit Queue  <commit-queue@webkit.org>

        Unreviewed, rolling out r192536, r192722, and r192743.
        https://bugs.webkit.org/show_bug.cgi?id=151593

        Still causing trouble. (Requested by kling on #webkit).

        Reverted changesets:

        "[JSC] JSPropertyNameEnumerator could be destructorless."
        https://bugs.webkit.org/show_bug.cgi?id=151242
        http://trac.webkit.org/changeset/192536

        "REGRESSION(r192536): Null pointer dereference in
        JSPropertyNameEnumerator::visitChildren()."
        https://bugs.webkit.org/show_bug.cgi?id=151495
        http://trac.webkit.org/changeset/192722

        "REGRESSION(r192536): Null pointer dereference in
        JSPropertyNameEnumerator::visitChildren()."
        https://bugs.webkit.org/show_bug.cgi?id=151495
        http://trac.webkit.org/changeset/192743

2015-11-24  Xabier Rodriguez Calvar  <calvaris@igalia.com>

        [Streams API] Implement pipeTo method in readable Stream
        https://bugs.webkit.org/show_bug.cgi?id=151588

        Reviewed by Darin Adler.

        Test "Piping to a writable stream that does not consume the writes fast enough exerts backpressure on the
        source" was moved to its own file because it causes timing issues.

        * streams/reference-implementation/pipe-to.html: Moved "Piping to a writable stream that does not consume the
        writes fast enough exerts backpressure on the source" test to its own file.
        * streams/pipe-to.html: Added with "Piping to a writable stream that does not consume the writes fast enough
        exerts backpressure on the source" test.
        * streams/reference-implementation/brand-checks.html: Fixed issue with the creation of a ReadableStreamReader.
        * streams/pipe-to-expected.txt:
        * streams/reference-implementation/brand-checks-expected.txt:
        * streams/reference-implementation/pipe-through-expected.txt:
        * streams/reference-implementation/pipe-to-expected.txt:
        * streams/reference-implementation/pipe-to-options-expected.txt:
        * streams/reference-implementation/readable-stream-templated-expected.txt: Expectations.
        * platform/mac/TestExpectations:
        * platform/win/TestExpectations: Flagged pipe-to test because of webkit.org/b/147933.

2015-11-24  Antti Koivisto  <antti@apple.com>

        REGRESSION (r190983): Non-element, non-text nodes should not be distributed to slots
        https://bugs.webkit.org/show_bug.cgi?id=151566
        rdar://problem/23430177

        Reviewed by Zalan Bujtas.

        * fast/html/details-comment-crash-expected.html: Added.
        * fast/html/details-comment-crash.html: Added.

2015-11-23  Brady Eidson  <beidson@apple.com>

        Modern IDB: Unskip all indexeddb/mozilla tests that pass.
        https://bugs.webkit.org/show_bug.cgi?id=151568

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2015-11-23  Brady Eidson  <beidson@apple.com>

        Modern IDB: When a transaction is aborted, call onerror handlers for all in-progress requests.
        https://bugs.webkit.org/show_bug.cgi?id=151550

        Reviewed by Alex Christensen.

        * storage/indexeddb/modern/abort-requests-cancelled-expected.txt: Added.
        * storage/indexeddb/modern/abort-requests-cancelled.html: Added.
        * storage/indexeddb/modern/idbtransaction-objectstore-failures-expected.txt:
        * storage/indexeddb/modern/idbtransaction-objectstore-failures.html:
        * storage/indexeddb/modern/index-5-expected.txt:
        * storage/indexeddb/modern/index-5.html:

2015-11-23  Brady Eidson  <beidson@apple.com>

        Modern IDB: Unskip storage/indexeddb/mozilla/global-data.html.
        https://bugs.webkit.org/show_bug.cgi?id=151557

        Reviewed by Alex Christensen.

        * platform/mac-wk1/TestExpectations:

2015-11-17  Sergio Villar Senin  <svillar@igalia.com>

        ASSERTION FAILED: freeSpace >= 0 in WebCore::RenderGrid::computeTrackSizesForDirection
        https://bugs.webkit.org/show_bug.cgi?id=151254

        Reviewed by Darin Adler.

        * fast/css-grid-layout/grid-quirks-mode-huge-margin-crash-expected.txt: Added.
        * fast/css-grid-layout/grid-quirks-mode-huge-margin-crash.html: Added.

2015-11-22  Myles C. Maxfield  <mmaxfield@apple.com>

        Add a test to make sure that font-variant: inherit works correctly.

        Unreviewed.

        * fast/text/font-variant-inherit-expected.html: Added.
        * fast/text/font-variant-inherit.html: Added.

2015-11-22  Myles C. Maxfield  <mmaxfield@apple.com>

        Font selection should not consult font-variant property
        https://bugs.webkit.org/show_bug.cgi?id=151537

        Reviewed by Simon Fraser.

        * fast/text/font-selection-font-variant-expected.html: Added.
        * fast/text/font-selection-font-variant.html: Added.

== Rolled over to ChangeLog-2015-11-21 ==
