# Copyright (c) 2013, the Dart project authors.  Please see the AUTHORS file
# for details. All rights reserved. Use of this source code is governed by a
# BSD-style license that can be found in the LICENSE file.

interactive_test: Skip # Must be run manually.
dromaeo_smoke_test: Skip # Issue 14521, 8257
cross_frame_test: Skip # Test reloads itself. Issue 18558

[ $compiler == none && ($runtime == dartium || $runtime == drt) ]

js_array_test: Skip # Dartium JSInterop failure
mirrors_js_typed_interop_test: Fail # Missing expected failure (Issue 25044)
js_typed_interop_side_cast_exp_test: Fail, OK # tests dart2js-specific behavior.

cross_domain_iframe_test: RuntimeError # Dartium JSInterop failure
indexeddb_2_test: Fail # Dartium JSInterop failure. Identity preservation on array deferred copy.
js_test/transferrables: RuntimeError # Dartium JSInterop failure
js_test/JsArray: RuntimeError # Dartium JSInterop failure
native_gc_test: Skip # Dartium JSInterop failure
transferables_test: RuntimeError # Dartium JSInterop failure

[ $compiler == none && ($runtime == drt || $runtime == dartium ) ]
worker_api_test: Fail # Issue 10223
resource_http_test: Fail # Issue 24203
js_function_getter_trust_types_test: Skip # dartium doesn't support trust types.

[ $compiler == none && $mode == debug && ($runtime == drt || $runtime == dartium ) ]
datalistelement_test: Skip # Issue 20540

[ $compiler == dart2js ]
input_element_test/attributes: Fail # Issue 21555
wrapping_collections_test: SkipByDesign # Testing an issue that is only relevant to Dartium

[ $compiler == dart2js && $checked ]
js_function_getter_trust_types_test: Skip # --trust-type-annotations incompatible with --checked
js_typed_interop_test: Pass, Fail # Issue 24822

[ $compiler == dart2js && $csp && $browser ]
custom/js_custom_test: Fail # Issue 14643
custom/element_upgrade_test: Fail # Issue 17298

[ $compiler == dart2js && $browser ]
custom/created_callback_test: Fail # Support for created constructor. Issue 14835
fontface_loaded_test: Fail # Support for promises.

[ $compiler == dart2js && ($runtime == safari || $runtime == safarimobilesim || $runtime == ff  || $ie) ]
custom/entered_left_view_test/viewless_document: Fail # Polyfill does not handle this
fontface_test: Fail # Fontface not supported on these.
custom/attribute_changed_callback_test/unsupported_on_polyfill: Fail # Polyfill does not support
element_animate_test: Fail # Element.animate not supported on these browsers.

[ $compiler == none && $runtime == dartium && $system == macos]
canvasrenderingcontext2d_test/drawImage_video_element_dataUrl: Pass,Fail # Issue 11834

[ $compiler == none && ($runtime == drt || $runtime == dartium ) ]
# postMessage in dartium always transfers the typed array buffer, never a view
postmessage_structured_test/typed_arrays: Fail
# Dartium seems to lose the data from the dispatchEvent.
async_test: Fail # Uses spawn, not implemented from a DOM isolate in Dartium
keyboard_event_test: Fail # Issue 13902
isolates_test: Fail # Issue 13921
fileapi_test/getFile: Pass, Fail # Issue 20488

[ $compiler == none && ($runtime == drt || $runtime == dartium ) && $mode == debug ]
websocket_test/websocket: Skip # Issue 17666
canvasrenderingcontext2d_test/drawImage_video_element_dataUrl: Skip # Issue 17666

element_offset_test/offset: RuntimeError # Issue 17550
request_animation_frame_test: Skip # Times out, and also passes while taking 4.00 minutes. Issue 19127.
fileapi_test/fileEntry: Pass, RuntimeError # Issue 20488
native_gc_test: Pass, Slow

[ $compiler == none && $runtime == drt && $system == windows ]
worker_test/functional: Pass, Crash # Issue 9929.

[ $compiler == dart2js && $runtime == chromeOnAndroid ]
crypto_test/functional: Pass, Slow # TODO(dart2js-team): Please triage this failure.
input_element_test/supported_datetime-local: Pass, Slow # TODO(dart2js-team): Please triage this failure.

fileapi_test/entry: Fail, Pass # TODO(dart2js-team): Please triage this failure.
fileapi_test/fileEntry: Fail, Pass # TODO(dart2js-team): Please triage this failure.
fileapi_test/getDirectory: Fail, Pass # TODO(dart2js-team): Please triage this failure.
fileapi_test/getFile: Fail, Pass # TODO(dart2js-team): Please triage this failure.

audiocontext_test/supported: RuntimeError # TODO(dart2js-team): Please triage this failure.
audiobuffersourcenode_test/supported: Fail # TODO(dart2js-team): Please triage this failure.
canvasrenderingcontext2d_test/drawImage_video_element: Fail # TODO(dart2js-team): Please triage this failure.
canvasrenderingcontext2d_test/drawImage_video_element_dataUrl: Fail # TODO(dart2js-team): Please triage this failure.
canvasrenderingcontext2d_test/fillText: Fail # TODO(dart2js-team): Please triage this failure.
element_types_test/supported_datalist: Fail # TODO(dart2js-team): Please triage this failure.
input_element_test/supported_week: Fail # TODO(dart2js-team): Please triage this failure.
media_stream_test/supported_media: Fail # TODO(dart2js-team): Please triage this failure.
rtc_test/supported: Fail # TODO(dart2js-team): Please triage this failure.
speechrecognition_test/supported: Fail # TODO(dart2js-team): Please triage this failure.
speechrecognition_test/types: Fail # TODO(dart2js-team): Please triage this failure.
xhr_test/json: Fail # TODO(dart2js-team): Please triage this failure.

[ $runtime == safarimobilesim ]
element_offset_test/offset: RuntimeError # Issue 18573
element_types_test/supported_meter: RuntimeError # Issue 18573

[ $runtime == chrome ]
touchevent_test/supported: Fail # Touch events are only supported on touch devices
element_animate_test/omit_timing: RuntimeError # Also timing out on MacOS. Issue 23507
element_animate_test/timing_dict: RuntimeError # Also timing out on MacOS. Issue 23507
element_animate_test/simple_timing: RuntimeError # Please triage this failure

[ $runtime == chrome && $system == macos ]
canvasrenderingcontext2d_test/drawImage_video_element: Skip # Times out. Please triage this failure.
canvasrenderingcontext2d_test/drawImage_video_element_dataUrl: Skip # Times out. Please triage this failure.
element_animate_test/omit_timing: Skip # Timing out on MacOS. Issue 23507
element_animate_test/timing_dict: Skip # Timing out on MacOS. Issue 23507
transition_event_test/functional: Skip # Times out. Issue 22167
request_animation_frame_test: Skip # Times out. Issue 22167

[$runtime == drt || $runtime == dartium || $runtime == chrome || $runtime == chromeOnAndroid || $runtime == ContentShellOnAndroid ]
webgl_1_test: Pass, Fail # Issue 8219

[ $compiler == none && ($runtime == drt || $runtime == dartium) && $system == windows ]
websql_test: Skip # Issue 4941: stderr contains a backtrace.

[ $compiler == none && ($runtime == drt || $runtime == dartium) && $mode == debug]
websql_test: Fail, Pass # Issue 4941: stderr contains a backtrace.
native_gc_test: Pass, Slow

[$runtime == ie10 || $runtime == ie11]
indexeddb_5_test: Fail # Issue 12893
js_test/transferrables: RuntimeError # Issue 14246
element_test/click: Fail # IE does not support firing this event.
serialized_script_value_test: Fail
websocket_test/websocket: Fail # Issue 7875. Closed with "working as intended".
canvasrenderingcontext2d_test/drawImage_video_element: Fail # IE does not support drawImage w/ video element
canvasrenderingcontext2d_test/drawImage_video_element_dataUrl: Fail # IE does not support drawImage w/ video element
no_linked_scripts_htmltest: Skip # Times out on IE.  Issue 21537
scripts_htmltest: Skip # Times out on IE.  Issue 21537
two_scripts_htmltest: Skip # Times out on IE.  Issue 21537
deferred_multi_app_htmltest: Skip # Times out on IE.  Issue 21537
localstorage_test: Pass, RuntimeError # Issue 22166
storage_test: Pass, RuntimeError # Issue 22166
postmessage_structured_test/more_primitives: Fail # Does not support the MessageEvent constructor.
notification_test/supported_notification: Fail # Notification not supported on IE
event_test: RuntimeError # Issue 23437. Only three failures, but hard to break them out.
wheelevent_test: RuntimeError # Issue 23437
text_event_test: RuntimeError # Issue 23437
transition_event_test/functional: Skip # Times out. Issue 22167
request_animation_frame_test: Skip # Times out. Issue 22167

[$runtime == ie10 ]
# IE10 Feature support statuses-
# All changes should be accompanied by platform support annotation changes.
audiobuffersourcenode_test/supported: Fail
audiocontext_test/supported: Fail
crypto_test/supported: Fail
css_test/supportsPointConversions: Fail
document_test/supports_cssCanvasContext: Fail
element_types_test/supported_content: Fail
element_types_test/supported_details: Fail
element_types_test/supported_keygen: Fail
element_types_test/supported_meter: Fail
element_types_test/supported_output: Fail
element_types_test/supported_shadow: Fail
element_types_test/supported_template: Fail
fileapi_test/supported: Fail
history_test/supported_HashChangeEvent: Fail
indexeddb_1_test/supportsDatabaseNames: Fail
input_element_test/supported_date: Fail
input_element_test/supported_datetime-local: Fail
input_element_test/supported_month: Fail
input_element_test/supported_time: Fail
input_element_test/supported_week: Fail
media_stream_test/supported_MediaStreamEvent: Fail
media_stream_test/supported_MediaStreamTrackEvent: Fail
media_stream_test/supported_media: Fail
mediasource_test/supported: Fail
mutationobserver_test/supported: Fail
rtc_test/supported: Fail
shadow_dom_test/supported: Fail
speechrecognition_test/supported: Fail
svgelement_test/supported_altGlyph: Fail
svgelement_test/supported_animate: Fail
svgelement_test/supported_animateMotion: Fail
svgelement_test/supported_animateTransform: Fail
svgelement_test/supported_foreignObject: Fail
svgelement_test/supported_set: Fail
touchevent_test/supported: Fail # IE does not support TouchEvents
webgl_1_test/supported: Fail
websql_test/supported: Fail
xhr_test/json: Fail # IE10 returns string, not JSON object
xhr_test/supported_overrideMimeType: Fail
xsltprocessor_test/supported: Fail
worker_test/functional: Fail # IE uses incorrect security context for Blob URIs.
transferables_test: Fail # Issue 9846

[ $compiler == dart2js && $minified ]
canvas_pixel_array_type_alias_test/types2_runtimeTypeName: Fail, OK # Issue 12605

[ $compiler == dart2js && $runtime == chrome ]
css_test/supportsPointConversions: Fail # Issues 21710
css_test/functional: Fail # Issues 21710

[ $runtime == ie11 ]
custom/document_register_type_extensions_test/single-parameter: Fail # Issue 13193.
canvasrenderingcontext2d_test/arc: Pass, Fail # Pixel unexpected value. Please triage this failure.
worker_test/functional: Pass, Fail # Issues 20659.
transferables_test: Pass, Fail # Issues 20659.

# IE11 Feature support statuses-
# These results not yet noted in platform support annotations.
# All changes should be accompanied by platform support annotation changes.
audiobuffersourcenode_test/supported: Fail
audiocontext_test/supported: Fail
crypto_test/supported: Fail
css_test/supportsPointConversions: Fail
document_test/supports_cssCanvasContext: Fail
element_types_test/supported_content: Fail
element_types_test/supported_details: Fail
element_types_test/supported_keygen: Fail
element_types_test/supported_meter: Fail
element_types_test/supported_output: Fail
element_types_test/supported_shadow: Fail
element_types_test/supported_template: Fail
fileapi_test/supported: Fail
history_test/supported_HashChangeEvent: Fail
indexeddb_1_test/supportsDatabaseNames: Fail
input_element_test/supported_date: Fail
input_element_test/supported_datetime-local: Fail
input_element_test/supported_month: Fail
input_element_test/supported_time: Fail
input_element_test/supported_week: Fail
media_stream_test/supported_MediaStreamEvent: Fail
media_stream_test/supported_MediaStreamTrackEvent: Fail
media_stream_test/supported_media: Fail
mediasource_test/supported: Pass, Fail # Should pass on Windows 8
mediasource_test/functional: Pass, Fail # Fails on Windows 8
rtc_test/supported: Fail
shadow_dom_test/supported: Fail
speechrecognition_test/supported: Fail
svgelement_test/supported_altGlyph: Fail
svgelement_test/supported_animate: Fail
svgelement_test/supported_animateMotion: Fail
svgelement_test/supported_animateTransform: Fail
svgelement_test/supported_foreignObject: Fail
svgelement_test/supported_set: Fail
touchevent_test/supported: Fail # IE does not support TouchEvents
webgl_1_test/functional: Fail
websql_test/supported: Fail
xhr_test/json: Fail # IE10 returns string, not JSON object
xsltprocessor_test/supported: Fail

[ $runtime == ie10 ]
custom/document_register_type_extensions_test/construction: Fail # Issue 13193
custom/element_upgrade_test: Fail # Issue 18247
worker_api_test: Fail # IE does not support URL.createObjectURL in web workers.

[ $compiler == dart2js && $runtime == drt && $unchecked ]
audiocontext_test/functional: Pass, Fail

[ $runtime == safari || $runtime == safarimobilesim ]
worker_api_test: Skip # Issue 13221
webgl_1_test: Pass, Fail # Issue 8219
canvasrenderingcontext2d_test/drawImage_video_element: Fail # Safari does not support drawImage w/ video element
canvasrenderingcontext2d_test/drawImage_video_element_dataUrl: Fail # Safari does not support drawImage w/ video element
element_test: Pass, Fail # Issue 21434
mediasource_test: Pass, Fail # MediaSource only available on Safari 8 desktop, we can't express that.

# Safari Feature support statuses-
# All changes should be accompanied by platform support annotation changes.
element_types_test/supported_content: Fail
element_types_test/supported_datalist: Fail
element_types_test/supported_shadow: Fail
fileapi_test/supported: Fail
indexeddb_1_test/supportsDatabaseNames: Fail
media_stream_test/supported_MediaStreamEvent: Fail
media_stream_test/supported_MediaStreamTrackEvent: Fail
media_stream_test/supported_media: Fail
performance_api_test/supported: Fail
rtc_test/supported: Fail
shadow_dom_test/supported: Fail
speechrecognition_test/supported: Fail

[ $runtime == safarimobilesim ]
indexeddb_1_test/supported: Fail
element_types_test/supported_template: Fail
xhr_test/json: Fail # Safari doesn't support JSON response type
notification_test/constructors: Pass # Safari mobile will pass this test on the basis that notifications aren't supported at all.
notification_test/supported_notification: RuntimeError # Issue 22869
wheelevent_test: RuntimeError # Safarimobilesim does not support WheelEvent
event_test: RuntimeError # Safarimobilesim does not support WheelEvent

[ $runtime == safari ]
input_element_test/supported_month: RuntimeError
input_element_test/supported_time: RuntimeError
input_element_test/supported_week: RuntimeError
input_element_test/supported_date: Fail
input_element_test/supported_datetime-local: Fail
touchevent_test/supported: Fail # Safari does not support TouchEvents
notification_test/constructors: Fail # Safari doesn't let us access the fields of the Notification to verify them.

[ $runtime == safari ]
indexeddb_1_test/functional: Skip # Times out. Issue 21433
indexeddb_2_test: RuntimeError # Issue 21433
indexeddb_4_test: RuntimeError # Issue 21433
indexeddb_5_test: RuntimeError # Issue 21433

[ $runtime == opera ]
blob_constructor_test: Fail
canvas_test: Fail
canvas_test: Pass,Fail
cssstyledeclaration_test: Fail
document_test/document: Fail # Issue: 7413
element_add_test: Fail
element_constructor_1_test: Fail
element_test/children: Fail # Issue: 7413
element_test/constructors: Fail
element_test/elements: Fail
element_test/eventListening: Crash
element_test/eventListening: Fail # Issue: 7413
element_test/queryAll: Fail
fileapi_test: Skip # Timeout.
form_data_test: Fail # Issue: 7413
htmlelement_test: Fail
isolates_test: Skip # Timeout.
keyboard_event_test: Fail # Issue: 7413
serialized_script_value_test: Fail
typed_arrays_arraybuffer_test: Fail
url_test: Fail

# Opera Feature support statuses-
# All changes should be accompanied by platform support annotation changes.
audiobuffersourcenode_test/supported: Fail
audiocontext_test/supported: Fail
crypto_test/supported: Fail
css_test/supportsPointConversions: Fail
document_test/supports_cssCanvasContext: Fail
element_types_test/supported_template: Fail
indexeddb_1_test/supported: Fail
indexeddb_1_test/supportsDatabaseNames: Fail
mutationobserver_test/supported: Fail
performance_api_test/supported: Fail
speechrecognition_test/supported: Fail
websql_test/supported: Fail

[  $compiler == dart2js && $runtime == ff ]
history_test/history: Skip # Issue 22050
xhr_test/xhr: Pass, Fail # Issue 11602
dart_object_local_storage_test: Skip  # sessionStorage NS_ERROR_DOM_NOT_SUPPORTED_ERR
webgl_1_test: Pass, Fail   # Issue 8219
canvasrenderingcontext2d_test/drawImage_video_element_dataUrl: Pass, Fail # Firefox pre-38 does not like dataUrl videos for drawImage Issue 23479
text_event_test: Fail # Issue 17893

# Firefox Feature support statuses-
# All changes should be accompanied by platform support annotation changes.
document_test/supports_cssCanvasContext: Fail
element_types_test/supported_details: Fail
element_types_test/supported_embed: Fail
element_types_test/supported_keygen: Fail
element_types_test/supported_object: Fail
fileapi_test/supported: Fail
indexeddb_1_test/supportsDatabaseNames: Fail
input_element_test/supported_date: Fail
input_element_test/supported_datetime-local: Fail
input_element_test/supported_month: Fail
input_element_test/supported_time: Fail
input_element_test/supported_week: Fail
media_stream_test/supported_MediaStreamEvent: Fail
media_stream_test/supported_MediaStreamTrackEvent: Fail
mediasource_test/supported: Fail # Behind a flag as of FF 36
shadow_dom_test/supported: Fail
speechrecognition_test/supported: Fail
touchevent_test/supported: Fail
websql_test/supported: Fail

# 'html' tests import the HTML library, so they only make sense in
# a browser environment.
[ $runtime == vm ]
*: Skip

[ $compiler == dart2js && ($runtime == drt || $runtime == ff) ]
request_animation_frame_test: Skip # Async test hangs.

[ $compiler == dart2js && $csp && ($runtime == drt || $runtime == safari || $runtime == ff || $runtime == chrome || $runtime == chromeOnAndroid) ]
# Note: these tests are all injecting scripts by design.  This is not allowed under CSP.
event_customevent_test: Fail        # Test cannot run under CSP restrictions.
js_interop_1_test: Skip             # Test cannot run under CSP restrictions (times out).
js_test: Skip                       # Test cannot run under CSP restrictions (times out).
js_array_test: Skip                 # Test cannot run under CSP restrictions.
js_typed_interop_test: Skip         # Test cannot run under CSP restrictions.
js_function_getter_test: Skip       # Test cannot run under CSP restrictions.
js_function_getter_trust_types_test: Skip  # Test cannot run under CSP restrictions.
js_dart_to_string_test: Skip        # Test cannot run under CSP restrictions.
mirrors_js_typed_interop_test: Skip # Test cannot run under CSP restrictions.
postmessage_structured_test: Skip   # Test cannot run under CSP restrictions (times out).

[ $compiler == dart2js &&  $runtime == chrome]
svgelement_test/supported_altGlyph: RuntimeError # Issue 23144

[ ($runtime == dartium) && ($system == macos || $system == windows || $system == linux)]
# Desktop operating systems do not support touch events on chrome 34 dartium.
touchevent_test/supported: Fail

[ (($runtime == dartium || $runtime == drt) && $system == macos) || $system == windows ]
xhr_test/xhr: Skip # Times out.  Issue 21527

[ $compiler == dartanalyzer || $compiler == dart2analyzer ]
custom/document_register_basic_test: StaticWarning
custom/element_upgrade_test: StaticWarning
datalistelement_test: StaticWarning
documentfragment_test: StaticWarning
element_add_test: StaticWarning
element_test: StaticWarning
events_test: StaticWarning
htmlelement_test: StaticWarning
js_function_getter_trust_types_test: skip # dart2js specific flags.
localstorage_test: StaticWarning
mutationobserver_test: StaticWarning
queryall_test: fail
track_element_constructor_test: StaticWarning
transferables_test: StaticWarning
typed_arrays_range_checks_test: StaticWarning
typing_test: StaticWarning
webgl_1_test: StaticWarning
window_nosuchmethod_test: StaticWarning

[ $compiler == dart2js && $cps_ir ]
resource_http_test: Crash # (await for(var b in r.openRead()){bytes.addAll(b);}): await for
