# These are the layout test expectations for Apple's iOS simulator port of WebKit (both WebKit1 and WebKit2).
#
# See http://trac.webkit.org/wiki/TestExpectations for more information on this file.
#

accessibility/img-no-alt-not-ignored-with-title.html [ Pass ]
accessibility/insert-newline.html [ Pass ]
accessibility/url-test.html [ Pass ]
accessibility/keyevents-posted-for-dismiss-action.html [ Pass ]
accessibility/embedded-image-description.html [ Pass ]
fast/multicol/flexbox-rows.html [ Skip ]
workers/wasm-mem-post-message.html [ Failure ]

fast/forms/input-text-word-wrap.html [ Skip ]
fast/forms/search-vertical-alignment.html [ Skip ]
fast/forms/searchfield-heights.html [ Skip ]
fast/forms/visual-hebrew-text-field.html [ Skip ]

# The MediaSource API is unsupported on iOS simulator.
fast/media/ios/ipad/enable-MediaSource-API-in-modern-compatibility-mode.html [ Skip ]

# -webkit-flex off-by-one px
webkit.org/b/126898 css3/flexbox/image-percent-max-height.html [ ImageOnlyFailure ]

fast/events/document-elementFromPoint.html [ Failure ]

media/track/track-in-band-legacy-api.html [ Failure ]
media/track/video-track-alternate-groups.html [ Failure ]

svg/filters/filter-hidden-content.svg [ Failure ]

transforms/hittest-translated-content-off-to-infinity-and-back.html [ Pass ImageOnlyFailure ]

# This test relies on Arial being used to draw Arabic. However, on iOS,
# we explicitly disallow this because this font is too slow.
fast/text/initial-advance-in-intermediate-run-complex.html [ ImageOnlyFailure ]

# These tests seem to fail due pixel rounding errors in the absolute positioned elements used as reference.
webkit.org/b/170176 fast/inline-block/baseline-vertical-01.html [ ImageOnlyFailure ]
webkit.org/b/170176 fast/inline-block/baseline-vertical-02.html [ ImageOnlyFailure ]
webkit.org/b/170176 fast/inline-block/baseline-vertical-03.html [ ImageOnlyFailure ]
webkit.org/b/170176 fast/inline-block/baseline-vertical-04.html [ ImageOnlyFailure ]

# Imported w3c tests require fuzzy image comparison
imported/w3c/web-platform-tests/density-size-correction/density-corrected-various-elements.html [ ImageOnlyFailure ]

# This test requires Skia, which isn't available on iOS.
webkit.org/b/174079 fast/text/variations/skia-postscript-name.html [ ImageOnlyFailure ]

imported/w3c/web-platform-tests/fetch/api/abort/general.any.worker.html [ Pass Failure ]
imported/w3c/web-platform-tests/html/browsers/browsing-the-web/history-traversal/persisted-user-state-restoration/scroll-restoration-fragment-scrolling-cross-origin.html [ Failure ]
imported/w3c/web-platform-tests/webrtc/RTCPeerConnection-setLocalDescription-offer.html [ Failure ]

# Simulator doesn't support WebAssembly.
imported/w3c/web-platform-tests/wasm/wasm_stream_instantiate_test.html  [ Skip ]
imported/w3c/web-platform-tests/wasm/wasm_stream_compile_test.html  [ Skip ]

# display-p3 canvas and ImageData are not working in the simulator.
fast/canvas/canvas-color-space-display-p3-ImageData.html [ Failure ]
fast/canvas/canvas-color-space-display-p3.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-drawImage.https.html [ Failure ]
imported/w3c/web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-drawImage-ImageBitmap-Blob.html [ Failure ]
imported/w3c/web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-drawImage-ImageBitmap-ImageBitmap.html [ Failure ]
imported/w3c/web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-drawImage-ImageBitmap-ImageData.html [ Failure ]
imported/w3c/web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-drawImage-ImageBitmap-canvas.html [ Failure ]
imported/w3c/web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-drawImage-ImageBitmap-cloned.html [ Failure ]
imported/w3c/web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-drawImage-ImageBitmap-image.html [ Failure ]
imported/w3c/web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-drawImage-ImageBitmap-video.html [ Failure ]
imported/w3c/web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-drawImage-video.html [ Failure ]
imported/w3c/web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-pattern-canvas.html [ Failure ]
imported/w3c/web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-pattern-image.html [ Failure ]
imported/w3c/web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-settings.html [ Failure ]
imported/w3c/web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-draw-high-bit-depth-images.html [ Failure ]
imported/w3c/web-platform-tests/html/canvas/element/wide-gamut-canvas/2d.color.space.p3.fillText.html [ Failure ]
imported/w3c/web-platform-tests/html/canvas/element/wide-gamut-canvas/2d.color.space.p3.fillText.shadow.html [ Failure ]
imported/w3c/web-platform-tests/html/canvas/element/wide-gamut-canvas/2d.color.space.p3.strokeText.html [ Failure ]
imported/w3c/web-platform-tests/html/canvas/element/wide-gamut-canvas/2d.color.space.p3.to.p3.html [ Failure ]
imported/w3c/web-platform-tests/html/canvas/element/wide-gamut-canvas/2d.color.space.p3.to.srgb.html [ Failure ]
imported/w3c/web-platform-tests/html/canvas/element/wide-gamut-canvas/2d.color.space.p3.toBlob.p3.canvas.html [ Failure ]
imported/w3c/web-platform-tests/html/canvas/element/wide-gamut-canvas/2d.color.space.p3.toBlob.with.putImageData.html [ Failure ]
imported/w3c/web-platform-tests/html/canvas/element/wide-gamut-canvas/2d.color.space.p3.toDataURL.p3.canvas.html [ Failure ]
imported/w3c/web-platform-tests/html/canvas/element/wide-gamut-canvas/2d.color.space.p3.toDataURL.jpeg.p3.canvas.html [ Failure ]
imported/w3c/web-platform-tests/html/canvas/element/wide-gamut-canvas/2d.color.space.p3.toDataURL.with.putImageData.html [ Failure ]
storage/indexeddb/structured-clone-image-data-display-p3.html [ Failure ]

# These fail due to color space issues in the specific iPad simulator used <rdar://84527732>
webkit.org/b/232090 fast/canvas/canvas-createPattern-video-loading.html [ Failure ]
webkit.org/b/232090 imported/w3c/web-platform-tests/html/canvas/element/manual/imagebitmap/canvas-createImageBitmap-video-resize.html [ Failure ]
webkit.org/b/292090 fast/canvas/canvas-createPattern-video-modify.html [ Failure ]
webkit.org/b/292090 imported/w3c/web-platform-tests/html/canvas/element/manual/imagebitmap/createImageBitmap-drawImage.html [ Failure ]
webkit.org/b/292090 imported/w3c/web-platform-tests/html/canvas/element/manual/imagebitmap/createImageBitmap-flipY.html [ Failure ]
webkit.org/b/292090 media/video-canvas-createPattern.html [ Failure ]

# Imported css-text test suite from WPT
webkit.org/b/183258 imported/w3c/web-platform-tests/css/css-text/white-space/textarea-pre-wrap-001.html [ ImageOnlyFailure ]
webkit.org/b/183258 imported/w3c/web-platform-tests/css/css-text/white-space/textarea-pre-wrap-002.html [ ImageOnlyFailure ]
webkit.org/b/183258 imported/w3c/web-platform-tests/css/css-text/white-space/textarea-pre-wrap-003.html [ ImageOnlyFailure ]
webkit.org/b/183258 imported/w3c/web-platform-tests/css/css-text/white-space/textarea-pre-wrap-004.html [ ImageOnlyFailure ]
webkit.org/b/183258 imported/w3c/web-platform-tests/css/css-text/white-space/textarea-pre-wrap-005.html [ ImageOnlyFailure ]
webkit.org/b/183258 imported/w3c/web-platform-tests/css/css-text/white-space/textarea-pre-wrap-006.html [ ImageOnlyFailure ]
webkit.org/b/183258 imported/w3c/web-platform-tests/css/css-text/white-space/textarea-pre-wrap-007.html [ ImageOnlyFailure ]
webkit.org/b/183258 imported/w3c/web-platform-tests/css/css-text/white-space/textarea-pre-wrap-011.html [ ImageOnlyFailure ]
webkit.org/b/183258 imported/w3c/web-platform-tests/css/css-text/white-space/textarea-pre-wrap-014.html [ ImageOnlyFailure ]
webkit.org/b/183258 imported/w3c/web-platform-tests/css/css-text/word-break/word-break-normal-ko-000.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/css/css-ui/outline-020.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/css/selectors/selectors-empty-001.xml [ ImageOnlyFailure ]

webkit.org/b/195275 imported/w3c/web-platform-tests/css/css-text/white-space/textarea-break-spaces-002.html [ ImageOnlyFailure ]

# Baseline Alignment tests affected by 1px diff failures only on Mac and iOS platforms
webkit.org/b/170293 fast/css-grid-layout/grid-align-baseline-vertical.html [ Failure ]
webkit.org/b/170293 fast/css-grid-layout/grid-self-baseline-two-dimensional.html [ Failure ]
webkit.org/b/170293 imported/w3c/web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-003.html [ ImageOnlyFailure ]
webkit.org/b/170293 imported/w3c/web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-004.html [ ImageOnlyFailure ]
webkit.org/b/170293 imported/w3c/web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-rl-005.html [ ImageOnlyFailure ]
webkit.org/b/170293 imported/w3c/web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-vertical-rl-004.html [ ImageOnlyFailure ]
webkit.org/b/170293 imported/w3c/web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-006.html [ ImageOnlyFailure ]
webkit.org/b/170293 imported/w3c/web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-007.html [ ImageOnlyFailure ]


# A sub-test in this test is extremely flaky and fails most of the time, messing up partial-failure expectations
webkit.org/b/189686 webgl/2.0.0/conformance2/renderbuffers/multisampled-renderbuffer-initialization.html [ Skip ]
webkit.org/b/189686 webgl/2.0.0/conformance/reading/read-pixels-test.html [ Slow ]
# Crashes
webkit.org/b/189686 webgl/2.0.0/conformance2/buffers/one-large-uniform-buffer.html [ Skip ]

# This test takes a long time to execute in the simulator, since it creates a huge (empty) buffer
# to draw lots of nothing.
webkit.org/b/209416 fast/canvas/webgl/out-of-bounds-simulated-vertexAttrib0-drawArrays.html [ Pass Timeout ]

# Test is slow.
webkit.org/b/226813 webgl/draw-webgl-to-context2d-memory-test.html [ Skip ]

imported/w3c/web-platform-tests/css/css-lists/content-property/marker-text-matches-georgian.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/css/css-lists/content-property/marker-text-matches-lower-greek.html [ Pass ]
imported/w3c/web-platform-tests/css/css-lists/list-and-writing-mode-001.html [ Failure ]

webkit.org/b/195466 imported/w3c/web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-width-1000px.html [ Pass Failure ]
webkit.org/b/195466 imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/ready-states/autoplay.html [ Pass Failure ]
webkit.org/b/195466 imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/error-codes/error.html [ Pass Failure ]

imported/w3c/web-platform-tests/wasm [ Skip ]

webkit.org/b/201509 imported/w3c/web-platform-tests/html/semantics/embedded-content/the-video-element/video_timeupdate_on_seek.html [ Failure ]

# ANGLE Metal backend failing tests with shared texture memory on the simulator
webkit.org/b/222685 webgl/1.0.3/conformance/textures/tex-image-and-sub-image-2d-with-array-buffer-view.html [ Pass Failure ]
webkit.org/b/222685 webgl/1.0.3/conformance/textures/texture-mips.html [ Pass Failure ]

# webkit.org/b/223724 These two tests are flakey timeouts on iOS Debug:
http/tests/security/webaudio-render-remote-audio-allowed-crossorigin.html [ Pass Timeout ]
http/tests/security/webaudio-render-remote-audio-allowed-crossorigin-redirect.html [ Pass Timeout ]

webkit.org/b/223949 crypto/crypto-random-values-oom.html [ Pass Timeout ]
