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

editing/inserting/insert-paragraph-selection-outside-contenteditable.html [ Failure ]
fast/events/offsetX-offsetY.html [ Failure ]
fast/hidpi/image-srcset-invalid-descriptor.html [ Failure ]
http/tests/cookies/js-get-and-set-http-only-cookie.html [ Failure ]
http/tests/security/cross-origin-worker-indexeddb-allowed.html [ Failure ]
http/tests/security/cross-origin-worker-indexeddb.html [ Failure ]

fast/events/scroll-to-anchor-vertical-lr-writing-mode.html [ ImageOnlyFailure ]
fast/events/scroll-to-anchor-vertical-writing-mode.html [ ImageOnlyFailure ]
fast/sub-pixel/sub-pixel-composited-layers.html [ ImageOnlyFailure ]

webkit.org/b/152439 compositing/overflow/dynamic-composited-scrolling-status.html [ Pass Failure ]

webkit.org/b/173178 [ Release ] svg/animations/svglength-element-removed-crash.svg [ Skip ]

webkit.org/b/174100 webgl/1.0.2/conformance/glsl/misc/shader-with-non-reserved-words.html [ Skip ]

webkit.org/b/173010 js/slow-stress/Int32Array-alloc-huge.html [ Pass Timeout ]

webkit.org/b/174183 animations/resume-after-page-cache.html [ Pass Failure ]
webkit.org/b/174183 legacy-animation-engine/animations/resume-after-page-cache.html [ Pass Failure ]

webkit.org/b/173861 http/tests/webrtc/filtering-ice-candidate-same-origin-frame2.html [ Skip ]
webkit.org/b/173861 http/tests/webrtc/filtering-ice-candidate-same-origin-frame.html [ Skip ]
webkit.org/b/173861 http/tests/webrtc/filtering-ice-candidate-cross-origin-frame.html [ Skip ]

webkit.org/b/172384 fast/hidpi/hidpi-long-page-with-inset-element.html [ Pass ImageOnlyFailure ]

webkit.org/b/175865 quicklook/multi-sheet-numbers-09.html [ Pass Failure ]

webkit.org/b/187699 [ Debug ] fast/forms/submit-change-fragment.html [ Pass Timeout ]

webkit.org/b/194368 http/tests/workers/service/basic-register-exceptions.html [ Pass Failure ]

webkit.org/b/196218 performance-api/performance-observer-periodic.html [ Pass Failure ]

webkit.org/b/196228 http/tests/cache-storage/cache-clearing-origin.https.html [ Pass Failure ]
webkit.org/b/196228 http/tests/cache-storage/cache-records-persistency.https.html [ Pass Failure ]

webkit.org/b/196233 fast/viewport/ios/initial-scale-after-changing-view-scale.html [ Pass Timeout ]

webkit.org/b/196269 http/tests/resourceLoadStatistics/capped-lifetime-for-cookie-set-in-js-with-link-fragment-from-prevalent-resource.html [ Pass Timeout ]
webkit.org/b/196269 http/tests/resourceLoadStatistics/capped-lifetime-for-cookie-set-in-js-with-link-query-and-fragment-from-prevalent-resource.html [ Pass Timeout ]
webkit.org/b/196269 http/tests/resourceLoadStatistics/capped-lifetime-for-cookie-set-in-js-with-link-query-from-prevalent-resource.html [ Pass Timeout ]
webkit.org/b/196269 http/tests/resourceLoadStatistics/capped-lifetime-for-cookie-set-in-js-without-link-decoration-from-prevalent-resource.html [ Pass Timeout ]

webkit.org/b/196298 fast/viewport/ios/use-minimum-device-width-for-page-without-viewport-meta.html [ Pass Failure ]

webkit.org/b/162975 http/tests/cache/disk-cache/memory-cache-revalidation-updates-disk-cache.html [ Pass Failure ]

webkit.org/b/196112 imported/w3c/web-platform-tests/mathml/relations/css-styling/mathvariant-bold.html [ Pass ImageOnlyFailure ]
webkit.org/b/196112 imported/w3c/web-platform-tests/mathml/relations/css-styling/mathvariant-double-struck.html [ Pass ImageOnlyFailure ]
webkit.org/b/196112 imported/w3c/web-platform-tests/mathml/relations/css-styling/mathvariant-italic.html [ Pass ImageOnlyFailure ]

http/wpt/cache-storage/quota-third-party.https.html [ Slow ]
http/wpt/fetch/response-opaque-clone.html [ Slow ]
http/wpt/cache-storage/cache-put-keys.https.any.html [ Slow ]
http/wpt/cache-storage/cache-quota-after-restart.any.html [ Slow ]
http/wpt/cache-storage/cache-quota.any.html [ Slow ]
http/wpt/cache-storage/cache-put-keys.https.any.worker.html [ Slow ]
http/wpt/cache-storage/a-cache-open.https.html [ Slow ]
http/wpt/cache-storage/cache-quota-add.any.html [ Slow ]

webkit.org/b/196403 imported/w3c/web-platform-tests/mediacapture-record/MediaRecorder-stop.html [ Pass Failure ]

webkit.org/b/195341 fast/viewport/ios/constant-width-viewport-after-changing-view-scale.html [ Pass Failure ]

webkit.org/b/186581 [ Debug ] fast/parser/xml-error-adopted.xml [ Pass Timeout ]

webkit.org/b/196944 imported/w3c/web-platform-tests/hr-time/test_cross_frame_start.html [ Pass Failure ]

webkit.org/b/197207 http/wpt/resource-timing/rt-resources-per-frame.html [ Pass Failure ]

webkit.org/b/182849 imported/w3c/web-platform-tests/xhr/event-upload-progress-crossorigin.htm [ Pass Failure ]

imported/w3c/web-platform-tests/IndexedDB/keypath-special-identifiers.htm [ Slow ]

webkit.org/b/172001 scrollingcoordinator/ios/sync-layer-positions-after-scroll.html [ Pass Failure ]

# NearField.framework doesn't present in the simulator, and therefore skip all WebAuthn NFC tests
http/wpt/webauthn/ctap-nfc-failure.https.html [ Skip ]
http/wpt/webauthn/public-key-credential-create-failure-nfc.https.html [ Skip ]
http/wpt/webauthn/public-key-credential-create-success-nfc.https.html [ Skip ]
http/wpt/webauthn/public-key-credential-get-failure-nfc.https.html [ Skip ]
http/wpt/webauthn/public-key-credential-get-success-nfc.https.html [ Skip ]

webkit.org/b/203157 scrollingcoordinator/ios/non-stable-viewport-scroll.html [ Pass Failure ]

