# This file is used for tests that only need to be suppressed on the Chromium
# WebKit Leak bots.
# Further documentation:
# https://chromium.googlesource.com/chromium/src/+/master/docs/testing/layout_test_expectations.md

###########################################################################
# WARNING: Memory leaks must be fixed asap. Sheriff is expected to revert #
# culprit CLs instead of suppressing the leaks. If you have any question, #
# ask hajimehoshi@.                                                       #
###########################################################################

# view-source:// tests are not supported by the leak detector
crbug.com/364398 fast/frames/viewsource/viewsource-1.html [ Leak ]
crbug.com/364398 fast/frames/viewsource/viewsource-2.html [ Leak ]
crbug.com/364398 fast/frames/viewsource/viewsource-3.html [ Leak ]
crbug.com/364398 fast/frames/viewsource/viewsource-4.html [ Leak ]
crbug.com/364398 fast/frames/viewsource/viewsource-5.html [ Leak ]
crbug.com/364398 fast/frames/viewsource/viewsource-6.html [ Leak ]
crbug.com/364398 fast/frames/viewsource/viewsource-7.html [ Leak ]
crbug.com/364398 fast/frames/viewsource/viewsource-incomplete-token.html [ Leak ]
crbug.com/364398 fast/frames/viewsource/viewsource-unfinished-script.html [ Leak ]
crbug.com/364398 fast/frames/viewsource/viewsource-unfinished-textarea.html [ Leak ]
crbug.com/364398 http/tests/security/xssAuditor/viewsource-onmouseover.html [ Leak ]
crbug.com/364398 virtual/mojo-loading/http/tests/security/xssAuditor/viewsource-onmouseover.html [ Leak ]
crbug.com/364398 http/tests/security/xssAuditor/viewsource-script-tag.html [ Leak ]
crbug.com/364398 virtual/mojo-loading/http/tests/security/xssAuditor/viewsource-script-tag.html [ Leak ]

# FIXME: The below tests fails when the leak detector is disabled.
crbug.com/366029 compositing/fixed-body-background-positioned.html [ Failure Pass ]
crbug.com/366029 virtual/disable-spinvalidation/compositing/fixed-body-background-positioned.html [ Failure Pass ]

# FIXME: The below tests crashes when the leak detector is run on debug builds
crbug.com/366043 [ Debug ] fast/history/history-traversal-is-asynchronous.html [ Crash ]

# The leak detector doesn't wait for worker threads to completely clean up, so leaks are expected.
crbug.com/301515 fast/workers/worker-terminate.html [ Leak ]

# FIXME: scroll customization leaks memory. See
# codereview.chromium.org/1236913004/ for context.
crbug.com/410974 virtual/scroll_customization/fast/scroll-behavior/scroll-customization/touch-scroll-customization.html [ Leak ]
crbug.com/410974 virtual/scroll_customization/fast/scroll-behavior/scroll-customization/scrollstate-distribute-to-scroll-chain-descendant.html [ Leak ]

# -----------------------------------------------------------------
# Untriaged but known real leaks.
# -----------------------------------------------------------------

crbug.com/327574 permissionclient/image-permissions.html [ Leak ]
crbug.com/327574 http/tests/permissionclient/image-permissions.html [ Leak ]
crbug.com/327574 virtual/mojo-loading/http/tests/permissionclient/image-permissions.html [ Leak ]
crbug.com/327574 fast/loader/data-images-with-images-disabled.html [ Leak ]
crbug.com/629058 plugins/fullscreen-plugins-dont-reload.html [ Leak ]

# -----------------------------------------------------------------
# Untriaged but known leaks which may be false positives.
# -----------------------------------------------------------------

crbug.com/364417 paint/invalidation/japanese-rl-selection-clear.html [ Leak ]
crbug.com/364417 virtual/disable-spinvalidation/paint/invalidation/japanese-rl-selection-clear.html [ Leak ]

crbug.com/455369 html/marquee/marquee-destroyed-without-removed-from-crash.html [ Leak Pass ]

crbug.com/414163 [ Debug ] inspector/sources/debugger/promise-tracker.html [ Crash ]

crbug.com/480769 http/tests/inspector/service-workers/user-agent-override.html [ Crash ]
crbug.com/480769 virtual/mojo-loading/http/tests/inspector/service-workers/user-agent-override.html [ Crash ]

crbug.com/662477 external/wpt/html/webappapis/idle-callbacks/cancel-invoked.html [ Leak ]
crbug.com/662477 external/wpt/html/webappapis/scripting/events/onerroreventhandler.html [ Leak ]

# Likely caused by http://crbug.com/501866.
crbug.com/701695 external/wpt/html/webappapis/scripting/events/event-handler-processing-algorithm-error/window-synthetic-errorevent.html [ Leak ]

# -----------------------------------------------------------------
# Untriaged but known leaks of ActiveDOMObject (fast).
# -----------------------------------------------------------------
crbug.com/506529 fast/mediastream/MediaStreamConstructor.html [ Leak ]
crbug.com/506529 fast/events/constructors/media-stream-event-constructor.html [ Leak ]
crbug.com/506529 fast/files/workers/worker-read-blob-async-crash.html [ Leak ]
crbug.com/661182 fast/loader/open-in-srcdoc-unload.html [ Leak ]

# -----------------------------------------------------------------
# Untriaged but known leaks of ActiveDOMObject (IndexedDB).
# -----------------------------------------------------------------
# The leak detector's result for ActiveDOMObject (especially IndexedDB) is
# flaky and we need to fix the leak detector (crbug.com/507224). Until then,
# the tests for IndexedDB are skipped.
crbug.com/506752 external/wpt/IndexedDB/ [ Skip ]
crbug.com/506752 storage/indexeddb/ [ Skip ]

# -----------------------------------------------------------------
# Untriaged but known leaks of ActiveDOMObject (http).
# -----------------------------------------------------------------
crbug.com/506754 http/tests/cachestorage/window/cache-put.html [ Leak ]
crbug.com/506754 virtual/mojo-loading/http/tests/cachestorage/window/cache-put.html [ Leak ]
crbug.com/506754 http/tests/inspector/network/network-xhr-replay.html [ Leak ]
crbug.com/506754 virtual/mojo-loading/http/tests/inspector/network/network-xhr-replay.html [ Leak ]
crbug.com/506754 http/tests/inspector/service-workers/service-worker-agents.html [ Crash Leak ]
crbug.com/506754 virtual/mojo-loading/http/tests/inspector/service-workers/service-worker-agents.html [ Crash Leak ]
crbug.com/506754 http/tests/security/cross-origin-indexeddb-allowed.html [ Leak ]
crbug.com/506754 virtual/mojo-loading/http/tests/security/cross-origin-indexeddb-allowed.html [ Leak ]
crbug.com/506754 http/tests/serviceworker/chromium/resolve-after-window-close.html [ Leak ]
crbug.com/506754 virtual/mojo-loading/http/tests/serviceworker/chromium/resolve-after-window-close.html [ Leak ]
crbug.com/506754 virtual/off-main-thread-fetch/http/tests/serviceworker/chromium/resolve-after-window-close.html [ Leak ]
crbug.com/506754 http/tests/serviceworker/chromium/window-close-during-registration.html [ Leak ]
crbug.com/506754 virtual/mojo-loading/http/tests/serviceworker/chromium/window-close-during-registration.html [ Leak ]
crbug.com/506754 virtual/off-main-thread-fetch/http/tests/serviceworker/chromium/window-close-during-registration.html [ Leak ]
crbug.com/506754 virtual/service-worker-navigation-preload/http/tests/serviceworker/chromium/resolve-after-window-close.html [ Leak ]
crbug.com/506754 virtual/service-worker-navigation-preload/http/tests/serviceworker/chromium/window-close-during-registration.html [ Leak ]
crbug.com/506754 virtual/service-worker-navigation-preload-disabled/http/tests/serviceworker/chromium/resolve-after-window-close.html [ Leak ]
crbug.com/506754 virtual/service-worker-navigation-preload-disabled/http/tests/serviceworker/chromium/window-close-during-registration.html [ Leak ]

# -----------------------------------------------------------------
# Untriaged but known leaks of ActiveDOMObject (Web Audio).
# -----------------------------------------------------------------
crbug.com/451577 [ Linux ] inspector/elements/user-properties.html [ Slow ]
crbug.com/451577 [ Linux ] inspector/extensions/extensions-reload.html [ Slow ]
crbug.com/451577 [ Linux ] inspector/extensions/extensions-sidebar.html [ Slow ]

crbug.com/578297 [ Linux ] virtual/threaded/printing/webgl-oversized-printing.html [ Slow Leak ]
crbug.com/578297 [ Linux ] http/tests/media/media-source/mediasource-appendstream-quota-exceeded.html [ Slow ]
crbug.com/578297 [ Linux ] virtual/mojo-loading/http/tests/media/media-source/mediasource-appendstream-quota-exceeded.html [ Slow ]

# -----------------------------------------------------------------
# Leaks in external/wpt/css/vendor-imports/mozilla/mozilla-central-reftests/*
# -----------------------------------------------------------------
crbug.com/594309 [ Linux ] external/wpt/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-baseline-align-self-baseline-vert-001.html [ Failure Pass Leak ]
crbug.com/594309 [ Linux ] external/wpt/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-baseline-empty-001a.html [ Leak ]
crbug.com/594309 [ Linux ] external/wpt/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-baseline-empty-001b.html [ Leak ]
crbug.com/594309 [ Linux ] external/wpt/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-baseline-multi-item-vert-001.html [ Leak ]
crbug.com/594309 [ Linux ] external/wpt/css/vendor-imports/mozilla/mozilla-central-reftests/flexbox/flexbox-whitespace-handling-002.xhtml [ Leak ]
crbug.com/594309 [ Linux ] external/wpt/css/vendor-imports/mozilla/mozilla-central-reftests/writing-modes-3/text-combine-upright-compression-007.html [ Leak ]

crbug.com/664874 http/tests/xmlhttprequest/workers/xmlhttprequest-allowed-with-disabled-web-security.html [ Leak ]
crbug.com/664874 virtual/mojo-loading/http/tests/xmlhttprequest/workers/xmlhttprequest-allowed-with-disabled-web-security.html [ Leak ]

crbug.com/672740 http/tests/security/mixedContent/websocket/insecure-websocket-in-secure-page-worker-allowed.html [ Leak Pass ]
crbug.com/672740 virtual/mojo-loading/http/tests/security/mixedContent/websocket/insecure-websocket-in-secure-page-worker-allowed.html [ Leak Pass ]
crbug.com/672740 http/tests/security/mixedContent/websocket/insecure-websocket-in-secure-page-worker.html [ Leak Pass ]
crbug.com/672740 virtual/mojo-loading/http/tests/security/mixedContent/websocket/insecure-websocket-in-secure-page-worker.html [ Leak Pass ]

# Flaky crashes, but bot build logs do not show the failure, at least
# as linked by the flakiness dashboard.
crbug.com/674858 [ Linux ] virtual/threaded/printing/offscreencanvas-2d-printing.html [ Pass Crash ]
crbug.com/674858 [ Linux ] virtual/threaded/printing/offscreencanvas-webgl-printing.html [ Pass Crash ]

# Sheriff: Commit causing leak found but non-trivial to revert
crbug.com/718114 [ Linux ] external/wpt/html/semantics/scripting-1/the-script-element/module/crossorigin.html [ Leak Failure ]
crbug.com/724818 [ Linux ] external/wpt/html/semantics/scripting-1/the-script-element/module/import-subgraph-404.html [ Leak Failure ]

# New tests revealed existing leak
crbug.com/726218 [ Linux ] fast/dom/inert/inert-node-is-uneditable.html [ Leak ]
crbug.com/726218 [ Linux ] fast/dom/inert/inert-inlines.html [ Leak ]
crbug.com/726218 [ Linux ] fast/dom/inert/inert-label-focus.html [ Leak ]

###########################################################################
# WARNING: Memory leaks must be fixed asap. Sheriff is expected to revert #
# culprit CLs instead of suppressing the leaks. If you have any question, #
# ask hajimehoshi@.                                                       #
###########################################################################
