# This file should contain entries for expectations that are specific
# to the Apple Mac port running the WebKit2 variant (--webkit-test-runner)

#//////////////////////////////////////////////////////////////////////////////////////////
# Platform-specific directories. Skipped globally, then re-enabled here.
#//////////////////////////////////////////////////////////////////////////////////////////

tiled-drawing [ Pass ]

#//////////////////////////////////////////////////////////////////////////////////////////
# End platform-specific directories.
#//////////////////////////////////////////////////////////////////////////////////////////

###### This file has seven sections. When adding new tests, make sure to
###### add to the correct section:

### (1) Classified failures with bug reports
### (2) Classified failures without bug reports (yet)
### (3) Unclassified failures
### (4) Features that are not supported in WebKit2 and likely never will be
### (5) IndexedDB related failures
### (6) Features that are not supported in WebKit2, on Mavericks
### (7) New WebKit2-only failures in Yosemite

########################################
### START OF (1) Classified failures with bug reports

# WebKitTestRunner needs an implementation of eventSender
# <https://bugs.webkit.org/show_bug.cgi?id=42194>
editing/pasteboard/4947130.html
editing/pasteboard/cleanup-on-move.html
editing/pasteboard/copy-standalone-image-crash.html
editing/pasteboard/drag-and-drop-image-contenteditable.html
editing/pasteboard/drag-and-drop-inputimage-contenteditable.html
editing/pasteboard/drag-and-drop-objectimage-contenteditable.html
editing/pasteboard/drag-and-drop-attachment-contenteditable.html
editing/pasteboard/drag-drop-dead-frame.html
editing/pasteboard/drag-drop-input-textarea.html
editing/pasteboard/drag-drop-list.html
editing/pasteboard/drag-drop-modifies-page.html
editing/pasteboard/drag-drop-url-text.html
editing/pasteboard/drag-image-in-about-blank-frame.html
editing/pasteboard/drag-image-to-contenteditable-in-iframe.html
editing/pasteboard/drag-list-item.html
editing/pasteboard/drag-selected-image-to-contenteditable.html
editing/pasteboard/drop-file-svg.html
editing/pasteboard/drop-inputtext-acquires-style.html
editing/pasteboard/drop-link.html
editing/pasteboard/drop-text-events.html
editing/pasteboard/drop-text-without-selection.html
editing/pasteboard/emacs-cntl-y-001.html
editing/pasteboard/emacs-ctrl-k-y-001.html
editing/pasteboard/files-during-page-drags.html
editing/pasteboard/get-data-text-plain-drop.html
editing/pasteboard/smart-drag-drop.html
editing/pasteboard/smart-paste-004.html
editing/pasteboard/subframe-dragndrop-1.html
editing/selection/4895428-1.html
editing/selection/4895428-4.html
editing/selection/5354455-1.html
editing/selection/5354455-2.html
editing/selection/caret-after-keypress.html
editing/selection/contains-boundaries.html
editing/selection/doubleclick-beside-cr-span.html
editing/selection/doubleclick-whitespace.html
editing/selection/drag-to-contenteditable-iframe.html
editing/selection/mixed-editability-10.html
editing/selection/select-out-of-editable.html
editing/spelling/spellcheck-paste.html
editing/spelling/spellcheck-paste-disabled.html
editing/spelling/spellcheck-paste-continuous-disabled.html
fast/dom/vertical-scrollbar-in-rtl.html
fast/events/5056619.html
fast/events/autoscroll-in-textfield.html
fast/events/bogus-dropEffect-effectAllowed.html
fast/events/content-changed-during-drop.html
fast/events/continuous-platform-wheelevent-in-scrolling-div.html
fast/events/crash-on-mutate-during-drop.html
fast/events/context-onmousedown-event.html
fast/events/drag-and-drop-dataTransfer-types-nocrash.html
fast/events/drag-and-drop-fire-drag-dragover.html
fast/events/drag-and-drop.html
fast/events/drag-and-drop-link.html
fast/events/drag-in-frames.html
fast/events/drag-parent-node.html
fast/events/dropzone-001.html
fast/events/dropzone-002.html
fast/events/dropzone-003.html
fast/events/dropzone-005.html
fast/events/keydown-numpad-keys.html
fast/events/mouse-click-events.html
fast/events/mouseup-from-button2.html
fast/events/node-event-anchor-lock.html
fast/events/ondragenter.html
fast/events/right-click-focus.html
fast/events/standalone-image-drag-to-editable.html
fast/events/wheelevent-in-horizontal-scrollbar-in-rtl.html
fast/events/wheelevent-in-vertical-scrollbar-in-rtl.html
fast/events/wheelevent-direction-inverted-from-device.html
fast/forms/drag-into-textarea.html
fast/forms/drag-out-of-textarea.html
fast/forms/file/input-file-value.html
fast/forms/listbox-typeahead-cyrillic.html
fast/forms/listbox-typeahead-greek.html
fast/forms/select-type-ahead-non-latin.html
fast/history/window-open.html
fast/lists/drag-into-marker.html
fast/repaint/japanese-rl-selection-repaint.html
fast/repaint/repaint-across-writing-mode-boundary.html
http/tests/local/drag-over-remote-content.html
http/tests/misc/bubble-drag-events.html
http/tests/security/drag-drop-same-unique-origin.html
http/tests/security/drag-over-remote-content-iframe.html
editing/mac/pasteboard/dataTransfer-set-data-file-url.html
editing/mac/pasteboard/drag-selections-to-contenteditable.html
editing/pasteboard/drag-drop-paragraph-crasher.html

# [WK2] [Mac] Spellcheck tests don't seem to work
webkit.org/b/105616 editing/spelling/context-menu-suggestions-multiword-selection.html
webkit.org/b/105616 editing/spelling/context-menu-suggestions-subword-selection.html
webkit.org/b/105616 editing/spelling/delete-into-misspelled-word.html
webkit.org/b/105616 editing/spelling/editing-multiple-words-with-markers.html
webkit.org/b/105616 editing/spelling/editing-word-with-marker-2.html
webkit.org/b/105616 editing/spelling/move-cursor-around-misspelled-word.html
webkit.org/b/105616 editing/inserting/inserting-slash-inside-url-with-smart-link.html
webkit.org/b/105616 editing/spelling/spelling-changed-text.html
webkit.org/b/105616 editing/spelling/spelling-backspace-between-lines.html
webkit.org/b/105616 editing/spelling/design-mode-spellcheck-off.html
webkit.org/b/105616 editing/spelling/spellcheck-attribute.html
webkit.org/b/105616 editing/spelling/spelling-attribute-at-child.html
webkit.org/b/105616 editing/spelling/spelling-attribute-change.html
webkit.org/b/105616 editing/spelling/spelling-backward.html
webkit.org/b/105616 editing/spelling/spelling-double-clicked-word.html
webkit.org/b/105616 editing/spelling/spelling-exactly-selected-word.html
webkit.org/b/105616 editing/spelling/spelling-hasspellingmarker.html
webkit.org/b/105616 editing/spelling/spelling-linebreak.html
webkit.org/b/105616 editing/spelling/spelling-with-punctuation-selection.html
webkit.org/b/105616 editing/spelling/spelling-with-whitespace-selection.html
webkit.org/b/105616 editing/spelling/grammar.html
webkit.org/b/105616 editing/spelling/markers.html
webkit.org/b/105616 editing/mac/spelling/autocorrection-delete.html [ Failure ]
webkit.org/b/105616 editing/mac/spelling/autocorrection-removing-underline-after-paste.html [ Failure ]
webkit.org/b/105616 editing/mac/spelling/autocorrection-removing-underline.html [ Failure ]
webkit.org/b/105616 editing/mac/spelling/autocorrection-simple.html [ Failure ]
webkit.org/b/105616 editing/mac/spelling/autocorrection-with-multi-line-text.html [ Failure ]
webkit.org/b/105616 editing/mac/spelling/click-autocorrected-word.html [ Failure ]
webkit.org/b/105616 editing/mac/spelling/delete-autocorrected-word-1.html [ Failure ]
webkit.org/b/105616 editing/mac/spelling/delete-autocorrected-word-2.html [ Failure ]
webkit.org/b/105616 editing/mac/spelling/delete-into-autocorrected-word.html [ Failure ]
webkit.org/b/105616 editing/mac/spelling/editing-word-with-marker-1.html [ Failure ]
webkit.org/b/105616 editing/mac/spelling/forward-delete-into-autocorrected-word.html [ Failure ]
webkit.org/b/105616 editing/mac/spelling/move-cursor-to-autocorrected-word.html [ Failure ]
webkit.org/b/105616 editing/mac/spelling/move-cursor-to-beginning-of-autocorrected-word.html [ Failure ]
webkit.org/b/105616 editing/mac/spelling/removing-underline-after-accepting-autocorrection-using-punctuation.html [ Failure ]

# [WK2] [Mac] Support drag in mouse events for WebKit2 EventSender
# <https://bugs.webkit.org/show_bug.cgi?id=68552>
editing/selection/select-across-readonly-input-2.html
editing/selection/select-across-readonly-input-3.html
editing/selection/select-across-readonly-input-4.html
editing/selection/select-across-readonly-input-5.html
fast/events/clear-drag-state.html
fast/events/drag-and-drop-subframe-dataTransfer.html
fast/events/drag-selects-image.html
fast/events/remove-target-with-shadow-in-drag.html

webkit.org/b/81833 fast/events/drag-and-drop-link-into-focused-contenteditable.html [ Failure ]

# Missing functionality of textInputController
# https://bugs.webkit.org/show_bug.cgi?id=89401
editing/mac/input/insert-dictated-text.html
editing/mac/input/crash-for-empty-text-alternative.html
editing/mac/input/edit-dictated-text-with-alternative.html
editing/mac/attributed-string/

# This test times out on Mac WK2 every time.
webkit.org/b/89199 editing/spelling/grammar-edit-word.html [ Skip ]

webkit.org/b/90156 editing/mac/spelling/autocorrection-blockquote-crash.html [ Failure ]

webkit.org/b/95043 http/tests/security/local-user-CSS-from-remote.html [ Failure ]

# All spatial navigation tests fail on Mac WK2
webkit.org/b/96438 fast/spatial-navigation

# fast/events/controlclick-no-onclick.html fails or times out on Mac WK2
webkit.org/b/105948 fast/events/controlclick-no-onclick.html [ Skip ]

webkit.org/b/105954 http/tests/navigation/reload-subframe-object.html [ Failure ]

webkit.org/b/105960 plugins/navigator-plugins.html [ Failure ]

webkit.org/b/108507 printing/quirks-percentage-height-body.html [ Skip ]
webkit.org/b/108507 printing/quirks-percentage-height.html [ Skip ]
webkit.org/b/108507 printing/standards-percentage-heights.html [ Skip ]

webkit.org/b/104954 http/tests/canvas/canvas-slow-font-loading.html [ ImageOnlyFailure ]

# Flaky everywhere.
webkit.org/b/114302 platform/mac-wk2/plugins/mouse-events-scaled-iframe.html [ Pass Failure ]

webkit.org/b/114572 platform/mac-wk2/plugins/mouse-events-scaled.html [ Pass Failure ]

# [WK2] Media elements never fail to load
webkit.org/b/117767 media/W3C/audio/error/error_onerror_called_on_bogus_source.html [ Timeout ]
webkit.org/b/117767 media/W3C/video/error/error_onerror_called_on_bogus_source.html [ Timeout ]
webkit.org/b/117767 media/broken-video.html [ Timeout ]
webkit.org/b/117767 media/event-attributes.html [ Timeout ]

webkit.org/b/117962 media/video-played-collapse.html [ Pass Failure ]

webkit.org/b/136109 fast/multicol/mixed-opacity-fixed-test.html  [ ImageOnlyFailure ]

# Reference expectation doesn't end up in compositing code path, leading to antialiasing differences.
webkit.org/b/132421 fast/multicol/fixed-stack.html [ ImageOnlyFailure ]

# Incomplete implementation of eventSender causes this test to fail
webkit.org/b/42194 fast/scrolling/scroll-select-list.html [ ImageOnlyFailure ]

webkit.org/b/107018 svg/animations/animate-linear-discrete-additive.svg [ ImageOnlyFailure Pass ]
webkit.org/b/107018 svg/animations/animate-linear-discrete-additive-b.svg [ ImageOnlyFailure Pass ]
webkit.org/b/107018 svg/animations/animate-linear-discrete-additive-c.svg  [ ImageOnlyFailure Pass ]
webkit.org/b/107018 svg/animations/mozilla/animateMotion-mpath-pathLength-1.svg [ ImageOnlyFailure Pass ]

# Color space issues from switching to tiled drawing.
webkit.org/b/122234 css3/filters/null-effect-check.html [ ImageOnlyFailure ]

# Tiled background images that intersect the tiles are getting weird fringing.
webkit.org/b/122235 css3/masking/mask-repeat-space-border.html [ ImageOnlyFailure ]

webkit.org/b/124476 platform/mac-wk2/plugins/slow/asynchronous-plugin-initialization-multiple.html [ Pass Failure ]

# uiElementForSearchPredicate() is not returning an undefined object when the search returns no results
webkit.org/b/125996 accessibility/mac/search-when-element-starts-in-table.html [ Failure ]

webkit.org/b/134550 [ Mavericks Yosemite ] http/tests/cache/iframe-304-crash.html [ Pass Failure ]

# testRunner.setUseDeferredFrameLoading is not implemented.
webkit.org/b/93980 http/tests/appcache/load-from-appcache-defer-resume-crash.html [ Skip ]

webkit.org/b/136554 tiled-drawing/scrolling/frames/frameset-nested-frame-scrollability.html [ Pass Failure ]
webkit.org/b/139901 tiled-drawing/scrolling/frames/frameset-frame-scrollability.html [ Pass Failure ]

webkit.org/b/148405 tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-2d-overflow.html [ Pass Failure ]

webkit.org/b/148407 tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-mainframe-horizontal.html [ Pass Failure ]
webkit.org/b/148407 tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-mainframe-slow-horizontal.html [ Pass Failure ]
webkit.org/b/148407 tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-mainframe-slow-vertical.html [ Pass Failure ]
webkit.org/b/148407 tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-mainframe-vertical.html [ Pass Failure ]

webkit.org/b/148408 tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-borders.html [ Pass Failure ]
webkit.org/b/148408 tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-overflow.html [ Pass Failure ]
webkit.org/b/148408 tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-rotated.html [ Pass Failure ]
webkit.org/b/148408 tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-padding.html [ Pass Failure ]
webkit.org/b/148408 tiled-drawing/scrolling/scroll-snap/scroll-snap-iframe.html [ Pass Failure ]
webkit.org/b/148408 tiled-drawing/scrolling/root-overflow-with-mousewheel.html [ Pass Failure Timeout ]

webkit.org/b/139820 fast/frames/lots-of-objects.html [ Timeout ]
webkit.org/b/139820 fast/frames/lots-of-iframes.html [ Timeout ]

webkit.org/b/140217 http/tests/navigation/forward-and-cancel.html [ Pass Failure ]

webkit.org/b/145432 media/video-transformed-by-javascript.html [ Failure ]

webkit.org/b/147075 [ Release Yosemite ] http/tests/cache/disk-cache/disk-cache-disable.html [ Pass Failure ]

webkit.org/b/148684 http/tests/contentfiltering/block-after-redirect.html [ Pass ImageOnlyFailure ]

### END OF (1) Classified failures with bug reports
########################################


########################################
### START OF (2) Classified failures without bug reports (yet)

# Missing TextChecker::requestCheckingOfString() implementation for Mac.
editing/spelling/grammar-markers.html [ Skip ]
editing/spelling/grammar-paste.html [ Skip ]
editing/spelling/grammar-markers-hidpi.html [ Skip ]
editing/spelling/inline-spelling-markers.html [ Skip ]
editing/spelling/inline-spelling-markers-hidpi.html [ Skip ]
editing/spelling/spellcheck-async-mutation.html [ Skip ]
editing/spelling/spellcheck-async.html [ Skip ]
editing/spelling/spellcheck-queue.html [ Skip ]
editing/spelling/spelling-insert-html.html [ Skip ]

# These should work on 10.10.3 and later, but our bots need to get the 10.10.3 SDK first. 
fast/events/mouse-force-changed.html [ Skip ]
fast/events/mouse-force-down.html [ Skip ]
fast/events/mouse-force-up.html [ Skip ]

### END OF (2) Classified failures without bug reports (yet)
########################################


########################################
### START OF (3) Unclassified failures

fast/forms/range/slider-delete-while-dragging-thumb.html [ Failure ]
svg/W3C-SVG-1.1/fonts-elem-04-b.svg [ Failure ]

# Unclear yet why this test fails.
editing/secure-input/password-input-focusing-to-different-frame.html [ Failure ]

# textInputController.hasMarkedText is implemented, but gives a wrong result for some reason.
editing/mac/input/unconfirmed-text-navigation-with-page-cache.html [ Failure ]

# test results in DRT don't match in browser behavior, test seems broken
fast/dom/Window/mozilla-focus-blur.html [ Pass Failure ]

webkit.org/b/132766 fast/hidpi/filters-blur.html [ ImageOnlyFailure ]
webkit.org/b/132766 fast/hidpi/filters-hue-rotate.html [ ImageOnlyFailure ]
webkit.org/b/132766 fast/hidpi/filters-invert.html [ ImageOnlyFailure ]
webkit.org/b/132766 fast/hidpi/filters-multiple.html [ ImageOnlyFailure ]
webkit.org/b/132766 fast/hidpi/filters-reference.html [ ImageOnlyFailure ]

# Plug-in snapshotting tests do not make much sense:
# - snapshotting is only supported for Flash, but we can't use Flash because it isn't installed everywhere;
# - so most of the tests use QuickTime, which doesn't support snapshotting, and is 32-bit only, thus failing to load in engineering builds.
plugins/snapshotting [ Pass Failure ]
# These two tests use Flash, so they trigger a release assertion.
plugins/snapshotting/autoplay-similar-to-dominant-after-delay.html [ Skip ]
plugins/snapshotting/print-snapshotted-plugin.html [ Skip ]

webkit.org/b/133227 plugins/snapshotting/set-plugin-size-to-tiny.html [ Failure ]
webkit.org/b/133227 plugins/snapshotting/quicktime-plugin-snapshotted.html [ Pass Failure ]

fast/dom/frame-loading-via-document-write.html [ Timeout ]

[ Yosemite+ ] fast/speechsynthesis/speech-synthesis-cancel.html [ Pass Timeout ]

webkit.org/b/140084 [ Yosemite+ ] js/dom/dfg-inline-resolve.html [ Pass Timeout ]

webkit.org/b/141364 [ Yosemite ] fullscreen/full-screen-plugin.html [ Pass Timeout ]

webkit.org/b/139828 svg/animations/animateMotion-additive-2a.svg [ Pass ImageOnlyFailure ]
webkit.org/b/139828 svg/animations/animateMotion-additive-2b.svg [ Pass ImageOnlyFailure ]

# This test crashes every time in WebKit2 on Yosemite
webkit.org/b/142726 [ Yosemite ] fast/images/animated-png.html [ Skip ]

[ Debug ] editing/undo/remove-css-property-and-remove-style.html [ Pass Failure ]

### END OF (3) Unclassified failures
########################################

########################################
### START OF (4) Features that are not supported in WebKit2 and likely never will be

### END OF (4) Features that are not supported in WebKit2 and likely never will be
########################################

########################################
### START OF (5) IndexedDB related failures

# Mozilla test failures.
storage/indexeddb/mozilla/global-data.html [ Skip ]
storage/indexeddb/mozilla/cursor-update-updates-indexes.html [ Pass Failure ]

# Blink tests with unexplained timeouts
storage/indexeddb/exceptions.html [ Skip ]
storage/indexeddb/transaction-basics.html [ Skip ]

# Blink tests with non-trivial text failures.
storage/indexeddb/create-object-store-options.html [ Skip ]
storage/indexeddb/cursor-advance.html [ Skip ]
storage/indexeddb/cursor-basics.html [ Skip ]
storage/indexeddb/cursor-continue-validity.html [ Skip ]
storage/indexeddb/cursor-continueprimarykey.html [ Skip ]
storage/indexeddb/cursor-index-delete.html [ Skip ]
storage/indexeddb/cursor-key-order.html [ Skip ]
storage/indexeddb/cursor-leak.html [ Skip ] # Missing needed WKTR feature?
storage/indexeddb/cursor-overloads.html [ Skip ]
storage/indexeddb/cursor-primary-key-order.html [ Skip ]
storage/indexeddb/cursor-request-cycle.html [ Skip ] # Missing needed WKTR feature?
storage/indexeddb/cursor-update.html [ Skip ]
storage/indexeddb/data-corruption.html [ Skip ]
storage/indexeddb/database-close.html [ Skip ]
storage/indexeddb/database-quota.html [ Skip ]
storage/indexeddb/duplicates.html [ Skip ] # Difference between null + undefined
storage/indexeddb/events.html [ Skip ]
storage/indexeddb/factory-basics.html [ Skip ] # indexedDB.webkitGetDatabaseNames is missing)
storage/indexeddb/factory-cmp.html [ Skip ]
storage/indexeddb/get-keyrange.html [ Skip ]
storage/indexeddb/index-basics.html [ Skip ] # Difference between null + undefined
storage/indexeddb/index-duplicate-keypaths.html [ Skip ]
storage/indexeddb/index-multientry.html [ Skip ]
storage/indexeddb/index-population.html [ Skip ]
storage/indexeddb/index-unique.html [ Skip ]
storage/indexeddb/intversion-close-between-events.html [ Skip ]
storage/indexeddb/intversion-open-with-version.html [ Skip ] # INTMAX exposed to script as database version
storage/indexeddb/intversion-two-opens-no-versions.html [ Skip ] # INTMAX exposed to script as database version
storage/indexeddb/key-generator.html [ Skip ]
storage/indexeddb/key-type-binary.html [ Skip ]
storage/indexeddb/lazy-index-population.html [ Skip ]
storage/indexeddb/noblobs.html [ Skip ] # Missing DRT file/blob support
storage/indexeddb/objectstore-autoincrement.html [ Skip ]
storage/indexeddb/objectstore-keycursor.html [ Skip ]
storage/indexeddb/optional-arguments.html [ Skip ]
storage/indexeddb/request-leak.html [ Skip ] # Missing WKTR support? GC?
storage/indexeddb/setversion-blocked-by-versionchange-close.html [ Skip ]
storage/indexeddb/structured-clone.html [ Skip ] # Missing DRT file/blob support
storage/indexeddb/transaction-and-objectstore-calls.html [ Skip ]
storage/indexeddb/transaction-error.html [ Skip ]
storage/indexeddb/transaction-scope-sequencing.html [ Skip ]

# Blink tests that crash the WebProcess.
storage/indexeddb/cursor-cast.html [ Skip ]
storage/indexeddb/deleted-objects.html [ Skip ] # Crashes under WebCore::GetOperation::GetOperation
storage/indexeddb/metadata.html [ Skip ] # Crashes under IDBDatabaseBackend::createIndex
storage/indexeddb/persistence.html [ Skip ] # Crash under IDBDatabaseBackend::createObjectStore
webkit.org/b/137314 storage/indexeddb/database-basics.html [ Pass Crash Timeout ] # IDBDatabaseBackend::createObjectStore()

# Blink tests that crash the WebProcess under IDBDatabase::dispatchEvent or IDBRequest::dispatchEvent (possibly all related).
storage/indexeddb/database-deletepending-flag.html [ Skip ]	  
storage/indexeddb/database-wrapper.html [ Skip ]
storage/indexeddb/delete-in-upgradeneeded-close-in-open-success.html [ Skip ]
storage/indexeddb/delete-in-upgradeneeded-close-in-versionchange.html [ Skip ]
storage/indexeddb/deletedatabase-blocked.html [ Skip ]
storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange.html [ Skip ]
storage/indexeddb/deletedatabase-delayed-by-versionchange.html [ Skip ]
storage/indexeddb/deletedatabase-not-blocked.html [ Skip ]
storage/indexeddb/factory-deletedatabase.html [ Skip ]
storage/indexeddb/intversion-blocked.html [ Skip ]
storage/indexeddb/intversion-gated-on-delete.html [ Skip ]
storage/indexeddb/intversion-long-queue.html [ Skip ]
storage/indexeddb/intversion-open-in-upgradeneeded.html [ Skip ]
storage/indexeddb/intversion-pending-version-changes-ascending.html [ Skip ]
storage/indexeddb/intversion-pending-version-changes-descending.html [ Skip ]
storage/indexeddb/intversion-pending-version-changes-same.html [ Skip ]
storage/indexeddb/intversion-upgrades.html [ Skip ]
storage/indexeddb/objectstore-basics.html [ Skip ]
storage/indexeddb/set_version_blocked.html [ Skip ]
storage/indexeddb/setversion-not-blocked.html [ Skip ]

# Blink tests that crash the DatabaseProcess.
storage/indexeddb/createIndex-after-failure.html [ Skip ]
storage/indexeddb/database-odd-names.html [ Skip ] # Crashes under WebKit::DatabaseProcess::ensurePathExists
storage/indexeddb/deleteIndex.html [ Skip ] # Crashes under WebKit::UniqueIDBDatabase::deleteIndex
storage/indexeddb/index-cursor.html [ Skip ] # Flaky crash under UniqueIDBDatabase::unregisterConnection
storage/indexeddb/open-ordering.html [ Skip ] # DatabaseProcessIDBConnection::GetOrEstablishIDBDatabaseMetadata
storage/indexeddb/transaction-coordination-within-database.html [ Skip ] # SQLiteTransaction::begin

# Blink tests that crash the DatabaseProcess under DatabaseProcessIDBConnection::deleteDatabase.
storage/indexeddb/database-closepending-flag.html [ Skip ]
storage/indexeddb/key-sort-order-date.html [ Skip ]
storage/indexeddb/key-type-infinity.html [ Skip ]
storage/indexeddb/keypath-fetch-key.html [ Skip ]
storage/indexeddb/odd-strings.html [ Skip ]
storage/indexeddb/prefetch-invalidation.html [ Skip ]
storage/indexeddb/queued-commands.html [ Skip ]

# Blink tests that pass once, but are known to cause trouble downstream.
storage/indexeddb/clone-exception.html [ Skip ]
storage/indexeddb/connection-leak.html [ Skip ]
storage/indexeddb/dont-wedge.html [ Skip ]
storage/indexeddb/key-sort-order-across-types.html [ Skip ]

# We don't currently support indexeddb in workers
storage/indexeddb/basics-workers.html [ Skip ]
storage/indexeddb/cursor-advance-workers.html [ Skip ]
storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-workers.html [ Skip ]
storage/indexeddb/dont-commit-on-blocked.html [ Skip ]
storage/indexeddb/factory-basics-workers.html [ Skip ]
storage/indexeddb/index-basics-workers.html [ Skip ]
storage/indexeddb/objectstore-basics-workers.html [ Skip ]
storage/indexeddb/open-twice-workers.html [ Skip ]
storage/indexeddb/pending-activity-workers.html [ Skip ]
storage/indexeddb/pending-version-change-on-exit.html [ Skip ]
storage/indexeddb/pending-version-change-stuck-works-with-terminate.html [ Skip ]
storage/indexeddb/pending-version-change-stuck.html [ Skip ]
storage/indexeddb/transaction-complete-workers.html [ Skip ]
storage/indexeddb/unprefix-workers.html [ Skip ]
http/tests/security/cross-origin-worker-indexeddb-allowed.html [ Skip ]
http/tests/security/cross-origin-worker-indexeddb.html [ Skip ]

### END OF (5) IndexedDB related failures
########################################

########################################
### START OF (6) Features that are not supported when NetworkProcess is enabled (i.e. they only work on Mountain Lion, and not on newer OS versions).

# https://bugs.webkit.org/show_bug.cgi?id=115274
# PPT: testRunner.setPrivateBrowsingEnabled doesn't work with NetworkProcess
http/tests/security/appcache-in-private-browsing.html [ Skip ]
http/tests/security/appcache-switching-private-browsing.html [ Skip ]
http/tests/security/cookies/first-party-cookie-allow-xslt.xml [ Skip ]
http/tests/security/cookies/third-party-cookie-blocking-main-frame.html [ Skip ]
http/tests/security/cookies/third-party-cookie-blocking-user-action.html [ Skip ]
http/tests/security/cookies/third-party-cookie-blocking-xslt.xml [ Skip ]
http/tests/security/cookies/third-party-cookie-blocking.html [ Skip ]
http/tests/security/cross-frame-access-private-browsing.html [ Skip ]
http/tests/security/cross-origin-plugin-private-browsing-toggled-allowed.html [ Skip ]
http/tests/security/cross-origin-plugin-private-browsing-toggled.html [ Skip ]
http/tests/security/storage-blocking-loosened-private-browsing-plugin.html [ Skip ]
http/tests/security/storage-blocking-strengthened-private-browsing-plugin.html [ Skip ]
plugins/private-browsing-mode-2.html [ Skip ]
plugins/private-browsing-mode.html [ Skip ]
storage/domstorage/localstorage/private-browsing-affects-storage.html [ Skip ]
storage/domstorage/sessionstorage/private-browsing-affects-storage.html [ Skip ]
storage/websql/private-browsing-noread-nowrite.html [ Skip ]

# There is no network load scheduling or prioritization with NetworkProcess.
webkit.org/b/123431 http/tests/css/link-css-disabled-value-with-slow-loading-sheet-in-error.html [ Pass Failure ]
webkit.org/b/123431 http/tests/css/link-css-disabled-value-with-slow-loading-sheet.html [ Pass Failure ]
webkit.org/b/123431 http/tests/local/link-stylesheet-load-order-preload.html [ Failure ]
webkit.org/b/123431 http/tests/local/link-stylesheet-load-order.html [ Failure ]

# This test times out, likely because appcache still loads in WebProcess, not NetworkProcess
webkit.org/b/138736 http/tests/appcache/auth.html [ Skip ]

### END OF (6) Features that are not supported in WebKit2, on Mavericks
########################################

########################################
### START OF (7) New WebKit2-only failures in Yosemite

media/video-background-tab-playback.html [ Pass Failure ]

webkit.org/b/139979 [ Yosemite+ ] fast/regions/layers/region-removed-during-animation.html [ Pass ImageOnlyFailure ]

webkit.org/b/140607 [ Yosemite+ ] http/tests/navigation/navigation-interrupted-by-fragment.html [ Pass Timeout ]

webkit.org/b/141322 [ Debug Yosemite+ ] fast/images/destroyed-image-load-event.html [ Pass Timeout ]

webkit.org/b/141325 http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout-abortedonmain.html [ Pass Failure ]

webkit.org/b/141085 [ Yosemite ] http/tests/media/video-query-url.html [ Pass Timeout ]

webkit.org/b/145702 [ Debug Yosemite ] http/tests/misc/acid3.html [ Pass Timeout ]

### END OF (7) New WebKit2-only failures in Yosemite
########################################

# Content Extensions tests must be enabled explicitly on mac-wk2.
http/tests/contentextensions [ Pass ]
webkit.org/b/146400 http/tests/contentextensions/character-set-basic-support.html [ Pass Failure ]

# WebKit1-only failure.
webkit.org/b/103857 fast/events/mouse-cursor-change.html [ Pass ]
