# THIS FILE IS AUTOGENERATED. DO NOT MANUALLY EDIT.
# SEE //content/test/gpu/process_generated_webgpu_expectations.py
# BEGIN TAG HEADER (autogenerated, see validate_tag_consistency.py)
# OS
# tags: [ android android-lollipop android-marshmallow android-nougat
#             android-pie android-r android-s
#         chromeos
#         fuchsia
#         linux ubuntu
#         mac bigsur catalina lion highsierra mac-10.12 mojave monterey
#             mountainlion sierra
#         win win7 win8 win10 ]
# Devices
# tags: [ android-nexus-5 android-nexus-5x android-pixel-2 android-pixel-4
#             android-pixel-6 android-shield-android-tv
#         chromeos-board-amd64-generic chromeos-board-kevin chromeos-board-eve
#         fuchsia-board-astro fuchsia-board-sherlock fuchsia-board-qemu-x64 ]
# Platform
# tags: [ desktop
#         mobile ]
# Browser
# tags: [ android-chromium android-webview-instrumentation
#         debug debug-x64
#         release release-x64
#         fuchsia-chrome web-engine-shell ]
# GPU
# tags: [ amd amd-0x6613 amd-0x679e amd-0x6821 amd-0x7340
#         apple apple-apple-m1 apple-angle-metal-renderer:-apple-m1
#         arm
#         google google-0xffff
#         intel intel-0xa2e intel-0xd26 intel-0xa011 intel-0x3e92 intel-0x3e9b
#               intel-0x5912
#         nvidia nvidia-0xfe9 nvidia-0x1cb3 nvidia-0x2184
#         qualcomm ]
# Decoder
# tags: [ passthrough no-passthrough ]
# ANGLE Backend
# tags: [ angle-disabled
#         angle-d3d9 angle-d3d11
#         angle-metal
#         angle-opengl angle-opengles
#         angle-swiftshader
#         angle-vulkan ]
# Skia Renderer
# tags: [ skia-renderer-dawn
#         skia-renderer-disabled
#         skia-renderer-gl
#         skia-renderer-vulkan ]
# SwiftShader
# tags: [ swiftshader-gl no-swiftshader-gl ]
# Driver
# tags: [ mesa_lt_19.1 ]
# ASan
# tags: [ asan no-asan ]
# Display Server
# tags: [ display-server-wayland display-server-x ]
# OOP-Canvas
# tags: [ oop-c no-oop-c ]
# WebGPU Backend Validation
# tags: [ dawn-backend-validation dawn-no-backend-validation ]
# results: [ Failure RetryOnFailure Skip Slow ]
# END TAG HEADER

# This will be slowly removed over time as more tests are moved from the web
# test harness to the Telemetry harness.
webgpu:api,validation,* [ Skip ]
webgpu:api,operation,* [ Skip ]
worker_webgpu:api,validation,* [ Skip ]
worker_webgpu:api,operation,* [ Skip ]
webgpu:shader,* [ Skip ]
webgpu:util,* [ Skip ]
webgpu:web_platform,* [ Skip ]

# Not skipped are:
# webgpu:examples:*
# webgpu:idl,*

# BEGIN AUTOGENERATED EXPECTATIONS

